Merge branch 'stable-3.2' into pandora-3.2
[pandora-kernel.git] / include / linux / fdtable.h
index 7675da2..8dad10c 100644 (file)
@@ -9,6 +9,7 @@
 #include <linux/compiler.h>
 #include <linux/spinlock.h>
 #include <linux/rcupdate.h>
+#include <linux/nospec.h>
 #include <linux/types.h>
 #include <linux/init.h>
 #include <linux/fs.h>
@@ -115,8 +116,10 @@ static inline struct file * fcheck_files(struct files_struct *files, unsigned in
        struct file * file = NULL;
        struct fdtable *fdt = files_fdtable(files);
 
-       if (fd < fdt->max_fds)
+       if (fd < fdt->max_fds) {
+               fd = array_index_nospec(fd, fdt->max_fds);
                file = rcu_dereference_check_fdtable(files, fdt->fd[fd]);
+       }
        return file;
 }