Whamcloud - gitweb
git://git.whamcloud.com
/
fs
/
lustre-release.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
6f99817
)
- refreshed version of the patch
author
alex
<alex>
Mon, 12 Jan 2004 19:39:54 +0000
(19:39 +0000)
committer
alex
<alex>
Mon, 12 Jan 2004 19:39:54 +0000
(19:39 +0000)
lustre/kernel_patches/patches/vfs_intent-2.4.21-suse2.patch
patch
|
blob
|
history
diff --git
a/lustre/kernel_patches/patches/vfs_intent-2.4.21-suse2.patch
b/lustre/kernel_patches/patches/vfs_intent-2.4.21-suse2.patch
index
cfe87c5
..
1e78f10
100644
(file)
--- a/
lustre/kernel_patches/patches/vfs_intent-2.4.21-suse2.patch
+++ b/
lustre/kernel_patches/patches/vfs_intent-2.4.21-suse2.patch
@@
-121,7
+121,7
@@
Index: linux-2.4.21-suse2/fs/exec.c
Index: linux-2.4.21-suse2/fs/namei.c
===================================================================
--- linux-2.4.21-suse2.orig/fs/namei.c 2004-01-10 12:06:40.000000000 +0300
Index: linux-2.4.21-suse2/fs/namei.c
===================================================================
--- linux-2.4.21-suse2.orig/fs/namei.c 2004-01-10 12:06:40.000000000 +0300
-+++ linux-2.4.21-suse2/fs/namei.c 2004-01-10 12:
44:04
.000000000 +0300
++++ linux-2.4.21-suse2/fs/namei.c 2004-01-10 12:
55:09
.000000000 +0300
@@ -94,6 +94,13 @@
* XEmacs seems to be relying on it...
*/
@@ -94,6 +94,13 @@
* XEmacs seems to be relying on it...
*/
@@
-335,7
+335,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
path_release(nd);
return_err:
return err;
path_release(nd);
return_err:
return err;
-@@ -663,
7 +721,7
@@
+@@ -663,
13 +721,13
@@
int link_path_walk(const char * name, struct nameidata *nd)
{
int link_path_walk(const char * name, struct nameidata *nd)
{
@@
-344,19
+344,27
@@
Index: linux-2.4.21-suse2/fs/namei.c
}
static inline int __path_walk(const char * name, struct nameidata *nd)
}
static inline int __path_walk(const char * name, struct nameidata *nd)
-@@ -677,6 +735,11 @@
+ {
+ current->total_link_count = 0;
+- return __link_path_walk(name, nd);
++ return __link_path_walk_it(name, nd, NULL);
+ }
+
+ int path_walk(const char * name, struct nameidata *nd)
+@@ -677,6 +735,12 @@
return __path_walk(name, nd);
}
+int path_walk_it(const char * name, struct nameidata *nd, struct lookup_intent *it)
+{
return __path_walk(name, nd);
}
+int path_walk_it(const char * name, struct nameidata *nd, struct lookup_intent *it)
+{
-+ return __path_walk(name, nd, it);
++ current->total_link_count = 0;
++ return __link_path_walk_it(name, nd, it);
+}
+
/* SMP-safe */
/* returns 1 if everything is done */
static int __emul_lookup_dentry(const char *name, struct nameidata *nd)
+}
+
/* SMP-safe */
/* returns 1 if everything is done */
static int __emul_lookup_dentry(const char *name, struct nameidata *nd)
-@@ -759,6 +82
2
,17 @@
+@@ -759,6 +82
3
,17 @@
}
/* SMP-safe */
}
/* SMP-safe */
@@
-374,7
+382,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
int path_lookup(const char *path, unsigned flags, struct nameidata *nd)
{
int error = 0;
int path_lookup(const char *path, unsigned flags, struct nameidata *nd)
{
int error = 0;
-@@ -773,6 +84
7
,7 @@
+@@ -773,6 +84
8
,7 @@
{
nd->last_type = LAST_ROOT; /* if there are only slashes... */
nd->flags = flags;
{
nd->last_type = LAST_ROOT; /* if there are only slashes... */
nd->flags = flags;
@@
-382,7
+390,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
if (*name=='/')
return walk_init_root(name,nd);
read_lock(¤t->fs->lock);
if (*name=='/')
return walk_init_root(name,nd);
read_lock(¤t->fs->lock);
-@@ -787,7 +86
2
,8 @@
+@@ -787,7 +86
3
,8 @@
* needs parent already locked. Doesn't follow mounts.
* SMP-safe.
*/
* needs parent already locked. Doesn't follow mounts.
* SMP-safe.
*/
@@
-392,7
+400,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
{
struct dentry * dentry;
struct inode *inode;
{
struct dentry * dentry;
struct inode *inode;
-@@ -810,13 +88
6
,16 @@
+@@ -810,13 +88
7
,16 @@
goto out;
}
goto out;
}
@@
-410,7
+418,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
dentry = inode->i_op->lookup(inode, new);
unlock_kernel();
if (!dentry)
dentry = inode->i_op->lookup(inode, new);
unlock_kernel();
if (!dentry)
-@@ -828,6 +90
7
,12 @@
+@@ -828,6 +90
8
,12 @@
return dentry;
}
return dentry;
}
@@
-423,7
+431,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
/* SMP-safe */
struct dentry * lookup_one_len(const char * name, struct dentry * base, int len)
{
/* SMP-safe */
struct dentry * lookup_one_len(const char * name, struct dentry * base, int len)
{
-@@ -849,7 +93
4
,7 @@
+@@ -849,7 +93
5
,7 @@
}
this.hash = end_name_hash(hash);
}
this.hash = end_name_hash(hash);
@@
-432,7
+440,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
access:
return ERR_PTR(-EACCES);
}
access:
return ERR_PTR(-EACCES);
}
-@@ -880,6 +96
5
,23 @@
+@@ -880,6 +96
6
,23 @@
return err;
}
return err;
}
@@
-456,7
+464,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
/*
* It's inline, so penalty for filesystems that don't use sticky bit is
* minimal.
/*
* It's inline, so penalty for filesystems that don't use sticky bit is
* minimal.
-@@ -977,7 +10
79
,8 @@
+@@ -977,7 +10
80
,8 @@
return retval;
}
return retval;
}
@@
-466,7
+474,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
{
int error;
{
int error;
-@@ -990,12 +109
3
,15 @@
+@@ -990,12 +109
4
,15 @@
goto exit_lock;
error = -EACCES; /* shouldn't it be ENOSYS? */
goto exit_lock;
error = -EACCES; /* shouldn't it be ENOSYS? */
@@
-484,7
+492,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
unlock_kernel();
exit_lock:
up(&dir->i_zombie);
unlock_kernel();
exit_lock:
up(&dir->i_zombie);
-@@ -1004,6 +111
0
,11 @@
+@@ -1004,6 +111
1
,11 @@
return error;
}
return error;
}
@@
-496,7
+504,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
/*
* open_namei()
*
/*
* open_namei()
*
-@@ -1018,7 +11
29
,8 @@
+@@ -1018,7 +11
30
,8 @@
* for symlinks (where the permissions are checked later).
* SMP-safe
*/
* for symlinks (where the permissions are checked later).
* SMP-safe
*/
@@
-506,7
+514,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
{
int acc_mode, error = 0;
struct inode *inode;
{
int acc_mode, error = 0;
struct inode *inode;
-@@ -1028,11 +114
0
,14 @@
+@@ -1028,11 +114
1
,14 @@
acc_mode = ACC_MODE(flag);
acc_mode = ACC_MODE(flag);
@@
-522,7
+530,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
if (error)
return error;
dentry = nd->dentry;
if (error)
return error;
dentry = nd->dentry;
-@@ -1042,6 +115
7
,10 @@
+@@ -1042,6 +115
8
,10 @@
/*
* Create - we need to know the parent.
*/
/*
* Create - we need to know the parent.
*/
@@
-533,7
+541,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = path_lookup(pathname, LOOKUP_PARENT, nd);
if (error)
return error;
error = path_lookup(pathname, LOOKUP_PARENT, nd);
if (error)
return error;
-@@ -1057,7 +117
6
,7 @@
+@@ -1057,7 +117
7
,7 @@
dir = nd->dentry;
down(&dir->d_inode->i_sem);
dir = nd->dentry;
down(&dir->d_inode->i_sem);
@@
-542,7
+550,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
do_last:
error = PTR_ERR(dentry);
do_last:
error = PTR_ERR(dentry);
-@@ -1066,11 +118
5
,12 @@
+@@ -1066,11 +118
6
,12 @@
goto exit;
}
goto exit;
}
@@
-556,7
+564,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
up(&dir->d_inode->i_sem);
#ifndef DENTRY_WASTE_RAM
if (error)
up(&dir->d_inode->i_sem);
#ifndef DENTRY_WASTE_RAM
if (error)
-@@ -1178,7 +129
8
,7 @@
+@@ -1178,7 +129
9
,7 @@
if (!error) {
DQUOT_INIT(inode);
if (!error) {
DQUOT_INIT(inode);
@@
-565,7
+573,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
}
put_write_access(inode);
if (error)
}
put_write_access(inode);
if (error)
-@@ -1190,8 +131
0
,10 @@
+@@ -1190,8 +131
1
,10 @@
return 0;
exit_dput:
return 0;
exit_dput:
@@
-576,7
+584,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
path_release(nd);
return error;
path_release(nd);
return error;
-@@ -1210,7 +133
2
,10 @@
+@@ -1210,7 +133
3
,10 @@
* are done. Procfs-like symlinks just set LAST_BIND.
*/
UPDATE_ATIME(dentry->d_inode);
* are done. Procfs-like symlinks just set LAST_BIND.
*/
UPDATE_ATIME(dentry->d_inode);
@@
-587,7
+595,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
dput(dentry);
if (error)
return error;
dput(dentry);
if (error)
return error;
-@@ -1232,13 +135
7
,20 @@
+@@ -1232,13 +135
8
,20 @@
}
dir = nd->dentry;
down(&dir->d_inode->i_sem);
}
dir = nd->dentry;
down(&dir->d_inode->i_sem);
@@
-610,7
+618,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
{
struct dentry *dentry;
{
struct dentry *dentry;
-@@ -1246,7 +137
8
,7 @@
+@@ -1246,7 +137
9
,7 @@
dentry = ERR_PTR(-EEXIST);
if (nd->last_type != LAST_NORM)
goto fail;
dentry = ERR_PTR(-EEXIST);
if (nd->last_type != LAST_NORM)
goto fail;
@@
-619,7
+627,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
if (IS_ERR(dentry))
goto fail;
if (!is_dir && nd->last.name[nd->last.len] && !dentry->d_inode)
if (IS_ERR(dentry))
goto fail;
if (!is_dir && nd->last.name[nd->last.len] && !dentry->d_inode)
-@@ -1302,7 +143
4
,16 @@
+@@ -1302,7 +143
5
,16 @@
error = path_lookup(tmp, LOOKUP_PARENT, &nd);
if (error)
goto out;
error = path_lookup(tmp, LOOKUP_PARENT, &nd);
if (error)
goto out;
@@
-637,7
+645,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = PTR_ERR(dentry);
if (!IS_POSIXACL(nd.dentry->d_inode))
error = PTR_ERR(dentry);
if (!IS_POSIXACL(nd.dentry->d_inode))
-@@ -1324,6 +146
5
,7 @@
+@@ -1324,6 +146
6
,7 @@
dput(dentry);
}
up(&nd.dentry->d_inode->i_sem);
dput(dentry);
}
up(&nd.dentry->d_inode->i_sem);
@@
-645,7
+653,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
path_release(&nd);
out:
putname(tmp);
path_release(&nd);
out:
putname(tmp);
-@@ -1371,7 +151
3
,14 @@
+@@ -1371,7 +151
4
,14 @@
error = path_lookup(tmp, LOOKUP_PARENT, &nd);
if (error)
goto out;
error = path_lookup(tmp, LOOKUP_PARENT, &nd);
if (error)
goto out;
@@
-661,7
+669,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = PTR_ERR(dentry);
if (!IS_ERR(dentry)) {
if (!IS_POSIXACL(nd.dentry->d_inode))
error = PTR_ERR(dentry);
if (!IS_ERR(dentry)) {
if (!IS_POSIXACL(nd.dentry->d_inode))
-@@ -1380,6 +15
29
,7 @@
+@@ -1380,6 +15
30
,7 @@
dput(dentry);
}
up(&nd.dentry->d_inode->i_sem);
dput(dentry);
}
up(&nd.dentry->d_inode->i_sem);
@@
-669,7
+677,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
path_release(&nd);
out:
putname(tmp);
path_release(&nd);
out:
putname(tmp);
-@@ -1480,8 +163
0
,16 @@
+@@ -1480,8 +163
1
,16 @@
error = -EBUSY;
goto exit1;
}
error = -EBUSY;
goto exit1;
}
@@
-687,7
+695,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = PTR_ERR(dentry);
if (!IS_ERR(dentry)) {
error = vfs_rmdir(nd.dentry->d_inode, dentry);
error = PTR_ERR(dentry);
if (!IS_ERR(dentry)) {
error = vfs_rmdir(nd.dentry->d_inode, dentry);
-@@ -1539,8 +169
7
,15 @@
+@@ -1539,8 +169
8
,15 @@
error = -EISDIR;
if (nd.last_type != LAST_NORM)
goto exit1;
error = -EISDIR;
if (nd.last_type != LAST_NORM)
goto exit1;
@@
-704,7
+712,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = PTR_ERR(dentry);
if (!IS_ERR(dentry)) {
/* Why not before? Because we want correct error value */
error = PTR_ERR(dentry);
if (!IS_ERR(dentry)) {
/* Why not before? Because we want correct error value */
-@@ -1607,15 +177
2
,23 @@
+@@ -1607,15 +177
3
,23 @@
error = path_lookup(to, LOOKUP_PARENT, &nd);
if (error)
goto out;
error = path_lookup(to, LOOKUP_PARENT, &nd);
if (error)
goto out;
@@
-730,7
+738,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
putname(to);
}
putname(from);
putname(to);
}
putname(from);
-@@ -1691,7 +186
4
,14 @@
+@@ -1691,7 +186
5
,14 @@
error = -EXDEV;
if (old_nd.mnt != nd.mnt)
goto out_release;
error = -EXDEV;
if (old_nd.mnt != nd.mnt)
goto out_release;
@@
-746,7
+754,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = PTR_ERR(new_dentry);
if (!IS_ERR(new_dentry)) {
error = vfs_link(old_nd.dentry, nd.dentry->d_inode, new_dentry);
error = PTR_ERR(new_dentry);
if (!IS_ERR(new_dentry)) {
error = vfs_link(old_nd.dentry, nd.dentry->d_inode, new_dentry);
-@@ -1735,7 +191
5
,7 @@
+@@ -1735,7 +191
6
,7 @@
* locking].
*/
int vfs_rename_dir(struct inode *old_dir, struct dentry *old_dentry,
* locking].
*/
int vfs_rename_dir(struct inode *old_dir, struct dentry *old_dentry,
@@
-755,7
+763,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
{
int error;
struct inode *target;
{
int error;
struct inode *target;
-@@ -1814,7 +199
4
,7 @@
+@@ -1814,7 +199
5
,7 @@
}
int vfs_rename_other(struct inode *old_dir, struct dentry *old_dentry,
}
int vfs_rename_other(struct inode *old_dir, struct dentry *old_dentry,
@@
-764,7
+772,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
{
int error;
{
int error;
-@@ -1902,9 +208
2
,18 @@
+@@ -1902,9 +208
3
,18 @@
if (newnd.last_type != LAST_NORM)
goto exit2;
if (newnd.last_type != LAST_NORM)
goto exit2;
@@
-784,7
+792,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
error = PTR_ERR(old_dentry);
if (IS_ERR(old_dentry))
goto exit3;
error = PTR_ERR(old_dentry);
if (IS_ERR(old_dentry))
goto exit3;
-@@ -1920,16 +21
09
,16 @@
+@@ -1920,16 +21
10
,16 @@
if (newnd.last.name[newnd.last.len])
goto exit4;
}
if (newnd.last.name[newnd.last.len])
goto exit4;
}
@@
-803,7
+811,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
dput(new_dentry);
exit4:
dput(old_dentry);
dput(new_dentry);
exit4:
dput(old_dentry);
-@@ -1980,20 +21
69
,26 @@
+@@ -1980,20 +21
70
,26 @@
}
static inline int
}
static inline int
@@
-832,7
+840,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
out:
if (current->link_count || res || nd->last_type!=LAST_NORM)
return res;
out:
if (current->link_count || res || nd->last_type!=LAST_NORM)
return res;
-@@ -2017,7 +221
2
,13 @@
+@@ -2017,7 +221
3
,13 @@
int vfs_follow_link(struct nameidata *nd, const char *link)
{
int vfs_follow_link(struct nameidata *nd, const char *link)
{
@@
-847,7
+855,7
@@
Index: linux-2.4.21-suse2/fs/namei.c
}
/* get the link contents into pagecache */
}
/* get the link contents into pagecache */
-@@ -2059,7 +226
0
,7 @@
+@@ -2059,7 +226
1
,7 @@
{
struct page *page = NULL;
char *s = page_getlink(dentry, &page);
{
struct page *page = NULL;
char *s = page_getlink(dentry, &page);
@@
-976,7
+984,7
@@
Index: linux-2.4.21-suse2/fs/namespace.c
Index: linux-2.4.21-suse2/fs/open.c
===================================================================
--- linux-2.4.21-suse2.orig/fs/open.c 2003-10-28 21:33:59.000000000 +0300
Index: linux-2.4.21-suse2/fs/open.c
===================================================================
--- linux-2.4.21-suse2.orig/fs/open.c 2003-10-28 21:33:59.000000000 +0300
-+++ linux-2.4.21-suse2/fs/open.c 2004-01-10 12:
15:41
.000000000 +0300
++++ linux-2.4.21-suse2/fs/open.c 2004-01-10 12:
55:39
.000000000 +0300
@@ -19,6 +19,8 @@
#include <asm/uaccess.h>
@@ -19,6 +19,8 @@
#include <asm/uaccess.h>
@@
-1543,7
+1551,7
@@
Index: linux-2.4.21-suse2/fs/stat.c
Index: linux-2.4.21-suse2/include/linux/dcache.h
===================================================================
--- linux-2.4.21-suse2.orig/include/linux/dcache.h 2003-11-11 03:44:28.000000000 +0300
Index: linux-2.4.21-suse2/include/linux/dcache.h
===================================================================
--- linux-2.4.21-suse2.orig/include/linux/dcache.h 2003-11-11 03:44:28.000000000 +0300
-+++ linux-2.4.21-suse2/include/linux/dcache.h 2004-01-10 12:
15:41
.000000000 +0300
++++ linux-2.4.21-suse2/include/linux/dcache.h 2004-01-10 12:
48:36
.000000000 +0300
@@ -7,6 +7,51 @@
#include <linux/gdb.h>
#include <linux/mount.h>
@@ -7,6 +7,51 @@
#include <linux/gdb.h>
#include <linux/mount.h>
@@
-1630,7
+1638,7
@@
Index: linux-2.4.21-suse2/include/linux/dcache.h
Index: linux-2.4.21-suse2/include/linux/fs.h
===================================================================
--- linux-2.4.21-suse2.orig/include/linux/fs.h 2004-01-10 11:28:05.000000000 +0300
Index: linux-2.4.21-suse2/include/linux/fs.h
===================================================================
--- linux-2.4.21-suse2.orig/include/linux/fs.h 2004-01-10 11:28:05.000000000 +0300
-+++ linux-2.4.21-suse2/include/linux/fs.h 2004-01-10 12:
15:41
.000000000 +0300
++++ linux-2.4.21-suse2/include/linux/fs.h 2004-01-10 12:
48:36
.000000000 +0300
@@ -74,6 +74,7 @@
#define FMODE_READ 1
@@ -74,6 +74,7 @@
#define FMODE_READ 1