On 08/12/2015 01:28 PM, Ian Campbell wrote:
On Wed, 2015-08-12 at 13:03 +0200, Benjamin Beier wrote:
Since xen version 4.5.1 there is a bug with the xl cpupool-create
command.
It always throws a segmentation fault when used with a config file as
parameter.
The content of the config file does not really matter (valid or invalid).
It also fails with the example config file in /etc/xen/cpupool or with
the dryrun flag.
You never get any output apart from "segmentation fault".
If you create exactly the same cpupool without using a config file it
works absolutely fine.
Tested on multiple systems and it seems to be reproducible for everyone.
STrace shows that the command fails right after reading the content of
the config file.
Please can you capture a backtrace by running it under gdb. Valgrind might
also have something interesting to say.
FWIW this doesn't happen on the current development branch:
# cat foo
Testing
# xl cpupool-create foo
foo:1: config parsing error near `Testing': lexical error
Failed to parse config file: Invalid argument
But I don't see any obviously related looking fixes in the commit log.
Was 4.5.0 ok?
I am not 100% sure about that, because I only had a test system running
with it.
As you guys didn't notice any problems I should mention that my servers
are running Gentoo Linux.
Maybe this is a Gentoo specific problem and not relevant at all for
upstream xen.
Or it is an upstream problem that only shows up on the custom-compiled
gentoo systems.
# cat testing
foo
# xl cpupool-create testing
Segmentation fault
# strace xl cpupool-create testing
(...)
open("testing", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0644, st_size=4, ...}) = 0
fstat(7, {st_mode=S_IFREG|0644, st_size=4, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x776ec3228000
read(7, "foo\n", 4096) = 4
close(7) = 0
munmap(0x776ec3228000, 4096) = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} ---
+++ killed by SIGSEGV (core dumped) +++
Segmentation fault
Program received signal SIGSEGV, Segmentation fault.
0x0000000000418db5 in main_cpupoolcreate (argc=<optimized out>,
argv=0x7fffffffda50) at xl_cmdimpl.c:7102
7102 xl_cmdimpl.c: No such file or directory.
(gdb) bt
#0 0x0000000000418db5 in main_cpupoolcreate (argc=<optimized out>,
argv=0x7fffffffda50) at xl_cmdimpl.c:7102
#1 0x0000000000407c79 in main (argc=2, argv=0x7fffffffda50) at xl.c:361
Just tell me if this is a gentoo-only thing and I will open a bug report
there.
Regards,
Benjamin
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel