Displaying 20 results from an estimated 81 matches for "kmemleak_ignor".
Did you mean:
kmemleak_ignore
2014 Feb 11
6
[PATCH 0/3] tools/virtio: build fixes for virtio_test
...the tests in
tools/virtio. The following patches are build fixes for those changes, as well
as a fix for a typo that would have never built.
The changes were tested on my amd64 system against 3.14-rc2.
Joel Stanley (3):
tools/virtio: update internal copies of headers
tools/virtio: fix missing kmemleak_ignore symbol
tools/virtio: add a missing )
drivers/virtio/virtio_ring.c | 1 +
tools/virtio/linux/kmemleak.h | 3 +++
tools/virtio/linux/virtio.h | 4 ++--
tools/virtio/virtio_test.c | 2 +-
4 files changed, 7 insertions(+), 3 deletions(-)
create mode 100644 tools/virtio/linux/kmemleak.h
--...
2014 Feb 11
6
[PATCH 0/3] tools/virtio: build fixes for virtio_test
...the tests in
tools/virtio. The following patches are build fixes for those changes, as well
as a fix for a typo that would have never built.
The changes were tested on my amd64 system against 3.14-rc2.
Joel Stanley (3):
tools/virtio: update internal copies of headers
tools/virtio: fix missing kmemleak_ignore symbol
tools/virtio: add a missing )
drivers/virtio/virtio_ring.c | 1 +
tools/virtio/linux/kmemleak.h | 3 +++
tools/virtio/linux/virtio.h | 4 ++--
tools/virtio/virtio_test.c | 2 +-
4 files changed, 7 insertions(+), 3 deletions(-)
create mode 100644 tools/virtio/linux/kmemleak.h
--...
2013 Oct 02
2
Kmemleak: false-positive in vring_add_indirect ?
...ff81502645>] igmp6_timer_handler+0x95/0xa0
[<ffffffff8104b57c>] call_timer_fn+0x2c/0x90
[<ffffffff8104b7ba>] run_timer_softirq+0x1da/0x1f0
[<ffffffff81045721>] __do_softirq+0xd1/0x1b0
May it be that the allocated memory within vring_add_indirect should be marked
as kmemleak_ignore(), because it is mapped from a virtual to a physical
address and thus kmemleak cannot detect that the memory is actually still
being referenced.
Thanks for your help,
Christoph
2013 Oct 02
2
Kmemleak: false-positive in vring_add_indirect ?
...ff81502645>] igmp6_timer_handler+0x95/0xa0
[<ffffffff8104b57c>] call_timer_fn+0x2c/0x90
[<ffffffff8104b7ba>] run_timer_softirq+0x1da/0x1f0
[<ffffffff81045721>] __do_softirq+0xd1/0x1b0
May it be that the allocated memory within vring_add_indirect should be marked
as kmemleak_ignore(), because it is mapped from a virtual to a physical
address and thus kmemleak cannot detect that the memory is actually still
being referenced.
Thanks for your help,
Christoph
2013 Oct 03
0
Kmemleak: false-positive in vring_add_indirect ?
...andler+0x95/0xa0
> [<ffffffff8104b57c>] call_timer_fn+0x2c/0x90
> [<ffffffff8104b7ba>] run_timer_softirq+0x1da/0x1f0
> [<ffffffff81045721>] __do_softirq+0xd1/0x1b0
>
> May it be that the allocated memory within vring_add_indirect should be marked
> as kmemleak_ignore(), because it is mapped from a virtual to a physical
> address and thus kmemleak cannot detect that the memory is actually still
> being referenced.
>
>
> Thanks for your help,
> Christoph
Thanks! Does this work?
virtio_ring: plug kmemleak false positive.
unreferenced object...
2014 Sep 04
1
[PATCH 3/3] virtio_ring: unify direct/indirect code paths.
...se a single buffer which doesn't continue */
> + vq->vring.desc[head].flags = VRING_DESC_F_INDIRECT;
> + vq->vring.desc[head].addr = virt_to_phys(desc);
> + /* avoid kmemleak false positive (hidden by virt_to_phys) */
> + kmemleak_ignore(desc);
> + vq->vring.desc[head].len = total_sg * sizeof(struct vring_desc);
> +
> + /* Set up rest to use this indirect table. */
> + i = 0;
> + total_sg = 1;
This is a little too magical for me. Would it make sense to add...
2014 Sep 04
1
[PATCH 3/3] virtio_ring: unify direct/indirect code paths.
...se a single buffer which doesn't continue */
> + vq->vring.desc[head].flags = VRING_DESC_F_INDIRECT;
> + vq->vring.desc[head].addr = virt_to_phys(desc);
> + /* avoid kmemleak false positive (hidden by virt_to_phys) */
> + kmemleak_ignore(desc);
> + vq->vring.desc[head].len = total_sg * sizeof(struct vring_desc);
> +
> + /* Set up rest to use this indirect table. */
> + i = 0;
> + total_sg = 1;
This is a little too magical for me. Would it make sense to add...
2014 Apr 01
2
[PULL] virtio-next
...eue length though.
Cheers,
Rusty.
----------------------------------------------------------------
Alexander Gordeev (1):
virtio: Use pci_enable_msix_exact() instead of pci_enable_msix()
Joel Stanley (3):
tools/virtio: update internal copies of headers
tools/virtio: fix missing kmemleak_ignore symbol
tools/virtio: add a missing )
Randy Dunlap (1):
MAINTAINERS: virtio-dev is subscribers only
Rusty Russell (8):
virtio_balloon: don't softlockup on huge balloon changes.
virtio_net: don't crash if virtqueue is broken.
virtio_blk: don't crash, repor...
2014 Apr 01
2
[PULL] virtio-next
...eue length though.
Cheers,
Rusty.
----------------------------------------------------------------
Alexander Gordeev (1):
virtio: Use pci_enable_msix_exact() instead of pci_enable_msix()
Joel Stanley (3):
tools/virtio: update internal copies of headers
tools/virtio: fix missing kmemleak_ignore symbol
tools/virtio: add a missing )
Randy Dunlap (1):
MAINTAINERS: virtio-dev is subscribers only
Rusty Russell (8):
virtio_balloon: don't softlockup on huge balloon changes.
virtio_net: don't crash if virtqueue is broken.
virtio_blk: don't crash, repor...
2014 Oct 22
1
[PATCH RFC 04/11] virtio_ring: implement endian reversal based on VERSION_1 feature.
...ring.desc[head].flags =
> > + cpu_to_virtio16(vq->vq.vdev, VRING_DESC_F_INDIRECT);
> > + vq->vring.desc[head].addr =
> > + cpu_to_virtio64(vq->vq.vdev, virt_to_phys(desc));
> > /* kmemleak gives a false positive, as it's hidden by virt_to_phys */
> > kmemleak_ignore(desc);
> > - vq->vring.desc[head].len = i * sizeof(struct vring_desc);
> > + vq->vring.desc[head].len =
> > + cpu_to_virtio32(vq->vq.vdev, i * sizeof(struct vring_desc));
> >
> > - /* Update free pointer */
> > + BUG_ON(i != total_sg);
> > +
&g...
2014 Oct 22
1
[PATCH RFC 04/11] virtio_ring: implement endian reversal based on VERSION_1 feature.
...ring.desc[head].flags =
> > + cpu_to_virtio16(vq->vq.vdev, VRING_DESC_F_INDIRECT);
> > + vq->vring.desc[head].addr =
> > + cpu_to_virtio64(vq->vq.vdev, virt_to_phys(desc));
> > /* kmemleak gives a false positive, as it's hidden by virt_to_phys */
> > kmemleak_ignore(desc);
> > - vq->vring.desc[head].len = i * sizeof(struct vring_desc);
> > + vq->vring.desc[head].len =
> > + cpu_to_virtio32(vq->vq.vdev, i * sizeof(struct vring_desc));
> >
> > - /* Update free pointer */
> > + BUG_ON(i != total_sg);
> > +
&g...
2014 Sep 03
0
[PATCH 3/3] virtio_ring: unify direct/indirect code paths.
...*/
- vq->vq.num_free--;
-
- /* Use a single buffer which doesn't continue */
- head = vq->free_head;
- vq->vring.desc[head].flags = VRING_DESC_F_INDIRECT;
- vq->vring.desc[head].addr = virt_to_phys(desc);
- /* kmemleak gives a false positive, as it's hidden by virt_to_phys */
- kmemleak_ignore(desc);
- vq->vring.desc[head].len = i * sizeof(struct vring_desc);
-
- /* Update free pointer */
- vq->free_head = vq->vring.desc[head].next;
+ desc = kmalloc(total_sg * sizeof(struct vring_desc), gfp);
+ if (!desc)
+ return NULL;
- return head;
+ for (i = 0; i < total_sg; i++)
+...
2014 Sep 03
8
[PATCH 0/3] virtio: simplify virtio_ring.
I resurrected these patches after prompting from Andy Lutomirski's
recent patches. I put them on the back-burner because vring_bench
had a 15% slowdown on my laptop: pktgen testing revealed a speedup,
if anything, so I've cleaned them up.
Rusty Russell (3):
virtio_net: pass well-formed sgs to virtqueue_add_*()
virtio_ring: assume sgs are always well-formed.
virtio_ring: unify
2014 Sep 03
8
[PATCH 0/3] virtio: simplify virtio_ring.
I resurrected these patches after prompting from Andy Lutomirski's
recent patches. I put them on the back-burner because vring_bench
had a 15% slowdown on my laptop: pktgen testing revealed a speedup,
if anything, so I've cleaned them up.
Rusty Russell (3):
virtio_net: pass well-formed sgs to virtqueue_add_*()
virtio_ring: assume sgs are always well-formed.
virtio_ring: unify
2013 Oct 04
1
Kmemleak: false-positive in vring_add_indirect ?
...t(struct vring_virtqueue *vq,
> head = vq->free_head;
> vq->vring.desc[head].flags = VRING_DESC_F_INDIRECT;
> vq->vring.desc[head].addr = virt_to_phys(desc);
> + /* kmemleak gives a false positive, as it's hidden by virt_to_phys */
> + kmemleak_ignore(desc);
> vq->vring.desc[head].len = i * sizeof(struct vring_desc);
>
> /* Update free pointer */
2014 Feb 11
0
[PATCH 0/3] tools/virtio: build fixes for virtio_test
...Ah, thanks a lot for posting this.
I had this fixed in my tree but forgot to send.
For the series:
Acked-by: Michael S. Tsirkin <mst at redhat.com>
Rusty, will you pick this up?
> Joel Stanley (3):
> tools/virtio: update internal copies of headers
> tools/virtio: fix missing kmemleak_ignore symbol
> tools/virtio: add a missing )
>
> drivers/virtio/virtio_ring.c | 1 +
> tools/virtio/linux/kmemleak.h | 3 +++
> tools/virtio/linux/virtio.h | 4 ++--
> tools/virtio/virtio_test.c | 2 +-
> 4 files changed, 7 insertions(+), 3 deletions(-)
> create mode 1...
2014 Apr 02
0
virtio: virtio_break_device() to mark all virtqueues broken.
...gt; ----------------------------------------------------------------
> Alexander Gordeev (1):
> virtio: Use pci_enable_msix_exact() instead of pci_enable_msix()
>
> Joel Stanley (3):
> tools/virtio: update internal copies of headers
> tools/virtio: fix missing kmemleak_ignore symbol
> tools/virtio: add a missing )
>
> Randy Dunlap (1):
> MAINTAINERS: virtio-dev is subscribers only
>
> Rusty Russell (8):
> virtio_balloon: don't softlockup on huge balloon changes.
> virtio_net: don't crash if virtqueue is broken...
2013 Oct 04
1
Kmemleak: false-positive in vring_add_indirect ?
...t(struct vring_virtqueue *vq,
> head = vq->free_head;
> vq->vring.desc[head].flags = VRING_DESC_F_INDIRECT;
> vq->vring.desc[head].addr = virt_to_phys(desc);
> + /* kmemleak gives a false positive, as it's hidden by virt_to_phys */
> + kmemleak_ignore(desc);
> vq->vring.desc[head].len = i * sizeof(struct vring_desc);
>
> /* Update free pointer */
2014 Oct 07
1
[PATCH RFC 04/11] virtio_ring: implement endian reversal based on VERSION_1 feature.
...sc[head].addr = virt_to_phys(desc);
+ vq->vring.desc[head].flags =
+ cpu_to_virtio_u16(vq->vq.vdev, VRING_DESC_F_INDIRECT);
+ vq->vring.desc[head].addr =
+ cpu_to_virtio_u64(vq->vq.vdev, virt_to_phys(desc));
/* kmemleak gives a false positive, as it's hidden by virt_to_phys */
kmemleak_ignore(desc);
- vq->vring.desc[head].len = i * sizeof(struct vring_desc);
+ vq->vring.desc[head].len =
+ cpu_to_virtio_u32(vq->vq.vdev, i * sizeof(struct vring_desc));
- /* Update free pointer */
+ BUG_ON(i != total_sg);
+
+ /* Update free pointer (we store this in native endian) */
vq->...
2014 Oct 07
1
[PATCH RFC 04/11] virtio_ring: implement endian reversal based on VERSION_1 feature.
...sc[head].addr = virt_to_phys(desc);
+ vq->vring.desc[head].flags =
+ cpu_to_virtio_u16(vq->vq.vdev, VRING_DESC_F_INDIRECT);
+ vq->vring.desc[head].addr =
+ cpu_to_virtio_u64(vq->vq.vdev, virt_to_phys(desc));
/* kmemleak gives a false positive, as it's hidden by virt_to_phys */
kmemleak_ignore(desc);
- vq->vring.desc[head].len = i * sizeof(struct vring_desc);
+ vq->vring.desc[head].len =
+ cpu_to_virtio_u32(vq->vq.vdev, i * sizeof(struct vring_desc));
- /* Update free pointer */
+ BUG_ON(i != total_sg);
+
+ /* Update free pointer (we store this in native endian) */
vq->...