You need to sign in or sign up before continuing.
  1. 31 8月, 2013 1 次提交
  2. 23 8月, 2013 1 次提交
  3. 29 7月, 2013 1 次提交
  4. 04 5月, 2013 1 次提交
  5. 25 4月, 2013 2 次提交
  6. 15 4月, 2013 4 次提交
  7. 09 4月, 2013 2 次提交
  8. 27 3月, 2013 2 次提交
  9. 19 3月, 2013 1 次提交
  10. 09 3月, 2013 1 次提交
  11. 01 3月, 2013 1 次提交
    • P
      hw: include hw header files with full paths · 83c9f4ca
      Paolo Bonzini 提交于
      Done with this script:
      
      cd hw
      for i in `find . -name '*.h' | sed 's/^..//'`; do
        echo '\,^#.*include.*["<]'$i'[">], s,'$i',hw/&,'
      done | sed -i -f - `find . -type f`
      
      This is so that paths remain valid as files are moved.
      
      Instead, files in hw/dataplane are referenced with the relative path.
      We know they are not going to move to include/, and they are the only
      include files that are in subdirectories _and_ move.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      83c9f4ca
  12. 11 1月, 2013 1 次提交
    • A
      Make all static TypeInfos const · 8c43a6f0
      Andreas Färber 提交于
      Since 39bffca2 (qdev: register all
      types natively through QEMU Object Model), TypeInfo as used in
      the common, non-iterative pattern is no longer amended with information
      and should therefore be const.
      
      Fix the documented QOM examples:
      
       sed -i 's/static TypeInfo/static const TypeInfo/g' include/qom/object.h
      
      Since frequently the wrong examples are being copied by contributors of
      new devices, fix all types in the tree:
      
       sed -i 's/^static TypeInfo/static const TypeInfo/g' */*.c
       sed -i 's/^static TypeInfo/static const TypeInfo/g' */*/*.c
      
      This also avoids to piggy-back these changes onto real functional
      changes or other refactorings.
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      8c43a6f0
  13. 19 12月, 2012 2 次提交
  14. 18 12月, 2012 2 次提交
  15. 13 12月, 2012 4 次提交
  16. 30 11月, 2012 1 次提交
  17. 16 11月, 2012 1 次提交
    • A
      virtio-serial-bus: post_load send_event when vm is running · 80dcfb85
      Alon Levy 提交于
      Alexander Larsson found irq injection to Windows guests stopped after a
      migration.  The symptom was the mouse stopped working.
      
      Reproduction steps are:
      1. On src, start qemu with a virtio-serial port without any backend
      2. On dest, start qemu with a virtio-serial port with a backend
      3. Migrate.
      
      Upon migration, the older code detected the change in backend connection
      status, and sent a notification to the guest.  However, it's not
      guaranteed that the apic is ready to inject irqs into the guest, and the
      irq line remained high, resulting in any future interrupts going
      unnoticed by the guest as well.
      
      Add a new timer based on vm_clock for 1 ns in the future from post_load
      to do the event send in case host_connected differs between migration
      source and target.
      
      RHBZ: 867366
      Signed-off-by: NAlon Levy <alevy@redhat.com>
      Acked-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: Amit Shah <amit.shah@redhat.com> # verbose commit log
      80dcfb85
  18. 28 9月, 2012 1 次提交
  19. 18 6月, 2012 3 次提交
    • A
      qdev: Convert busses to QEMU Object Model · 0d936928
      Anthony Liguori 提交于
      This is far less interesting than it sounds.  We simply add an Object to each
      BusState and then register the types appropriately.  Most of the interesting
      refactoring will follow in the next patches.
      
      Since we're changing fundamental type names (BusInfo -> BusClass), it all needs
      to convert at once.  Fortunately, not a lot of code is affected.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      [AF: Made all new bus TypeInfos static const.]
      [AF: Made qbus_free() call object_delete(), required {qom,glib}_allocated]
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      0d936928
    • P
      qdev: Move bus properties to abstract superclasses · bce54474
      Paolo Bonzini 提交于
      In qdev, each bus in practice identified an abstract superclass, but
      this was mostly hidden.  In QOM, instead, these abstract classes are
      explicit so we can move bus properties there.
      
      All bus property walks are removed, and all device property walks
      are changed to look along the class hierarchy instead.
      
      We would have duplicates if class A defines some properties and its
      subclass B does not define any, because class_b->props will be
      left equal to class_a->props.
      
      The solution here is to reintroduce the class_base_init TypeInfo
      callback, that was present in one of the early QOM versions but
      removed (on my request...) before committing.
      
      This breaks global bus properties, an obscure feature when used
      with the command-line which is actually useful and used when used by
      backwards-compatible machine types.  So this patch also adjusts the
      global bus properties in hw/pc_piix.c to refer to the abstract class.
      
      Globals and other properties must be modified in the same patch to
      avoid complications related to initialization ordering.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      bce54474
    • P
      qdev: Move bus properties to a separate global · 3cb75a7c
      Paolo Bonzini 提交于
      Simple code movement in order to simplify future refactoring.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      3cb75a7c
  20. 08 6月, 2012 2 次提交
    • M
      change iov_* function prototypes to be more appropriate · dcf6f5e1
      Michael Tokarev 提交于
      Reorder arguments to be more natural, readable and
      consistent with other iov_* functions, and change
      argument names, from:
       iov_from_buf(iov, iov_cnt, buf, iov_off, size)
      to
       iov_from_buf(iov, iov_cnt, offset, buf, bytes)
      
      The result becomes natural English:
      
       copy data to this `iov' vector with `iov_cnt'
       elements starting at byte offset `offset'
       from memory buffer `buf', processing `bytes'
       bytes max.
      
      (Try to read the original prototype this way).
      
      Also change iov_clear() to more general iov_memset()
      (it uses memset() internally anyway).
      
      While at it, add comments to the header file
      describing what the routines actually does.
      
      The patch only renames argumens in the header, but
      keeps old names in the implementation.  The next
      patch will touch actual code to match.
      
      Now, it might look wrong to pay so much attention
      to so small things.  But we've so many badly designed
      interfaces already so the whole thing becomes rather
      confusing or error prone.  One example of this is
      previous commit and small discussion which emerged
      from it, with an outcome that the utility functions
      like these aren't well-understdandable, leading to
      strange usage cases.  That's why I paid quite some
      attention to this set of functions and a few
      others in subsequent patches.
      Signed-off-by: NMichael Tokarev <mjt@tls.msk.ru>
      dcf6f5e1
    • M
      virtio-serial-bus: use correct lengths in control_out() message · 45270ad8
      Michael Tokarev 提交于
      Original code has one thing to process (cur_len), requests to
      convert from iovec to buf another thing (len which is actually max_len),
      and processes something else (copied).  Whole thing is very difficult
      to understand, even if it does a right thing.  The iov_to_buf()
      conversion in this case will always return cur_len, because it is
      the length of the iovec it was asked to process, and the size we
      asked to convert is the same or larger, and iov_to_buf() will stop
      at reaching either iov or buf.
      
      Make the code saner by doing the only sane thing: dropping `copied'
      which is always the same as `cur_len' but just introduces questions.
      Signed-off-by: NMichael Tokarev <mjt@tls.msk.ru>
      45270ad8
  21. 22 5月, 2012 1 次提交
  22. 25 4月, 2012 2 次提交
  23. 15 2月, 2012 1 次提交
  24. 04 2月, 2012 2 次提交
    • A
      qdev: kill off DeviceInfo · d307af79
      Anthony Liguori 提交于
      It is no longer used in the tree since everything is done natively through
      QEMU Object Model.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      d307af79
    • A
      qdev: register all types natively through QEMU Object Model · 39bffca2
      Anthony Liguori 提交于
      This was done in a mostly automated fashion.  I did it in three steps and then
      rebased it into a single step which avoids repeatedly touching every file in
      the tree.
      
      The first step was a sed-based addition of the parent type to the subclass
      registration functions.
      
      The second step was another sed-based removal of subclass registration functions
      while also adding virtual functions from the base class into a class_init
      function as appropriate.
      
      Finally, a python script was used to convert the DeviceInfo structures and
      qdev_register_subclass functions to TypeInfo structures, class_init functions,
      and type_register_static calls.
      
      We are almost fully converted to QOM after this commit.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      39bffca2