All of lore.kernel.org
 help / color / mirror / Atom feed
* make "struct d_cookie" dependable on CONFIG_PROFILING?
@ 2006-01-17 12:27 Marcelo Tosatti
  2006-01-17 15:06 ` Philippe Elie
  0 siblings, 1 reply; 2+ messages in thread
From: Marcelo Tosatti @ 2006-01-17 12:27 UTC (permalink / raw)
  To: linux-kernel; +Cc: levon, Al Viro


Hi,

Is there any good reason for not making "struct dcookie_struct
*d_cookie" dependable on CONFIG_PROFILING? 

Shrinks "struct dentry" from 128 bytes to 124 on x86, allowing
31 objects per slab instead of 30.

John Levon informed me that he had such selection in his
original patches, but was asked but take it off (?).


--- ./fs/dcache.c.orig	2006-01-17 09:52:31.000000000 -0200
+++ ./fs/dcache.c	2006-01-17 09:52:50.000000000 -0200
@@ -743,7 +743,9 @@ struct dentry *d_alloc(struct dentry * p
 	dentry->d_op = NULL;
 	dentry->d_fsdata = NULL;
 	dentry->d_mounted = 0;
+#ifdef CONFIG_PROFILING
 	dentry->d_cookie = NULL;
+#endif
 	INIT_HLIST_NODE(&dentry->d_hash);
 	INIT_LIST_HEAD(&dentry->d_lru);
 	INIT_LIST_HEAD(&dentry->d_subdirs);
--- ./include/linux/dcache.h.orig	2006-01-17 09:54:12.000000000 -0200
+++ ./include/linux/dcache.h	2006-01-17 09:55:26.000000000 -0200
@@ -108,7 +108,9 @@ struct dentry {
 	struct dentry_operations *d_op;
 	struct super_block *d_sb;	/* The root of the dentry tree */
 	void *d_fsdata;			/* fs-specific data */
+#ifdef CONFIG_PROFILING
 	struct dcookie_struct *d_cookie; /* cookie, if any */
+#endif
 	int d_mounted;
 	unsigned char d_iname[DNAME_INLINE_LEN_MIN];	/* small names */
 };

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: make "struct d_cookie" dependable on CONFIG_PROFILING?
  2006-01-17 12:27 make "struct d_cookie" dependable on CONFIG_PROFILING? Marcelo Tosatti
@ 2006-01-17 15:06 ` Philippe Elie
  0 siblings, 0 replies; 2+ messages in thread
From: Philippe Elie @ 2006-01-17 15:06 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: linux-kernel, levon, Al Viro

On Tue, 17 Jan 2006 at 10:27 +0000, Marcelo Tosatti wrote:


> Is there any good reason for not making "struct dcookie_struct
> *d_cookie" dependable on CONFIG_PROFILING? 
> 
> Shrinks "struct dentry" from 128 bytes to 124 on x86, allowing
> 31 objects per slab instead of 30.
> 
> John Levon informed me that he had such selection in his
> original patches, but was asked but take it off (?).

iirc this was seen usefull by other tools than profiler but 
fs/Makefile contains:

obj-$(CONFIG_PROFILING)		+= dcookies.o

and nobody complained agaisnt it.

-- 
regards,
Philippe Elie


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-01-17 15:03 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-17 12:27 make "struct d_cookie" dependable on CONFIG_PROFILING? Marcelo Tosatti
2006-01-17 15:06 ` Philippe Elie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.