[libvirt] [PATCH v5 4/4] xlconfigtest: add tests for numa cell sibling distances

Wim ten Have wim.ten.have at oracle.com
Wed Nov 1 19:45:46 UTC 2017


On Thu, 26 Oct 2017 17:51:34 -0600
Jim Fehlig <jfehlig at suse.com> wrote:

> On 10/12/2017 01:31 PM, Wim Ten Have wrote:
> > From: Wim ten Have <wim.ten.have at oracle.com>
> > 
> > Test a bidirectional xen-xl domxml to and from native for numa
> > support administration as brought under this patch series.
> > 
> > Signed-off-by: Wim ten Have <wim.ten.have at oracle.com>
> > ---
> >   .../test-fullvirt-vnuma-autocomplete.cfg           | 26 +++++++
> >   .../test-fullvirt-vnuma-autocomplete.xml           | 85 ++++++++++++++++++++++
> >   .../test-fullvirt-vnuma-nodistances.cfg            | 26 +++++++
> >   .../test-fullvirt-vnuma-nodistances.xml            | 53 ++++++++++++++
> >   .../test-fullvirt-vnuma-partialdist.cfg            | 26 +++++++
> >   .../test-fullvirt-vnuma-partialdist.xml            | 60 +++++++++++++++
> >   tests/xlconfigdata/test-fullvirt-vnuma.cfg         | 26 +++++++
> >   tests/xlconfigdata/test-fullvirt-vnuma.xml         | 81 +++++++++++++++++++++
> >   tests/xlconfigtest.c                               |  6 ++  
> 
> Cool! Thanks for the various configurations to test all the hairy parsing code :-).
> 
> Reviewed-by: Jim Fehlig <jfehlig at suse.com>
> 
> BTW I should have mentioned it while reviewing 3/4, but we should also have 
> tests for the libxl_domain_config generator, now that we have a test suite for 
> that. See tests/libxlxml2domconfigtest.c.

  There's a nasty issue living here.  Within specific test-harness you seem to
  get through libxl_ctx_alloc() ... ?!  Running as ordinary user without privileges?!  (ie. not root)

        if (libxl_ctx_alloc(&ctx, LIBXL_VERSION, 0, log) < 0) {

  I'd expected this libxl_ctx_alloc() to have failed with;
        xencall: error: Could not obtain handle on privileged command interface: Permission denied
        libxl: error: libxl.c:108:libxl_ctx_alloc: cannot open libxc handle: Permission denied

  Funny it seems to go through and the padded memory content seem not to match a
  real libxl_ctx_alloc().  So it is bringing some kind of ctx structure which seems _NOT_ real or
  at least incorrect.

  From I need specific context to determine host/hypervisor phys_info() ... causing
  my libxl_domain_config added test to die with a SEGV under specific xenlight run-time.

  (gdb) where
  #0  0x00007ffff2e18f41 in xc.hypercall_buffer_alloc () from /lib64/libxenctrl.so.4.8
  #1  0x00007ffff2e18f98 in xc.hypercall_bounce_pre () from /lib64/libxenctrl.so.4.8
  #2  0x00007ffff2e0b962 in xc_physinfo () from /lib64/libxenctrl.so.4.8
  #3  0x00007ffff792c0bb in libxl_get_physinfo () from /lib64/libxenlight.so.4.8
  #4  0x0000000000414012 in libxlMakeVnumaList (def=0x66f720, ctx=0x668060, d_config=0x7fffffffd170)
      at libxl/libxl_conf.c:621
  #5  0x0000000000418ca6 in libxlBuildDomainConfig (graphicsports=0x666940, def=0x66f720, channelDir=0x0, 
      ctx=0x668060, caps=0x669ee0, d_config=0x7fffffffd170) at libxl/libxl_conf.c:2302
  #6  0x000000000040f536 in testCompareXMLToDomConfig (
      xmlfile=0x666860 "/home/wtenhave/WORK/libvirt/vNUMA/libvirt/tests/libxlxml2domconfigdata/basic-hvm.xml", 
      jsonfile=0x666790 "/home/wtenhave/WORK/libvirt/vNUMA/libvirt/tests/libxlxml2domconfigdata/basic-hvm.json")
      at libxlxml2domconfigtest.c:88
  #7  0x000000000040f851 in testCompareXMLToDomConfigHelper (data=0x6482f0 <info>) at libxlxml2domconfigtest.c:148

  Should I escape the libxl_get_physinfo() under test?  It is not really necessary there as whole
  is academic.  If you have an advise please let me know ... .

Regards,
- Wim.




More information about the libvir-list mailing list