android_kernel_xiaomi_sm8350/fs/gfs2
Christoph Lameter 50953fe9e0 slab allocators: Remove SLAB_DEBUG_INITIAL flag
I have never seen a use of SLAB_DEBUG_INITIAL.  It is only supported by
SLAB.

I think its purpose was to have a callback after an object has been freed
to verify that the state is the constructor state again?  The callback is
performed before each freeing of an object.

I would think that it is much easier to check the object state manually
before the free.  That also places the check near the code object
manipulation of the object.

Also the SLAB_DEBUG_INITIAL callback is only performed if the kernel was
compiled with SLAB debugging on.  If there would be code in a constructor
handling SLAB_DEBUG_INITIAL then it would have to be conditional on
SLAB_DEBUG otherwise it would just be dead code.  But there is no such code
in the kernel.  I think SLUB_DEBUG_INITIAL is too problematic to make real
use of, difficult to understand and there are easier ways to accomplish the
same effect (i.e.  add debug code before kfree).

There is a related flag SLAB_CTOR_VERIFY that is frequently checked to be
clear in fs inode caches.  Remove the pointless checks (they would even be
pointless without removeal of SLAB_DEBUG_INITIAL) from the fs constructors.

This is the last slab flag that SLUB did not support.  Remove the check for
unimplemented flags from SLUB.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-07 12:12:57 -07:00
..
locking remove "struct subsystem" as it is no longer needed 2007-05-02 18:57:59 -07:00
acl.c
acl.h
bmap.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
bmap.h
daemon.c
daemon.h
dir.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
dir.h [GFS2] Clean up/speed up readdir 2007-02-05 13:37:04 -05:00
eaops.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
eaops.h
eattr.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
eattr.h
gfs2.h
glock.c [GFS2] build fix 2007-03-07 14:03:25 -05:00
glock.h [GFS2] Tidy up glops calls 2007-02-05 13:37:26 -05:00
glops.c [GFS2] Fix bz 229873, alternate test: assertion "!ip->i_inode.i_mapping->nrpages" failed 2007-03-07 14:03:53 -05:00
glops.h
incore.h [GFS2] go_drop_bh is never used, so remove it 2007-03-07 14:02:53 -05:00
inode.c [GFS2] Fix bz 229831, lookup returns wrong inode 2007-03-07 14:01:53 -05:00
inode.h [GFS2] make gfs2_change_nlink_i() static 2007-02-05 13:36:49 -05:00
Kconfig [DLM/GFS2] indent help text 2007-02-05 13:38:20 -05:00
lm.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
lm.h
locking.c
log.c
log.h
lops.c [GFS2] Fix list corruption in lops.c 2007-02-05 13:37:56 -05:00
lops.h
main.c slab allocators: Remove SLAB_DEBUG_INITIAL flag 2007-05-07 12:12:57 -07:00
Makefile
meta_io.c [PATCH] Transform kmem_cache_alloc()+memset(0) -> kmem_cache_zalloc(). 2007-02-11 10:51:27 -08:00
meta_io.h
mount.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
mount.h
ondisk.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_address.c [GFS2] fix hangup when multiple processes are trying to write to the same file 2007-03-07 13:58:02 -05:00
ops_address.h
ops_dentry.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_dentry.h
ops_export.c [GFS2] NFS filehandle check 2007-03-07 13:57:34 -05:00
ops_export.h
ops_file.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_file.h
ops_fstype.c [GFS2] add newline to printk message 2007-03-07 13:57:10 -05:00
ops_fstype.h
ops_inode.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_inode.h [PATCH] mark struct inode_operations const 2 2007-02-12 09:48:46 -08:00
ops_super.c [PATCH] Mark struct super_operations const 2007-02-12 09:48:47 -08:00
ops_super.h [PATCH] Mark struct super_operations const 2007-02-12 09:48:47 -08:00
ops_vm.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_vm.h
quota.c [GFS2] fix locking mistake 2007-03-07 13:56:41 -05:00
quota.h
recovery.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
recovery.h
rgrp.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
rgrp.h
super.c [GFS2] Remove unused variable 2007-03-07 14:02:30 -05:00
super.h
sys.c remove "struct subsystem" as it is no longer needed 2007-05-02 18:57:59 -07:00
sys.h
trans.c
trans.h
util.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
util.h Merge master.kernel.org:/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw 2006-12-07 09:13:20 -08:00