mirror of
https://gitee.com/openharmony/kernel_linux
synced 2025-02-13 22:42:58 +00:00
[PATCH] Document idr_get_new_above() semantics, update inotify
There is an off by one problem with idr_get_new_above. The comment and function name suggest that it will return an id > starting_id, but it actually returned an id >= starting_id, and kernel callers other than inotify treated it as such. The patch below fixes the comment, and fixes inotifys usage. The function name still doesn't match the behaviour, but it never did. Signed-off-by: John McCutchan <ttb@tentacle.dhs.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
755528c860
commit
7c657f2f25
@ -353,7 +353,7 @@ static int inotify_dev_get_wd(struct inotify_device *dev,
|
||||
do {
|
||||
if (unlikely(!idr_pre_get(&dev->idr, GFP_KERNEL)))
|
||||
return -ENOSPC;
|
||||
ret = idr_get_new_above(&dev->idr, watch, dev->last_wd, &watch->wd);
|
||||
ret = idr_get_new_above(&dev->idr, watch, dev->last_wd+1, &watch->wd);
|
||||
} while (ret == -EAGAIN);
|
||||
|
||||
return ret;
|
||||
|
Loading…
x
Reference in New Issue
Block a user