[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: 4.13: import xen.lowlevel.xc fails with SystemError: bad call flags
On 02/04/2020 13:43, Kevin Buckley wrote: > 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, We've got a fix in staging https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=e19b4b3b55f84e0cfcc02fe5d66965969a81c965 It hasn't been backported to the 4.13 stable tree yet. ~Andrew
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |