Browse Source

fsnotify: initialize mask in fsnotify_perm

akpm got a warning the fsnotify_mask could be used uninitialized in
fsnotify_perm().  It's not actually possible but his compiler complained
about it.  This patch just initializes it to 0 to shut up the compiler.

Reported-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Eric Paris <eparis@redhat.com>
Eric Paris 15 years ago
parent
commit
fb1cfb88c8
1 changed files with 5 additions and 3 deletions
  1. 5 3
      include/linux/fsnotify.h

+ 5 - 3
include/linux/fsnotify.h

@@ -39,16 +39,18 @@ static inline int fsnotify_perm(struct file *file, int mask)
 {
 {
 	struct path *path = &file->f_path;
 	struct path *path = &file->f_path;
 	struct inode *inode = path->dentry->d_inode;
 	struct inode *inode = path->dentry->d_inode;
-	__u32 fsnotify_mask;
+	__u32 fsnotify_mask = 0;
 
 
 	if (file->f_mode & FMODE_NONOTIFY)
 	if (file->f_mode & FMODE_NONOTIFY)
 		return 0;
 		return 0;
 	if (!(mask & (MAY_READ | MAY_OPEN)))
 	if (!(mask & (MAY_READ | MAY_OPEN)))
 		return 0;
 		return 0;
-	if (mask & MAY_READ)
-		fsnotify_mask = FS_ACCESS_PERM;
 	if (mask & MAY_OPEN)
 	if (mask & MAY_OPEN)
 		fsnotify_mask = FS_OPEN_PERM;
 		fsnotify_mask = FS_OPEN_PERM;
+	else if (mask & MAY_READ)
+		fsnotify_mask = FS_ACCESS_PERM;
+	else
+		BUG();
 
 
 	return fsnotify(inode, fsnotify_mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
 	return fsnotify(inode, fsnotify_mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
 }
 }