[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] 4.13: import xen.lowlevel.xc fails with SystemError: bad call flags
Hello again, despite having built a Xen 4.13 with just Python3 on a Linux From Scratch system, http://youvegotbuckleys.org.nz/LFS/LFS-BOOK.html specifically http://youvegotbuckleys.org.nz/LFS/LFS-BOOK.html#ch-xen and booted into the Dom0 (Linux 5.5.3, GCC 9.2.0, Python 3.8.1) without issue, in coming to boot up a DomU, I get the following terse message ~ # cat /var/log/xen/bootloader.3.log Traceback (most recent call last): File "/usr/lib/xen/bin/pygrub", line 21, in <module> import xen.lowlevel.xc SystemError: bad call flags ~ # in the wake of these messages during the xl cretate's pygrub boot: libxl: error: libxl_bootloader.c:648:bootloader_finished: Domain 3:bootloader failed - consult logfile /var/log/xen/bootloader.3.log libxl: error: libxl_exec.c:117:libxl_report_child_exitstatus: bootloader [766] exited with error status 1 libxl: error: libxl_create.c:1420:domcreate_rebuild_done: Domain 3:cannot (re-)build domain: -3 libxl: error: libxl_domain.c:1177:libxl__destroy_domid: Domain 3:Non-existant domain libxl: error: libxl_domain.c:1131:domain_destroy_callback: Domain 3:Unable to destroy guest libxl: error: libxl_domain.c:1058:domain_destroy_cb: Domain 3:Destruction of domain failed libxl: error: libxl_dom.c:40:libxl__domain_type: unable to get domain type for domid=3 xl: unable to exec console client: No such file or directory libxl: error: libxl_exec.c:117:libxl_report_child_exitstatus: console child [767] exited with error status 1 There's a suggestion out on the interweb thing that these SystemError: bad call flags are something to do with Python 3.8, as in this thread I found when searching for the above: ------- It's a bug in the Python binding of libcomps. I proposed a fix upstream: https://github.com/rpm-software-management/libcomps/pull/50 Extract: > In Python 3.7, import didn't check descriptor flags (METH_KEYWORDS): > these flags were only checked when the methods were called. > > In Python 3.8, the flags are checked at soon as the module is imported, > which prevents the module to be imported. ------- Is that likely to be what i am seeing? I had a gander at tools/python/xen/lowlevel/xc/xc.c tools/python/xen/lowlevel/xs/xc.c but it's not obvious to me where, presumably in, #if PY_MAJOR_VERSION >= 3 #define INITERROR return NULL PyMODINIT_FUNC PyInit_xc(void) #else #define INITERROR return PyMODINIT_FUNC initxc(void) #endif { I could start to "play around" with any "descriptor flags" Any pointers welcome, including "it's not a Python 3.8 thing, you idiot" responses, Kevin
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |