1. 20 3月, 2014 5 次提交
  2. 19 3月, 2014 1 次提交
    • J
      libxl: fix framebuffer port setting for HVM domains · b55cc5f4
      Jim Fehlig 提交于
      libxl uses the libxl_vnc_info and libxl_sdl_info fields from the
      hvm union in libxl_domain_build_info struct when generating QEMU
      args for VNC or SDL.  These fields were left unset by the libxl
      driver, causing libxl to ignore any user settings.  E.g. with
      
        <graphics type='vnc' port='5950'/>
      
      port would be ignored and QEMU would instead be invoked with
      
        -vnc 127.0.0.1:0,to=99
      
      Unlike the libxl_domain_config struct, the libxl_domain_build_info
      contains only a single libxl_vnc_info and libxl_sdl_info, so
      populate these fields from the first vfb in
      libxl_domain_config->vfbs.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      Signed-off-by: NDavid Kiarie <davidkiarie4@gmail.com>
      b55cc5f4
  3. 18 3月, 2014 2 次提交
  4. 15 3月, 2014 1 次提交
    • C
      XMLToNative: Parse XML as INACTIVE · fbf14e82
      Cole Robinson 提交于
      Right now we are parsing the XML as though it's live, which for example
      will choke on hardcoded XML like:
      
        <seclabel type='dynamic' model='selinux' relabel='yes'/>
      
      Erroring with:
      
        $ sudo virsh domxml-to-native qemu-argv f
        error: XML error: security label is missing
      
      All drivers are fixed, but only qemu was tested.
      fbf14e82
  5. 13 3月, 2014 3 次提交
  6. 12 3月, 2014 1 次提交
    • J
      libxl: support sexpr in native to XML conversion · f68246ac
      Jim Fehlig 提交于
      Supporting sexpr in connectDomainXMLFromNative in the libxl driver
      adds flexibility for users importing legacy Xen configuration into
      libvirt.  E.g. this patch allows importing previous xend-managed
      domains from /var/lib/xend/domains/<dom-uuid>/config.sxp into the
      libvirt libxl driver.
      f68246ac
  7. 26 2月, 2014 2 次提交
    • I
      libxl: Recognise ARM architectures · bf5dbce6
      Ian Campbell 提交于
      Only tested on v7 but the v8 equivalent seems pretty obvious.
      
      XEN_CAP_REGEX already accepts more than it should (e.g. x86_64p or x86_32be)
      but I have stuck with the existing pattern.
      
      With this I can create a guest from:
        <domain type='xen'>
          <name>libvirt-test</name>
          <uuid>6343998e-9eda-11e3-98f6-77252a7d02f3</uuid>
          <memory>393216</memory>
          <currentMemory>393216</currentMemory>
          <vcpu>1</vcpu>
          <os>
            <type arch='armv7l' machine='xenpv'>linux</type>
            <kernel>/boot/vmlinuz-arm-native</kernel>
            <cmdline>console=hvc0 earlyprintk debug root=/dev/xvda1</cmdline>
          </os>
          <clock offset='utc'/>
          <on_poweroff>destroy</on_poweroff>
          <on_reboot>restart</on_reboot>
          <on_crash>destroy</on_crash>
          <devices>
            <disk type='block' device='disk'>
              <source dev='/dev/marilith-n0/debian-disk'/>
              <target dev='xvda1'/>
            </disk>
            <interface type='bridge'>
              <mac address='8e:a7:8e:3c:f4:f6'/>
              <source bridge='xenbr0'/>
            </interface>
          </devices>
        </domain>
      
      Using virsh create and I can destroy it too.
      
      Currently virsh console fails with:
        Connected to domain libvirt-test
        Escape character is ^]
        error: internal error: cannot find character device <null>
      
      I haven't investigated yet.
      Signed-off-by: NIan Campbell <ian.campbell@citrix.com>
      Signed-off-by: NEric Blake <eblake@redhat.com>
      bf5dbce6
    • J
      libxl: queue domain event earlier in shutdown handler · 4d975ded
      Jim Fehlig 提交于
      The shutdown handler may restart a domain when handling a reboot
      event or when <on_*> is set to 'restart'.  Restarting consists of
      calling libxlVmCleanup followed by libxlVmStart.  libxlVmStart will
      emit a VIR_DOMAIN_EVENT_STARTED event, but the SHUTDOWN event is
      not emitted until exiting the shutdown handler, after the STARTED
      event.
      
      This patch changes the logic a bit to queue the event at the start
      of the shutdown action, ensuring it is queued before any subsequent
      events that may be generated while executing the shutdown action.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      4d975ded
  8. 25 2月, 2014 3 次提交
  9. 21 2月, 2014 2 次提交
  10. 20 2月, 2014 13 次提交
  11. 12 2月, 2014 3 次提交
  12. 07 2月, 2014 4 次提交
    • J
      libxl: remove unneeded locking of driver when restoring · 630b6456
      Jim Fehlig 提交于
      libxlDomainRestoreFlags acquires the driver lock while reading the
      domain config from the save file and adding it to
      libxlDriverPrivatePtr->domains.  But virDomainObjList provides
      self-locking APIs, so remove the needless driver locking.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      630b6456
    • J
      libxl: improve subprocess handling · 778067e1
      Jim Fehlig 提交于
      If available, let libxl handle reaping any children it creates by
      specifying libxl_sigchld_owner_libxl_always_selective_reap.  This
      feature was added to improve subprocess handling in libxl when used
      in an application that does not install a SIGCHLD handler like
      libvirt
      
      http://lists.xen.org/archives/html/xen-devel/2014-01/msg01555.html
      
      Prior to this patch, it is possible to hit asserts in libxl when
      reaping subprocesses, particularly during simultaneous operations
      on multiple domains.  With this patch, and the corresponding changes
      to libxl, I no longer see the asserts.  Note that the libxl changes
      will be included in Xen 4.4.0.  Previous Xen versions will be
      susceptible to hitting the asserts even with this patch applied to
      the libvirt libxl driver.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      778067e1
    • J
      libxl: handle domain shutdown events in a thread · 03b3f894
      Jim Fehlig 提交于
      Handling the domain shutdown event within the event handler seems
      a bit unfair to libxl's event machinery.  Domain "shutdown" could
      take considerable time.  E.g. if the shutdown reason is reboot,
      the domain must be reaped and then started again.
      
      Spawn a shutdown handler thread to do this work, allowing libxl's
      event machinery to go about its business.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      03b3f894
    • J
      libxl: remove list of timer registrations from libxlDomainObjPrivate · eaa8d9b2
      Jim Fehlig 提交于
      Due to some misunderstanding of requirements libxl places on timer
      handling, I introduced the half-brained idea of maintaining a list
      of timeouts that the driver could force to expire before freeing a
      libxlDomainObjPrivate (and hence libxl_ctx).  But testing all
      the latest versions of Xen supported by the libxl driver (4.2.3,
      4.3.1, 4.4.0 RC3), I see that libxl will handle this just fine and
      there is no need to force expiration behind libxl's back.  Indeed it
      may be harmful to do so.
      
      This patch removes the timer list, allowing libxl to handle cleanup
      of its timer registrations.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      eaa8d9b2