From: Eric W. Biederman Date: Mon, 19 Dec 2011 04:05:43 +0000 (-0800) Subject: sysfs: Add s_hash to sysfs_dirent and order directory entries by hash X-Git-Tag: v3.4-rc1~187^2~79 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4e4d6d860b9393c5395ba5920edb5b4c5d43a3a3;p=pandora-kernel.git sysfs: Add s_hash to sysfs_dirent and order directory entries by hash Compute a 31 bit hash of directory entries (that can fit in a signed 32bit off_t) and index the sysfs directory entries by that hash, replacing the per directory indexes by name and by inode. Because we now only use a single rbtree this reduces the size of sysfs_dirent by 2 pointers. Because we have fewer cases to deal with the code is now simpler. For now I use the simple hash that the dcache uses as that is easy to use and seems simple enough. In addition to makeing the code simpler using a hash for the file position in readdir brings sysfs in line with other filesystems that have non-trivial directory structures. Signed-off-by: Eric W. Biederman Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed