From 42a660527279112258b35ec840b59d3f4ad9420b Mon Sep 17 00:00:00 2001 From: yangsheng Date: Tue, 15 Apr 2008 15:49:55 +0000 Subject: [PATCH] Branch HEAD b=12652 i=shadow,johann Add FMODE_EXEC flag to SLES10 SP1 series. --- lustre/ChangeLog | 4 +++ .../patches/fmode-exec-2.6-sles10.patch | 36 ++++++++++++++++++++++ lustre/kernel_patches/series/2.6-sles10.series | 1 + 3 files changed, 41 insertions(+) create mode 100644 lustre/kernel_patches/patches/fmode-exec-2.6-sles10.patch diff --git a/lustre/ChangeLog b/lustre/ChangeLog index ad2d945..6daa824 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -13,6 +13,10 @@ tbd Sun Microsystems, Inc. * RHEL 4 and RHEL 5/SLES 10 clients behaves differently on 'cd' to a removed cwd "./" (refer to Bugzilla 14399). +Severity : normal +Bugzilla : 12652 +Description: Add FMODE_EXEC file flag for SLES10 SP1 kernel. + Severity : enhancement Bugzilla : 13397 Description: Update to support 2.6.22.14 vanilla kernel. diff --git a/lustre/kernel_patches/patches/fmode-exec-2.6-sles10.patch b/lustre/kernel_patches/patches/fmode-exec-2.6-sles10.patch new file mode 100644 index 0000000..8ba560c --- /dev/null +++ b/lustre/kernel_patches/patches/fmode-exec-2.6-sles10.patch @@ -0,0 +1,36 @@ +Index: LINUX-SRC-TREE/include/linux/fs.h +=================================================================== +--- LINUX-SRC-TREE.orig/include/linux/fs.h ++++ LINUX-SRC-TREE/include/linux/fs.h +@@ -61,6 +61,7 @@ extern int dir_notify_enable; + + #define FMODE_READ 1 + #define FMODE_WRITE 2 ++#define FMODE_EXEC 16 + + /* Internal kernel extensions */ + #define FMODE_LSEEK 4 +Index: LINUX-SRC-TREE/fs/exec.c +=================================================================== +--- LINUX-SRC-TREE.orig/fs/exec.c ++++ LINUX-SRC-TREE/fs/exec.c +@@ -129,7 +129,8 @@ asmlinkage long sys_uselib(const char __ + struct nameidata nd; + int error; + +- error = __user_path_lookup_open(library, LOOKUP_FOLLOW, &nd, FMODE_READ); ++ error = __user_path_lookup_open(library, LOOKUP_FOLLOW, &nd, ++ FMODE_READ | FMODE_EXEC); + if (error) + goto out; + +@@ -481,7 +483,8 @@ struct file *open_exec(const char *name) + int err; + struct file *file; + +- err = path_lookup_open(AT_FDCWD, name, LOOKUP_FOLLOW, &nd, FMODE_READ); ++ err = path_lookup_open(AT_FDCWD, name, LOOKUP_FOLLOW, &nd, ++ FMODE_READ | FMODE_EXEC); + file = ERR_PTR(err); + + if (!err) { diff --git a/lustre/kernel_patches/series/2.6-sles10.series b/lustre/kernel_patches/series/2.6-sles10.series index b708c0f..72adc21 100644 --- a/lustre/kernel_patches/series/2.6-sles10.series +++ b/lustre/kernel_patches/series/2.6-sles10.series @@ -13,3 +13,4 @@ i_filter_data.patch jbd-journal-chksum-2.6-sles10.patch proc-sleep-2.6.16-sles10.patch export-nr_free_buffer_pages.patch +fmode-exec-2.6-sles10.patch -- 1.8.3.1