[Xen-devel] [BUG][4.5.1]xl cpupool-create segfault (with config file parameter)

2015-08-12 Thread Benjamin Beier

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.


Regards,
Benjamin



___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [BUG][4.5.1]xl cpupool-create segfault (with config file parameter)

2015-08-13 Thread Benjamin Beier

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.
0x00418db5 in main_cpupoolcreate (argc=, 
argv=0x7fffda50) at xl_cmdimpl.c:7102

7102xl_cmdimpl.c: No such file or directory.
(gdb) bt
#0  0x00418db5 in main_cpupoolcreate (argc=, 
argv=0x7fffda50) at xl_cmdimpl.c:7102

#1  0x00407c79 in main (argc=2, argv=0x7fffda50) 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


Re: [Xen-devel] [BUG][4.5.1]xl cpupool-create segfault (with config file parameter)

2015-08-13 Thread Benjamin Beier

On 08/13/2015 01:29 PM, Ian Campbell wrote:

On Thu, 2015-08-13 at 13:13 +0200, Benjamin Beier wrote:


Program received signal SIGSEGV, Segmentation fault.
0x00418db5 in main_cpupoolcreate (argc=,
argv=0x7fffda50) at xl_cmdimpl.c:7102
7102xl_cmdimpl.c: No such file or directory.
(gdb) bt
#0  0x00418db5 in main_cpupoolcreate (argc=,
argv=0x7fffda50) at xl_cmdimpl.c:7102
#1  0x00407c79 in main (argc=2, argv=0x7fffda50) at xl.c:361


In "git show RELEASE-4.5.1:tools/libxl/xl_cmdimpl.c" line 7102 is a blank
line. The next line is:
  config = xlu_cfg_init(stderr, config_src);
which might be the culprit but also might not be.

Are you running pristine 4.5.1 or are the (perhaps gentoo added) patches?
Can you figure out what line 7102 of that might be.


Just tell me if this is a gentoo-only thing and I will open a bug report
there.


It's not clear yet, since it might be a backport of a buggy patch, but it's
starting to look a bit that way. Once xl_cmdimpl.c:7102 and the list of
patches is clarified I think we'll know one way or another.

Ian


I am not an expert for ebuilds and the xen-tools ebuild is rather 
complicated. I filed a gentoo bug report and linked to this upstream 
report here. Hopefully one of the gentoo ebuild maintainers has further 
information for you.


https://bugs.gentoo.org/show_bug.cgi?id=557458

Regards,
Benjamin


___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel