[PATCH -mm] Fix /proc/slab_allocators re seq_list_next() conversion
Wrong pointer was used as kmem_cache pointer. [Here /proc/slab_allocators appears as empty file, but it's just me, probably] Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> --- mm/slab.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/mm/slab.c +++ b/mm/slab.c @@ -4401,7 +4401,7 @@ static void show_symbol(struct seq_file *m, unsigned long address) static int leaks_show(struct seq_file *m, void *p) { - struct kmem_cache *cachep = p; + struct kmem_cache *cachep = list_entry(p, struct kmem_cache, next); struct slab *slabp; struct kmem_list3 *l3; const char *name;
Re: [PATCH -mm] Fix /proc/slab_allocators re seq_list_next() conversion
Alexey Dobriyan wrote: > Wrong pointer was used as kmem_cache pointer. > > [Here /proc/slab_allocators appears as empty file, but it's just me, probably] > > Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Acked-by: Pavel Emelianov <xemul@openvz.org> > --- > > mm/slab.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- a/mm/slab.c > +++ b/mm/slab.c > @@ -4401,7 +4401,7 @@ static void show_symbol(struct seq_file *m, unsigned long address) > > static int leaks_show(struct seq_file *m, void *p) > { > - struct kmem_cache *cachep = p; > + struct kmem_cache *cachep = list_entry(p, struct kmem_cache, next); > struct slab *slabp; > struct kmem_list3 *l3; > const char *name; > >