1. 24 1月, 2017 1 次提交
  2. 16 1月, 2017 6 次提交
  3. 22 12月, 2016 1 次提交
  4. 16 12月, 2016 1 次提交
    • M
      contrib: add libvhost-user · 7b2e5c65
      Marc-André Lureau 提交于
      Add a library to help implementing vhost-user backend (or slave).
      
      Dealing with vhost-user as an application developer isn't so easy: you
      have all the trouble with any protocol: validation, unix ancillary data,
      shared memory, eventfd, logging, and on top of that you need to deal
      with virtio queues, if possible efficiently.
      
      qemu test has a nice vhost-user testing application vhost-user-bridge,
      which implements most of vhost-user, and virtio.c which implements
      virtqueues manipulation. Based on these two, I tried to make a simple
      library, reusable for tests or development of new vhost-user scenarios.
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      [Felipe: set used_idx copy on SET_VRING_ADDR and update shadow avail idx
       on SET_VRING_BASE]
      Signed-off-by: NFelipe Franciosi <felipe@nutanix.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      7b2e5c65
  5. 28 10月, 2016 2 次提交
  6. 12 10月, 2016 1 次提交
  7. 07 10月, 2016 1 次提交
  8. 06 10月, 2016 1 次提交
    • P
      rules.mak: quiet-command: Split command name and args to print · 0bdb12c7
      Peter Maydell 提交于
      The quiet-command make rule currently takes two arguments:
      the command and arguments to run, and a string to print if
      the V flag is not set (ie we are not being verbose).
      By convention, the string printed is of the form
      "  NAME   some args". Unfortunately to get nicely lined up
      output all the strings have to agree about what column the
      arguments should start in, which means that if we add a
      new quiet-command usage which wants a slightly longer CMD
      name then we either put up with misalignment or change
      every quiet-command string.
      
      Split the quiet-mode string into two, the "NAME" and
      the "same args" part, and use printf(1) to format the
      string automatically. This means we only need to change
      one place if we want to support a longer maximum name.
      
      In particular, we can now print 7-character names lined
      up properly (they are needed for the OSX "SETTOOL" invocation).
      
      Change all the uses of quiet-command to the new syntax.
      (Any which are missed or inadvertently reintroduced
      via later merges will result in slightly misformatted
      quiet output rather than disaster.)
      
      A few places in the pc-bios/ makefiles are updated to use
      "BUILD", "SIGN" and "STRIP" rather than "Building",
      "Signing" and "Stripping" for consistency and to keep them
      below 7 characters. Module .mo links now print "LD" rather
      than the nonstandard "LD -r".
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Message-id: 1475598441-27908-1-git-send-email-peter.maydell@linaro.org
      0bdb12c7
  9. 21 9月, 2016 2 次提交
    • M
      blockdev: Add dynamic module loading for block drivers · 88d88798
      Marc Mari 提交于
      Extend the current module interface to allow for block drivers to be
      loaded dynamically on request. The only block drivers that can be
      converted into modules are the drivers that don't perform any init
      operation except for registering themselves.
      
      In addition, only the protocol drivers are being modularized, as they
      are the only ones which see significant performance benefits. The format
      drivers do not generally link to external libraries, so modularizing
      them is of no benefit from a performance perspective.
      
      All the necessary module information is located in a new structure found
      in module_block.h
      
      This spoils the purpose of 5505e8b7 (block/dmg: make it modular).
      
      Before this patch, if module build is enabled, block-dmg.so is linked to
      libbz2, whereas the main binary is not. In downstream, theoretically, it
      means only the qemu-block-extra package depends on libbz2, while the
      main QEMU package needn't to. With this patch, we (temporarily) change
      the case so that the main QEMU depends on libbz2 again.
      Signed-off-by: NMarc Marí <markmb@redhat.com>
      Signed-off-by: NColin Lord <clord@redhat.com>
      Reviewed-by: NStefan Hajnoczi <stefanha@redhat.com>
      Message-id: 1471008424-16465-4-git-send-email-clord@redhat.com
      Reviewed-by: NMax Reitz <mreitz@redhat.com>
      [mreitz: Do a signed comparison against the length of
       block_driver_modules[], so it will not cause a compile error when
       empty]
      Signed-off-by: NMax Reitz <mreitz@redhat.com>
      88d88798
    • M
      blockdev: Add dynamic generation of module_block.h · 0c0c1fd9
      Marc Mari 提交于
      To simplify the addition of new block modules, add a script that generates
      module_block.h automatically from the modules' source code.
      
      This script assumes that the QEMU coding style rules are followed.
      Signed-off-by: NMarc Marí <markmb@redhat.com>
      Signed-off-by: NColin Lord <clord@redhat.com>
      Reviewed-by: NStefan Hajnoczi <stefanha@redhat.com>
      Message-id: 1471008424-16465-3-git-send-email-clord@redhat.com
      Reviewed-by: NMax Reitz <mreitz@redhat.com>
      Signed-off-by: NMax Reitz <mreitz@redhat.com>
      0c0c1fd9
  10. 20 9月, 2016 2 次提交
  11. 19 9月, 2016 1 次提交
  12. 15 9月, 2016 1 次提交
  13. 10 8月, 2016 1 次提交
  14. 14 7月, 2016 1 次提交
  15. 13 7月, 2016 1 次提交
  16. 04 7月, 2016 2 次提交
  17. 01 7月, 2016 2 次提交
  18. 29 6月, 2016 3 次提交
  19. 21 6月, 2016 1 次提交
  20. 17 6月, 2016 1 次提交
  21. 07 6月, 2016 5 次提交
  22. 01 6月, 2016 2 次提交
    • F
      Makefile: Rules for docker testing · 324027c2
      Fam Zheng 提交于
      This adds a group of make targets to run docker tests, all are available
      in source tree without running ./configure.
      
      The usage is shown with "make docker".
      
      Besides the fixed ones, dynamic targets for building each image and
      running each test in each image are generated automatically by make,
      scanning $(SRC_PATH)/tests/docker/ files with specific patterns.
      
      Alternative to manually list particular targets (docker-TEST@IMAGE)
      set, you can control which tests/images to run by filtering variables,
      TESTS= and IMAGES=, which are expressed in Makefile pattern syntax,
      "foo% %bar ...". For example:
      
          $ make docker-test IMAGES="ubuntu fedora"
      
      Unfortunately, it's impossible to propagate "-j $JOBS" into make in
      containers, however since each combination is made a first class target
      in the top Makefile, "make -j$N docker-test" still parallels the tests
      coarsely.
      
      Still, $J is made a magic variable to let all make invocations in
      containers to use -j$J.
      
      Instead of providing a live version of the source tree to the docker
      container we snapshot it with git-archive. This ensures the tree is in a
      pristine state for whatever operations the container is going to run on
      them.
      
      Uncommitted changes known to files known by the git index will be
      included in the snapshot if there are any.
      Signed-off-by: NFam Zheng <famz@redhat.com>
      Signed-off-by: NAlex Bennée <alex.bennee@linaro.org>
      Message-id: 1464755128-32490-5-git-send-email-famz@redhat.com
      324027c2
    • F
      Makefile: Always include rules.mak · fb57c881
      Fam Zheng 提交于
      When config-host.mak is not found it is safe to assume SRC_PATH is ".".
      So, it is okay to move inclusion of ruls.mak out of the ifeq condition.
      Signed-off-by: NFam Zheng <famz@redhat.com>
      Message-id: 1464755128-32490-4-git-send-email-famz@redhat.com
      fb57c881
  23. 29 5月, 2016 1 次提交