summaryrefslogtreecommitdiff
path: root/fs/notify
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2024-05-20 22:43:58 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2024-05-20 22:43:58 +0300
commitd0e71e23ec5e71655e1a046c9be6f35f78b1d6bb (patch)
treea380dcf5972943d69d7e16f68fcc4312027bcc16 /fs/notify
parent5af9d1cf3906171de28f1c395264f29088bdd267 (diff)
downloadlinux-d0e71e23ec5e71655e1a046c9be6f35f78b1d6bb.tar.xz
Revert "fanotify: remove unneeded sub-zero check for unsigned value"
This reverts commit e6595224464b692ddae193d783402130d1625147. These kinds of patches are only making the code worse. Compilers don't care about the unnecessary check, but removing it makes the code less obvious to a human. The declaration of 'len' is more than 80 lines earlier, so a human won't easily see that 'len' is of an unsigned type, so to a human the range check that checks against zero is much more explicit and obvious. Any tool that complains about a range check like this just because the variable is unsigned is actively detrimental, and should be ignored. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/notify')
-rw-r--r--fs/notify/fanotify/fanotify_user.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c
index 483a6a1255fb..9ec313e9f6e1 100644
--- a/fs/notify/fanotify/fanotify_user.c
+++ b/fs/notify/fanotify/fanotify_user.c
@@ -502,7 +502,7 @@ static int copy_fid_info_to_user(__kernel_fsid_t *fsid, struct fanotify_fh *fh,
}
/* Pad with 0's */
- WARN_ON_ONCE(len >= FANOTIFY_EVENT_ALIGN);
+ WARN_ON_ONCE(len < 0 || len >= FANOTIFY_EVENT_ALIGN);
if (len > 0 && clear_user(buf, len))
return -EFAULT;