summaryrefslogtreecommitdiffstats
path: root/samples
diff options
context:
space:
mode:
authorAlexey Dobriyan <adobriyan@gmail.com>2008-07-26 09:18:28 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2008-08-01 17:25:27 +0200
commit67935df49dae836fa86621861979fafdfd37ae59 (patch)
treef1f50d7e854982b302bc4be7da6bb820032b6294 /samples
parent[PATCH] fix bdev leak in block_dev.c do_open() (diff)
downloadlinux-67935df49dae836fa86621861979fafdfd37ae59.tar.xz
linux-67935df49dae836fa86621861979fafdfd37ae59.zip
[PATCH 1/2] proc: fix inode number bogorithmetic
Id which proc gets from IDR for inode number and id which proc removes from IDR do not match. E.g. 0x11a transforms into 0x8000011a. Which stayed unnoticed for a long time because, surprise, idr_remove() masks out that high bit before doing anything. All of this due to "| ~MAX_ID_MASK" in release_inode_number(). I still don't understand how it's supposed to work, because "| ~MASK" is not an inversion for "& MAX" operation. So, use just one nice, working addition. Make start offset unsigned int, while I'm at it. It's longness is not used anywhere. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'samples')
0 files changed, 0 insertions, 0 deletions