1
0
Fork 0
alistair23-linux/net/vmw_vsock
WANG Cong 499fde662f vsock: use new wait API for vsock_stream_sendmsg()
As reported by Michal, vsock_stream_sendmsg() could still
sleep at vsock_stream_has_space() after prepare_to_wait():

  vsock_stream_has_space
    vmci_transport_stream_has_space
      vmci_qpair_produce_free_space
        qp_lock
          qp_acquire_queue_mutex
            mutex_lock

Just switch to the new wait API like we did for commit
d9dc8b0f8b ("net: fix sleeping for sk_wait_event()").

Reported-by: Michal Kubecek <mkubecek@suse.cz>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Cc: Jorgen Hansen <jhansen@vmware.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-05-22 14:39:36 -04:00
..
Kconfig VSOCK: Add Makefile and Kconfig 2016-08-02 02:57:30 +03:00
Makefile VSOCK: Add vsockmon tap functions 2017-04-24 12:35:56 -04:00
af_vsock.c vsock: use new wait API for vsock_stream_sendmsg() 2017-05-22 14:39:36 -04:00
af_vsock_tap.c VSOCK: Add vsockmon tap functions 2017-04-24 12:35:56 -04:00
virtio_transport.c virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
virtio_transport_common.c VSOCK: Add virtio vsock vsockmon hooks 2017-04-24 12:35:56 -04:00
vmci_transport.c VSOCK: remove unnecessary ternary operator on return value 2017-03-30 11:07:08 -07:00
vmci_transport.h VSOCK: constify vmci_transport_notify_ops structures 2015-11-23 15:49:29 -05:00
vmci_transport_notify.c ATM: use designated initializers 2016-12-17 11:56:57 -05:00
vmci_transport_notify.h VSOCK: constify vmci_transport_notify_ops structures 2015-11-23 15:49:29 -05:00
vmci_transport_notify_qstate.c ATM: use designated initializers 2016-12-17 11:56:57 -05:00
vsock_addr.c VSOCK: Move af_vsock.h and vsock_addr.h to include/net 2013-07-27 22:14:06 -07:00