Bug 435158 - PVFB fails because of missing xc_map_foreign_pages in libxenctrl.so compat library
Summary: PVFB fails because of missing xc_map_foreign_pages in libxenctrl.so compat l...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: xenner
Version: rawhide
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Gerd Hoffmann
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: LibvirtXenner
TreeView+ depends on / blocked
 
Reported: 2008-02-27 18:03 UTC by Daniel Berrangé
Modified: 2008-02-27 21:37 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2008-02-27 21:37:33 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Workaround for missing xc_map_foreign_pages (487 bytes, patch)
2008-02-27 21:28 UTC, Daniel Berrangé
no flags Details | Diff

Description Daniel Berrangé 2008-02-27 18:03:10 UTC
Description of problem:
Configuring a Xenner guest with the PVFB activated, the qemu-dm process gets 1/2
way through the front/back device handshake and then aborts due to a missing
symbol. The log is

FB: Waiting for KBD backend creation
Doing backend watch on /local/domain/0/backend/vkbd/10272/0
FB: Waiting for FB backend creation
Doing backend watch on /local/domain/0/backend/vfb/10272/0
FB: Waiting for KBD frontend initialization
Doing frontend watch on /local/domain/10272/device/vkbd/0
FB: Carry on waiting
FB: Carry on waiting
FB: Carry on waiting
FB: Waiting for FB frontend initialization
Doing frontend watch on /local/domain/10272/device/vfb/0
Framebuffer depth 32 width 800 height 600 line 3200
/usr/lib64/xen/bin/qemu-dm: symbol lookup error: /usr/lib64/xen/bin/qemu-dm:
undefined symbol: xc_map_foreign_pages


NB, this was with 

export LD_LIBRARY_PATH=/usr/lib64/xenner 

To make it find Xenner's fake  libxenctrl.so

Version-Release number of selected component (if applicable):
xenner-0.25

How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Daniel Berrangé 2008-02-27 18:26:33 UTC
This problem is caused by the new API in xen 3.2.0 - xenner's compat library
only implemnets the old API - should be easy enough to fixup

changeset:   15837:9071521d4864
user:        kfraser
date:        Fri Sep 07 11:39:10 2007 +0100
files:       tools/ioemu/hw/cirrus_vga.c tools/ioemu/vl.c tools/libxc/xc_misc.c
tools/libxc/xenctrl.h tools/xenfb/xenfb.c
description:
xc_map_foreign_pages(), a convenient alternative to xc_map_foreign_batch()

xc_map_foreign_batch() can succeed partially.  It is awkward to use
when you're only interested in complete success.  Provide new
xc_map_foreign_pages() convenience function for that kind of use.
Also convert two obvious calls to use it.

Signed-off-by: Markus Armbruster <armbru>



Comment 2 Daniel Berrangé 2008-02-27 21:28:17 UTC
Created attachment 296126 [details]
Workaround for missing xc_map_foreign_pages

This patch is a quick, minimal hack to deal with xc_map_foreign_pages.

It does not provide the failure case guarentees that the real libxc version of
this symbol does, but it is good enough to make the PVFB work in the normal
case.

Comment 3 Daniel Berrangé 2008-02-27 21:37:33 UTC
I have built this patch into xenner-0.25-4.fc9


Note You need to log in before you can comment on or make changes to this bug.