An error occurred fetching the project authors.
  1. 11 Mar, 2016 3 commits
  2. 02 Mar, 2016 1 commit
    • Greg Kurz's avatar
      vhost: rename vhost_init_used() · 80f7d030
      Greg Kurz authored
      Looking at how callers use this, maybe we should just rename init_used
      to vhost_vq_init_access. The _used suffix was a hint that we
      access the vq used ring. But maybe what callers care about is
      that it must be called after access_ok.
      
      Also, this function manipulates the vq->is_le field which isn't related
      to the vq used ring.
      
      This patch simply renames vhost_init_used() to vhost_vq_init_access() as
      suggested by Michael.
      
      No behaviour change.
      Signed-off-by: default avatarGreg Kurz <gkurz@linux.vnet.ibm.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      80f7d030
  3. 28 Oct, 2015 1 commit
  4. 16 Sep, 2015 1 commit
  5. 01 Jun, 2015 3 commits
  6. 09 Dec, 2014 3 commits
  7. 09 Jun, 2014 2 commits
    • Michael S. Tsirkin's avatar
      vhost: move memory pointer to VQs · 47283bef
      Michael S. Tsirkin authored
      commit 2ae76693b8bcabf370b981cd00c36cd41d33fabc
          vhost: replace rcu with mutex
      replaced rcu sync for memory accesses with VQ mutex locl/unlock.
      This is correct since all accesses are under VQ mutex, but incomplete:
      we still do useless rcu lock/unlock operations, someone might copy this
      code into some other context where this won't be right.
      This use of RCU is also non standard and hard to understand.
      Let's copy the pointer to each VQ structure, this way
      the access rules become straight-forward, and there's
      no need for RCU anymore.
      Reported-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      47283bef
    • Michael S. Tsirkin's avatar
      vhost: move acked_features to VQs · ea16c514
      Michael S. Tsirkin authored
      Refactor code to make sure features are only accessed
      under VQ mutex. This makes everything simpler, no need
      for RCU here anymore.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      ea16c514
  8. 06 Dec, 2013 1 commit
  9. 11 Jul, 2013 1 commit
  10. 07 Jul, 2013 1 commit
  11. 11 Jun, 2013 1 commit
  12. 06 May, 2013 4 commits
  13. 01 May, 2013 4 commits
  14. 29 Jan, 2013 1 commit
    • Jason Wang's avatar
      vhost_net: handle polling errors when setting backend · 2b8b328b
      Jason Wang authored
      Currently, the polling errors were ignored, which can lead following issues:
      
      - vhost remove itself unconditionally from waitqueue when stopping the poll,
        this may crash the kernel since the previous attempt of starting may fail to
        add itself to the waitqueue
      - userspace may think the backend were successfully set even when the polling
        failed.
      
      Solve this by:
      
      - check poll->wqh before trying to remove from waitqueue
      - report polling errors in vhost_poll_start(), tx_poll_start(), the return value
        will be checked and returned when userspace want to set the backend
      
      After this fix, there still could be a polling failure after backend is set, it
      will addressed by the next patch.
      Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
      Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2b8b328b
  15. 06 Dec, 2012 1 commit
    • Michael S. Tsirkin's avatar
      vhost: avoid backend flush on vring ops · 935cdee7
      Michael S. Tsirkin authored
      vring changes already do a flush internally where appropriate, so we do
      not need a second flush.
      
      It's currently not very expensive but a follow-up patch makes flush more
      heavy-weight, so remove the extra flush here to avoid regressing
      performance if call or kick fds are changed on data path.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      935cdee7
  16. 03 Nov, 2012 4 commits
  17. 21 Jul, 2012 2 commits
  18. 13 Apr, 2012 1 commit
  19. 28 Feb, 2012 1 commit
  20. 26 Jul, 2011 1 commit
  21. 19 Jul, 2011 1 commit
  22. 18 Jul, 2011 1 commit
    • Michael S. Tsirkin's avatar
      vhost: vhost TX zero-copy support · bab632d6
      Michael S. Tsirkin authored
      >From: Shirley Ma <mashirle@us.ibm.com>
      
      This adds experimental zero copy support in vhost-net,
      disabled by default. To enable, set
      experimental_zcopytx module option to 1.
      
      This patch maintains the outstanding userspace buffers in the
      sequence it is delivered to vhost. The outstanding userspace buffers
      will be marked as done once the lower device buffers DMA has finished.
      This is monitored through last reference of kfree_skb callback. Two
      buffer indices are used for this purpose.
      
      The vhost-net device passes the userspace buffers info to lower device
      skb through message control. DMA done status check and guest
      notification are handled by handle_tx: in the worst case is all buffers
      in the vq are in pending/done status, so we need to notify guest to
      release DMA done buffers first before we get any new buffers from the
      vq.
      
      One known problem is that if the guest stops submitting
      buffers, buffers might never get used until some
      further action, e.g. device reset. This does not
      seem to affect linux guests.
      Signed-off-by: default avatarShirley <xma@us.ibm.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bab632d6
  23. 30 May, 2011 1 commit