Skip to content
Snippets Groups Projects
  1. Feb 03, 2020
    • Peter Maydell's avatar
      virtfs-proxy-helper: Convert documentation to rST · 78813586
      Peter Maydell authored
      
      The virtfs-proxy-helper documentation is currently in
      fsdev/qemu-trace-stap.texi in Texinfo format, which we
      present to the user as:
       * a virtfs-proxy-helper manpage
       * but not (unusually for QEMU) part of the HTML docs
      
      Convert the documentation to rST format that lives in
      the docs/ subdirectory, and present it to the user as:
       * a virtfs-proxy-helper manpage
       * part of the interop/ Sphinx manual
      
      There are minor formatting changes to suit Sphinx, but no
      content changes. In particular I've split the -u and -g
      options into each having their own description text.
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Acked-by: default avatarGreg Kurz <groug@kaod.org>
      Message-id: 20200124162606.8787-9-peter.maydell@linaro.org
      78813586
  2. Jan 20, 2020
  3. Dec 02, 2019
  4. Oct 10, 2019
    • Antonios Motakis's avatar
      9p: Added virtfs option 'multidevs=remap|forbid|warn' · 1a6ed33c
      Antonios Motakis authored
      
      'warn' (default): Only log an error message (once) on host if more than one
      device is shared by same export, except of that just ignore this config
      error though. This is the default behaviour for not breaking existing
      installations implying that they really know what they are doing.
      
      'forbid': Like 'warn', but except of just logging an error this
      also denies access of guest to additional devices.
      
      'remap': Allows to share more than one device per export by remapping
      inodes from host to guest appropriately. To support multiple devices on the
      9p share, and avoid qid path collisions we take the device id as input to
      generate a unique QID path. The lowest 48 bits of the path will be set
      equal to the file inode, and the top bits will be uniquely assigned based
      on the top 16 bits of the inode and the device id.
      
      Signed-off-by: default avatarAntonios Motakis <antonios.motakis@huawei.com>
      [CS: - Rebased to https://github.com/gkurz/qemu/commits/9p-next
      
      
             (SHA1 7fc4c49e91).
           - Added virtfs option 'multidevs', original patch simply did the inode
             remapping without being asked.
           - Updated hash calls to new xxhash API.
           - Updated docs for new option 'multidevs'.
           - Fixed v9fs_do_readdir() not having remapped inodes.
           - Log error message when running out of prefixes in
             qid_path_prefixmap().
           - Fixed definition of QPATH_INO_MASK.
           - Wrapped qpp_table initialization to dedicated qpp_table_init()
             function.
           - Dropped unnecessary parantheses in qpp_lookup_func().
           - Dropped unnecessary g_malloc0() result checks. ]
      Signed-off-by: default avatarChristian Schoenebeck <qemu_oss@crudebyte.com>
      [groug: - Moved "multidevs" parsing to the local backend.
              - Added hint to invalid multidevs option error.
      	- Turn "remap" into "x-remap". ]
      Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
      1a6ed33c
    • Greg Kurz's avatar
      fsdev: Add return value to fsdev_throttle_parse_opts() · ea52cdd4
      Greg Kurz authored
      
      It is more convenient to use the return value of the function to notify
      errors, rather than to be tied up setting up the &local_err boilerplate.
      
      Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
      ea52cdd4
    • Antonios Motakis's avatar
      9p: unsigned type for type, version, path · 87032833
      Antonios Motakis authored
      
      There is no need for signedness on these QID fields for 9p.
      
      Signed-off-by: default avatarAntonios Motakis <antonios.motakis@huawei.com>
      [CS: - Also make QID type unsigned.
           - Adjust donttouch_stat() to new types.
           - Adjust trace-events to new types. ]
      Signed-off-by: default avatarChristian Schoenebeck <qemu_oss@crudebyte.com>
      Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
      87032833
  5. Aug 20, 2019
  6. Aug 16, 2019
  7. Jun 12, 2019
  8. May 17, 2019
  9. May 13, 2019
  10. Jan 11, 2019
    • Paolo Bonzini's avatar
      qemu/queue.h: leave head structs anonymous unless necessary · b58deb34
      Paolo Bonzini authored
      
      Most list head structs need not be given a name.  In most cases the
      name is given just in case one is going to use QTAILQ_LAST, QTAILQ_PREV
      or reverse iteration, but this does not apply to lists of other kinds,
      and even for QTAILQ in practice this is only rarely needed.  In addition,
      we will soon reimplement those macros completely so that they do not
      need a name for the head struct.  So clean up everything, not giving a
      name except in the rare case where it is necessary.
      
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      b58deb34
  11. Dec 12, 2018
  12. Oct 19, 2018
  13. Aug 22, 2018
  14. Mar 06, 2018
  15. Feb 09, 2018
  16. Feb 08, 2018
    • Paolo Bonzini's avatar
      coroutine-lock: make qemu_co_enter_next thread-safe · 5261dd7b
      Paolo Bonzini authored
      
      qemu_co_queue_next does not need to release and re-acquire the mutex,
      because the queued coroutine does not run immediately.  However, this
      does not hold for qemu_co_enter_next.  Now that qemu_co_queue_wait
      can synchronize (via QemuLockable) with code that is not running in
      coroutine context, it's important that code using qemu_co_enter_next
      can easily use a standardized locking idiom.
      
      First of all, qemu_co_enter_next must use aio_co_wake to restart the
      coroutine.  Second, the function gains a second argument, a QemuLockable*,
      and the comments of qemu_co_queue_next and qemu_co_queue_restart_all
      are adjusted to clarify the difference.
      
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      Message-Id: <20180203153935.8056-5-pbonzini@redhat.com>
      Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: default avatarFam Zheng <famz@redhat.com>
      Signed-off-by: default avatarFam Zheng <famz@redhat.com>
      5261dd7b
  17. Jan 08, 2018
  18. Sep 05, 2017
  19. Aug 30, 2017
  20. Jul 18, 2017
  21. Jun 29, 2017
    • Tobias Schramm's avatar
      9pfs: local: Add support for custom fmode/dmode in 9ps mapped security modes · b96feb2c
      Tobias Schramm authored
      
      In mapped security modes, files are created with very restrictive
      permissions (600 for files and 700 for directories). This makes
      file sharing between virtual machines and users on the host rather
      complicated. Imagine eg. a group of users that need to access data
      produced by processes on a virtual machine. Giving those users access
      to the data will be difficult since the group access mode is always 0.
      
      This patch makes the default mode for both files and directories
      configurable. Existing setups that don't know about the new parameters
      keep using the current secure behavior.
      
      Signed-off-by: default avatarTobias Schramm <tobleminer@gmail.com>
      Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
      b96feb2c
  22. May 25, 2017
  23. Feb 28, 2017
  24. Nov 23, 2016
  25. Oct 17, 2016
    • Greg Kurz's avatar
      bc70a592
    • Li Qiang's avatar
      9pfs: allocate space for guest originated empty strings · ba42ebb8
      Li Qiang authored
      
      If a guest sends an empty string paramater to any 9P operation, the current
      code unmarshals it into a V9fsString equal to { .size = 0, .data = NULL }.
      
      This is unfortunate because it can cause NULL pointer dereference to happen
      at various locations in the 9pfs code. And we don't want to check str->data
      everywhere we pass it to strcmp() or any other function which expects a
      dereferenceable pointer.
      
      This patch enforces the allocation of genuine C empty strings instead, so
      callers don't have to bother.
      
      Out of all v9fs_iov_vunmarshal() users, only v9fs_xattrwalk() checks if
      the returned string is empty. It now uses v9fs_string_size() since
      name.data cannot be NULL anymore.
      
      Signed-off-by: default avatarLi Qiang <liqiang6-s@360.cn>
      [groug, rewritten title and changelog,
       fix empty string check in v9fs_xattrwalk()]
      Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
      ba42ebb8
  26. Sep 16, 2016
Loading