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:
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>
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.
I have built this patch into xenner-0.25-4.fc9