Messages in this thread |  | | From | Arnd Bergmann <> | | Subject | Re: [RFC] [PATCH 1/8] inode_diet: Replace inode.u.generic_ip with inode.i_private | | Date | Tue, 20 Jun 2006 15:53:23 +0200 |
| |
On Tuesday 20 June 2006 14:34, Steven Whitehouse wrote: > > Yes, although I'm not sure that it would be as significant as the memory > saved by removing the pointer bearing in mind the relative numbers of > the structures that you'd expect to see in a "normal" working system. We > could also try and reduce this by creating a special inode cache which > would be shared by all filesystems which did still need just struct > inode + private pointer for example.
To take this further, you could indeed split struct inode into a smaller struct that has all the important parts and a derived struct that has i_private as well as other members that are used only by a minority of file systems.
Alternatively, it might be possible to stuff i_private into the same union as i_pipe, i_cdev and i_bdev. The rationale here being that a file system implementing different file types already is complex enough that you would normally want your own alloc_inode for a derived struct. The simple file systems OTOH normally only support regular files, and sometimes directories.
Arnd <>< - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |