Displaying 20 results from an estimated 36 matches for "vhost_net_ubuf_alloc".
2019 Jun 13
2
memory leak in vhost_net_ioctl
...slab_post_alloc_hook mm/slab.h:439 [inline]
[<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
[<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
[<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
[<0000000079ebab38>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
[<0000000079ebab38>] vhost_net_set_backend drivers/vhost/net.c:1534 [inline]
[<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1716
[<000000009f6204a2>] vfs_ioctl fs/ioctl.c:46 [inline]
[<000000009f6204a2&g...
2019 Jun 13
2
memory leak in vhost_net_ioctl
...slab_post_alloc_hook mm/slab.h:439 [inline]
[<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
[<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
[<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
[<0000000079ebab38>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
[<0000000079ebab38>] vhost_net_set_backend drivers/vhost/net.c:1534 [inline]
[<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1716
[<000000009f6204a2>] vfs_ioctl fs/ioctl.c:46 [inline]
[<000000009f6204a2&g...
2019 Jun 14
2
memory leak in vhost_net_ioctl
...k mm/slab.h:439 [inline]
> [<000000006c752978>] slab_alloc mm/slab.c:3326 [inline]
> [<000000006c752978>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
> [<00000000b3825d52>] kmalloc include/linux/slab.h:547 [inline]
> [<00000000b3825d52>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
> [<00000000b3825d52>] vhost_net_set_backend drivers/vhost/net.c:1535 [inline]
> [<00000000b3825d52>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1717
> [<00000000700f02d7>] vfs_ioctl fs/ioctl.c:46 [inline]
> [&l...
2019 Jun 14
2
memory leak in vhost_net_ioctl
...k mm/slab.h:439 [inline]
> [<000000006c752978>] slab_alloc mm/slab.c:3326 [inline]
> [<000000006c752978>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
> [<00000000b3825d52>] kmalloc include/linux/slab.h:547 [inline]
> [<00000000b3825d52>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
> [<00000000b3825d52>] vhost_net_set_backend drivers/vhost/net.c:1535 [inline]
> [<00000000b3825d52>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1717
> [<00000000700f02d7>] vfs_ioctl fs/ioctl.c:46 [inline]
> [&l...
2014 Feb 13
2
[PATCH net v2] vhost: fix ref cnt checking deadlock
...py(int vq)
vhost_net_zcopy_mask |= 0x1 << vq;
}
-static void vhost_net_zerocopy_done_signal(struct kref *kref)
-{
- struct vhost_net_ubuf_ref *ubufs;
-
- ubufs = container_of(kref, struct vhost_net_ubuf_ref, kref);
- wake_up(&ubufs->wait);
-}
-
static struct vhost_net_ubuf_ref *
vhost_net_ubuf_alloc(struct vhost_virtqueue *vq, bool zcopy)
{
@@ -134,21 +131,24 @@ vhost_net_ubuf_alloc(struct vhost_virtqueue *vq, bool zcopy)
ubufs = kmalloc(sizeof(*ubufs), GFP_KERNEL);
if (!ubufs)
return ERR_PTR(-ENOMEM);
- kref_init(&ubufs->kref);
+ atomic_set(&ubufs->refcount, 1);
init_w...
2014 Feb 13
2
[PATCH net v2] vhost: fix ref cnt checking deadlock
...py(int vq)
vhost_net_zcopy_mask |= 0x1 << vq;
}
-static void vhost_net_zerocopy_done_signal(struct kref *kref)
-{
- struct vhost_net_ubuf_ref *ubufs;
-
- ubufs = container_of(kref, struct vhost_net_ubuf_ref, kref);
- wake_up(&ubufs->wait);
-}
-
static struct vhost_net_ubuf_ref *
vhost_net_ubuf_alloc(struct vhost_virtqueue *vq, bool zcopy)
{
@@ -134,21 +131,24 @@ vhost_net_ubuf_alloc(struct vhost_virtqueue *vq, bool zcopy)
ubufs = kmalloc(sizeof(*ubufs), GFP_KERNEL);
if (!ubufs)
return ERR_PTR(-ENOMEM);
- kref_init(&ubufs->kref);
+ atomic_set(&ubufs->refcount, 1);
init_w...
2019 Jun 13
0
memory leak in vhost_net_ioctl
...k mm/slab.h:439 [inline]
> [<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
> [<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
> [<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
> [<0000000079ebab38>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
> [<0000000079ebab38>] vhost_net_set_backend drivers/vhost/net.c:1534 [inline]
> [<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1716
> [<000000009f6204a2>] vfs_ioctl fs/ioctl.c:46 [inline]
> [&l...
2019 Jun 06
1
memory leak in vhost_net_ioctl
...k mm/slab.h:439 [inline]
> [<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
> [<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
> [<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
> [<0000000079ebab38>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
> [<0000000079ebab38>] vhost_net_set_backend drivers/vhost/net.c:1534 [inline]
> [<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1716
> [<000000009f6204a2>] vfs_ioctl fs/ioctl.c:46 [inline]
> [&l...
2019 Jun 06
1
memory leak in vhost_net_ioctl
...k mm/slab.h:439 [inline]
> [<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
> [<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
> [<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
> [<0000000079ebab38>] vhost_net_ubuf_alloc drivers/vhost/net.c:241 [inline]
> [<0000000079ebab38>] vhost_net_set_backend drivers/vhost/net.c:1534 [inline]
> [<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10 drivers/vhost/net.c:1716
> [<000000009f6204a2>] vfs_ioctl fs/ioctl.c:46 [inline]
> [&l...
2019 Jun 05
0
memory leak in vhost_net_ioctl
...slab_post_alloc_hook mm/slab.h:439 [inline]
[<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
[<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280 mm/slab.c:3553
[<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
[<0000000079ebab38>] vhost_net_ubuf_alloc drivers/vhost/net.c:241
[inline]
[<0000000079ebab38>] vhost_net_set_backend drivers/vhost/net.c:1534
[inline]
[<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10
drivers/vhost/net.c:1716
[<000000009f6204a2>] vfs_ioctl fs/ioctl.c:46 [inline]
[<000000009f62...
2019 Jun 13
0
memory leak in vhost_net_ioctl
...gt;> ???? [<00000000ae0c4ae0>] slab_alloc mm/slab.c:3326 [inline]
>> ???? [<00000000ae0c4ae0>] kmem_cache_alloc_trace+0x13d/0x280
>> mm/slab.c:3553
>> ???? [<0000000079ebab38>] kmalloc include/linux/slab.h:547 [inline]
>> ???? [<0000000079ebab38>] vhost_net_ubuf_alloc
>> drivers/vhost/net.c:241 [inline]
>> ???? [<0000000079ebab38>] vhost_net_set_backend
>> drivers/vhost/net.c:1534 [inline]
>> ???? [<0000000079ebab38>] vhost_net_ioctl+0xb43/0xc10
>> drivers/vhost/net.c:1716
>> ???? [<000000009f6204a2>] vfs_...
2017 Jan 26
2
[BUG/RFC] vhost: net: big endian viring access despite virtio 1
...sock = get_socket(fd);
/* fd == -1 --> sock == NULL */
if (IS_ERR(sock)) {
r = PTR_ERR(sock);
goto err_vq;
}
/* start polling new socket */
oldsock = vq->private_data;
if (sock != oldsock) {
ubufs = vhost_net_ubuf_alloc(vq,
sock && vhost_sock_zcopy(sock));
if (IS_ERR(ubufs)) {
r = PTR_ERR(ubufs);
goto err_ubufs;
}
vhost_net_disable_vq(n, vq);
==> vq-&g...
2017 Jan 26
2
[BUG/RFC] vhost: net: big endian viring access despite virtio 1
...sock = get_socket(fd);
/* fd == -1 --> sock == NULL */
if (IS_ERR(sock)) {
r = PTR_ERR(sock);
goto err_vq;
}
/* start polling new socket */
oldsock = vq->private_data;
if (sock != oldsock) {
ubufs = vhost_net_ubuf_alloc(vq,
sock && vhost_sock_zcopy(sock));
if (IS_ERR(ubufs)) {
r = PTR_ERR(ubufs);
goto err_ubufs;
}
vhost_net_disable_vq(n, vq);
==> vq-&g...
2020 Feb 13
0
vhost changes (batched) in linux-next after 12/13 trigger random crashes in KVM guests after reboot
...ocket err r=%d", index, fd, r);
> goto err_vq;
> }
>
> /* start polling new socket */
> oldsock = vq->private_data;
> if (sock != oldsock) {
> + pr_debug("sock=%p != oldsock=%p index=%u fd=%d vq=%p", sock, oldsock, index, fd, vq);
> ubufs = vhost_net_ubuf_alloc(vq,
> sock && vhost_sock_zcopy(sock));
> if (IS_ERR(ubufs)) {
> r = PTR_ERR(ubufs);
> + pr_debug("ubufs index=%u fd=%d err r=%d vq=%p", index, fd, r, vq);
> goto err_ubufs;
> }
>
> @@ -1541,11 +1548,15 @@ static long vhost_net_s...
2017 Jan 26
0
[BUG/RFC] vhost: net: big endian viring access despite virtio 1
...t; sock == NULL */
> if (IS_ERR(sock)) {
> r = PTR_ERR(sock);
> goto err_vq;
> }
>
> /* start polling new socket */
> oldsock = vq->private_data;
> if (sock != oldsock) {
> ubufs = vhost_net_ubuf_alloc(vq,
> sock && vhost_sock_zcopy(sock));
> if (IS_ERR(ubufs)) {
> r = PTR_ERR(ubufs);
> goto err_ubufs;
> }
>
> vhost_net_disable_...
2020 Feb 14
0
vhost changes (batched) in linux-next after 12/13 trigger random crashes in KVM guests after reboot
...ocket err r=%d", index, fd, r);
> goto err_vq;
> }
>
> /* start polling new socket */
> oldsock = vq->private_data;
> if (sock != oldsock) {
> + pr_debug("sock=%p != oldsock=%p index=%u fd=%d vq=%p", sock, oldsock, index, fd, vq);
> ubufs = vhost_net_ubuf_alloc(vq,
> sock && vhost_sock_zcopy(sock));
> if (IS_ERR(ubufs)) {
> r = PTR_ERR(ubufs);
> + pr_debug("ubufs index=%u fd=%d err r=%d vq=%p", index, fd, r, vq);
> goto err_ubufs;
> }
>
> @@ -1541,11 +1548,15 @@ static long vhost_net_s...
2014 Feb 12
4
[PATCH net 0/3] vhost fixes for 3.14, -stable
This fixes a deadlock with vhost reported in the field,
as well as a theoretical race issue found by code
review.
Patches 1+2 are needed for stable.
Thanks to Qin Chuanyu for reporting the issue!
Michael S. Tsirkin (3):
kref: add kref_sub_return
vhost: fix ref cnt checking deadlock
vhost: fix a theoretical race in device cleanup
include/linux/kref.h | 33
2014 Feb 12
4
[PATCH net 0/3] vhost fixes for 3.14, -stable
This fixes a deadlock with vhost reported in the field,
as well as a theoretical race issue found by code
review.
Patches 1+2 are needed for stable.
Thanks to Qin Chuanyu for reporting the issue!
Michael S. Tsirkin (3):
kref: add kref_sub_return
vhost: fix ref cnt checking deadlock
vhost: fix a theoretical race in device cleanup
include/linux/kref.h | 33
2020 Feb 14
0
vhost changes (batched) in linux-next after 12/13 trigger random crashes in KVM guests after reboot
...>>> /* start polling new socket */
>>> oldsock = vq->private_data;
>>> if (sock != oldsock) {
>>> + pr_debug("sock=%p != oldsock=%p index=%u fd=%d vq=%p", sock, oldsock, index, fd, vq);
>>> ubufs = vhost_net_ubuf_alloc(vq,
>>> sock && vhost_sock_zcopy(sock));
>>> if (IS_ERR(ubufs)) {
>>> r = PTR_ERR(ubufs);
>>> + pr_debug("ubufs index=%u fd=%d err r=%d vq=%p", in...
2013 May 07
5
[PATCH 0/4] vhost private_data rcu removal
Asias He (4):
vhost-net: Always access vq->private_data under vq mutex
vhost-test: Always access vq->private_data under vq mutex
vhost-scsi: Always access vq->private_data under vq mutex
vhost: Remove custom vhost rcu usage
drivers/vhost/net.c | 37 ++++++++++++++++---------------------
drivers/vhost/scsi.c | 17 ++++++-----------
drivers/vhost/test.c | 20