diff options
| author | Andrew Morton <akpm@digeo.com> | 2002-12-14 03:17:21 -0800 |
|---|---|---|
| committer | Jaroslav Kysela <perex@suse.cz> | 2002-12-14 03:17:21 -0800 |
| commit | 7404e32c0f2dbd8cbca0126d7a46099ff1c4d57d (patch) | |
| tree | d21f20e290843e810f0b5fd9dd33430c78d64a69 /include/linux/fs.h | |
| parent | 2134c9371b7612e0ee3ab449daa8b0e12ccf2df8 (diff) | |
[PATCH] handle overflows in radix_tree_gang_lookup()
Fix a radix-tree bug spotted by Vladimir Saveliev <vs@namesys.com>.
Each step in the radix tree spans six address bits. So a height=6 tree
spans 36-bits worth of nodes.
On 32-bit machines radix_tree_gang_lookup() doesn't handle this right -
at the 12TB mark it wraps back to zero, and returns pages at quite
wrong indices.
The patch fixes all that up, and tidies a couple of things.
A user-space test harness was developed so that the code can be sanely
tested. It is at
http://www.zip.com.au/~akpm/linux/patches/stuff/rtth.tar.gz
Diffstat (limited to 'include/linux/fs.h')
0 files changed, 0 insertions, 0 deletions
