Hello community,
here is the log from the commit of package kernel-source
checked in at Fri Aug 31 16:55:08 CEST 2007.
--------
--- kernel-source/kernel-bigsmp.changes 2007-08-31 15:26:49.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/kernel-bigsmp.changes 2007-08-31 16:09:37.021219000 +0200
@@ -1,0 +2,6 @@
+Fri Aug 31 16:05:20 CEST 2007 - jeffm@suse.de
+
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
+
+-------------------------------------------------------------------
kernel-debug.changes: same change
kernel-default.changes: same change
kernel-dummy.changes: same change
kernel-kdump.changes: same change
kernel-ppc64.changes: same change
kernel-rt.changes: same change
kernel-rt_debug.changes: same change
kernel-s390.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-vanilla.changes: same change
kernel-xen.changes: same change
kernel-xenpae.changes: same change
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-bigsmp.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:22.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:22.000000000 +0200
@@ -39,7 +39,7 @@
%endif
Summary: Kernel with PAE Support
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -170,7 +170,7 @@
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -561,6 +561,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-dummy.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:23.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:23.000000000 +0200
@@ -15,7 +15,7 @@
URL: http://www.kernel.org/
Summary: Internal dummy package for synchronizing release numbers
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: off
@@ -28,7 +28,7 @@
--------
Andreas Gruenbacher
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%install
@@ -41,6 +41,9 @@
/etc/dummy
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-kdump.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:23.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:23.000000000 +0200
@@ -39,7 +39,7 @@
%endif
Summary: kernel for kdump
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -174,7 +174,7 @@
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -565,6 +565,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-ppc64.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:23.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:23.000000000 +0200
@@ -38,7 +38,7 @@
%endif
Summary: Kernel for ppc64 Systems
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later, LGPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -186,7 +186,7 @@
Tom Gall
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -577,6 +577,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-rt_debug.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:23.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:23.000000000 +0200
@@ -39,7 +39,7 @@
%endif
Summary: A Debug Version of the Kernel
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -172,7 +172,7 @@
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -563,6 +563,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-rt.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:24.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:24.000000000 +0200
@@ -39,7 +39,7 @@
%endif
Summary: The Realtime Linux Kernel
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -188,7 +188,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -579,6 +579,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-s390.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:24.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:24.000000000 +0200
@@ -39,7 +39,7 @@
%endif
Summary: The Standard Kernel
Version: 2.6.22.5
-Release: 4
+Release: 5
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -168,7 +168,7 @@
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -559,6 +559,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:24.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:24.000000000 +0200
@@ -22,7 +22,7 @@
%endif
Summary: The Linux Kernel Sources
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: Development/Sources
Autoreqprov: off
@@ -106,7 +106,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -281,6 +281,9 @@
%files -f kernel-source.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:24.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:24.000000000 +0200
@@ -21,7 +21,7 @@
%endif
Summary: Kernel Symbol Versions (modversions)
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: Development/Sources
Autoreqprov: off
@@ -96,7 +96,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
echo "Architecture symbol(s):" %symbols
@@ -150,6 +150,9 @@
/lib/modules/*/*
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.a16508/_old 2007-08-31 16:53:24.000000000 +0200
+++ /var/tmp/diff_new_pack.a16508/_new 2007-08-31 16:53:24.000000000 +0200
@@ -39,7 +39,7 @@
%endif
Summary: The Standard Kernel - without any SUSE patches
Version: 2.6.22.5
-Release: 6
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Autoreqprov: on
@@ -188,7 +188,7 @@
-Source Timestamp: 2007/08/31 06:42:36 UTC
+Source Timestamp: 2007/08/31 14:06:44 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -579,6 +579,9 @@
%files -f kernel.files
%changelog
+* Fri Aug 31 2007 - jeffm@suse.de
+- Applied rest of fix for not dirtying inode after changing i_mode
+ with no old ACL on reiserfs (306621).
* Fri Aug 31 2007 - jblunck@suse.de
- rpm/post.sh: don't execute mkinitrd and update-bootloader when
mkinitrd isn't installed (like for kernel-syms in the buildservice)
kernel-xenpae.spec: same change
kernel-xen.spec: same change
++++++ build-source-timestamp ++++++
--- kernel-source/build-source-timestamp 2007-08-31 15:26:44.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/build-source-timestamp 2007-08-31 16:09:30.942301000 +0200
@@ -1 +1 @@
-2007/08/31 06:42:36 UTC
+2007/08/31 14:06:44 UTC
++++++ config.tar.bz2 ++++++
++++++ kabi.tar.bz2 ++++++
++++++ needed_space_in_mb ++++++
--- kernel-source/needed_space_in_mb 2007-08-31 15:58:46.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/needed_space_in_mb 2007-08-31 16:10:01.031180000 +0200
@@ -1 +1 @@
-6000
+6144
++++++ novell-kmp.tar.bz2 ++++++
++++++ patches.apparmor.tar.bz2 ++++++
++++++ patches.arch.tar.bz2 ++++++
++++++ patches.drivers.tar.bz2 ++++++
++++++ patches.fixes.tar.bz2 ++++++
++++++ patches.kernel.org.tar.bz2 ++++++
++++++ patches.rpmify.tar.bz2 ++++++
++++++ patches.rt.tar.bz2 ++++++
++++++ patches.suse.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/reiserfs-journaled-xattrs.diff new/patches.suse/reiserfs-journaled-xattrs.diff
--- old/patches.suse/reiserfs-journaled-xattrs.diff 2007-08-30 17:04:44.000000000 +0200
+++ new/patches.suse/reiserfs-journaled-xattrs.diff 2007-08-31 16:08:23.000000000 +0200
@@ -20,15 +20,15 @@
--
fs/reiserfs/inode.c | 3 -
fs/reiserfs/namei.c | 14 +----
- fs/reiserfs/xattr.c | 52 +++++++++++++++++++-
+ fs/reiserfs/xattr.c | 56 ++++++++++++++++++----
fs/reiserfs/xattr_acl.c | 104 +++++++++++++++++++++++++++++++----------
include/linux/reiserfs_acl.h | 3 -
include/linux/reiserfs_fs.h | 4 +
- include/linux/reiserfs_xattr.h | 28 +++++++++++
- 7 files changed, 168 insertions(+), 40 deletions(-)
+ include/linux/reiserfs_xattr.h | 29 +++++++++++
+ 7 files changed, 165 insertions(+), 48 deletions(-)
---- a/fs/reiserfs/inode.c 2007-08-30 10:15:24.000000000 -0400
-+++ b/fs/reiserfs/inode.c 2007-08-30 10:15:28.000000000 -0400
+--- a/fs/reiserfs/inode.c 2007-08-31 09:41:03.000000000 -0400
++++ b/fs/reiserfs/inode.c 2007-08-31 09:47:02.000000000 -0400
@@ -1920,9 +1920,8 @@ int reiserfs_new_inode(struct reiserfs_t
goto out_inserted_sd;
}
@@ -40,8 +40,8 @@
if (retval) {
err = retval;
reiserfs_check_path(&path_to_key);
---- a/fs/reiserfs/namei.c 2007-08-30 10:14:55.000000000 -0400
-+++ b/fs/reiserfs/namei.c 2007-08-30 10:15:28.000000000 -0400
+--- a/fs/reiserfs/namei.c 2007-08-31 09:34:01.000000000 -0400
++++ b/fs/reiserfs/namei.c 2007-08-31 09:47:02.000000000 -0400
@@ -606,15 +606,13 @@ static int reiserfs_create(struct inode
2 * (REISERFS_QUOTA_INIT_BLOCKS(dir->i_sb) +
REISERFS_QUOTA_TRANS_BLOCKS(dir->i_sb));
@@ -104,28 +104,35 @@
retval = journal_begin(&th, parent_dir->i_sb, jbegin_count);
if (retval) {
drop_new_inode(inode);
---- a/fs/reiserfs/xattr.c 2007-08-30 10:15:24.000000000 -0400
-+++ b/fs/reiserfs/xattr.c 2007-08-30 10:15:30.000000000 -0400
+--- a/fs/reiserfs/xattr.c 2007-08-31 09:41:03.000000000 -0400
++++ b/fs/reiserfs/xattr.c 2007-08-31 09:47:02.000000000 -0400
@@ -416,8 +416,9 @@ static inline __u32 xattr_hash(const cha
* inode->i_mutex: down
*/
int
--reiserfs_xattr_set(struct inode *inode, const char *name, const void *buffer,
-- size_t buffer_size, int flags)
+-__reiserfs_xattr_set(struct inode *inode, const char *name, const void *buffer,
+- size_t buffer_size, int flags)
+reiserfs_xattr_set_handle(struct reiserfs_transaction_handle *th,
+ struct inode *inode, const char *name,
+ const void *buffer, size_t buffer_size, int flags)
{
int err = 0;
struct file *fp;
-@@ -542,6 +543,36 @@ reiserfs_xattr_set(struct inode *inode,
+@@ -540,14 +541,34 @@ __reiserfs_xattr_set(struct inode *inode
return err;
}
+-int
+-reiserfs_xattr_set(struct inode *inode, const char *name, const void *buffer,
+- size_t buffer_size, int flags)
+/* We need to start a transaction to maintain lock ordering */
+int reiserfs_xattr_set(struct inode *inode, const char *name,
+ const void *buffer, size_t buffer_size, int flags)
-+{
+ {
+- int err = __reiserfs_xattr_set(inode, name, buffer, buffer_size, flags);
+- if (err == -ENODATA)
+- err = 0;
+- return err;
+
+ struct reiserfs_transaction_handle th;
+ int error, error2;
@@ -150,12 +157,10 @@
+ reiserfs_write_unlock(inode->i_sb);
+
+ return error;
-+}
-+
+ }
+
/*
- * inode->i_mutex: down
- */
-@@ -723,11 +754,28 @@ int reiserfs_delete_xattrs(struct inode
+@@ -731,11 +752,28 @@ int reiserfs_delete_xattrs(struct inode
/* Leftovers besides . and .. -- that's not good. */
if (dir->d_inode->i_nlink <= 2) {
@@ -184,8 +189,8 @@
} else {
reiserfs_warning(inode->i_sb, "jdm-20004",
"Couldn't remove all entries in directory");
---- a/fs/reiserfs/xattr_acl.c 2007-08-30 10:14:55.000000000 -0400
-+++ b/fs/reiserfs/xattr_acl.c 2007-08-30 10:15:24.000000000 -0400
+--- a/fs/reiserfs/xattr_acl.c 2007-08-31 09:40:48.000000000 -0400
++++ b/fs/reiserfs/xattr_acl.c 2007-08-31 09:42:02.000000000 -0400
@@ -10,15 +10,17 @@
#include
#include
@@ -244,7 +249,7 @@
return (int)PTR_ERR(value);
}
-- error = reiserfs_xattr_set(inode, name, value, size, 0);
+- error = __reiserfs_xattr_set(inode, name, value, size, 0);
+ error = reiserfs_xattr_set_handle(th, inode, name, value, size, 0);
/*
@@ -363,8 +368,8 @@
posix_acl_release(clone);
return error;
}
---- a/include/linux/reiserfs_acl.h 2007-08-30 10:14:55.000000000 -0400
-+++ b/include/linux/reiserfs_acl.h 2007-08-30 10:15:24.000000000 -0400
+--- a/include/linux/reiserfs_acl.h 2007-08-31 09:34:01.000000000 -0400
++++ b/include/linux/reiserfs_acl.h 2007-08-31 09:41:34.000000000 -0400
@@ -49,7 +49,8 @@ static inline int reiserfs_acl_count(siz
#ifdef CONFIG_REISERFS_FS_POSIX_ACL
struct posix_acl *reiserfs_get_acl(struct inode *inode, int type);
@@ -375,8 +380,8 @@
struct inode *inode);
int reiserfs_cache_default_acl(struct inode *dir);
extern struct xattr_handler reiserfs_posix_acl_default_handler;
---- a/include/linux/reiserfs_fs.h 2007-08-30 10:15:24.000000000 -0400
-+++ b/include/linux/reiserfs_fs.h 2007-08-30 10:15:28.000000000 -0400
+--- a/include/linux/reiserfs_fs.h 2007-08-31 09:41:03.000000000 -0400
++++ b/include/linux/reiserfs_fs.h 2007-08-31 09:47:02.000000000 -0400
@@ -1600,6 +1600,10 @@ struct reiserfs_journal_header {
#define JOURNAL_MAX_COMMIT_AGE 30
#define JOURNAL_MAX_TRANS_AGE 30
@@ -388,17 +393,19 @@
#ifdef CONFIG_QUOTA
/* We need to update data and inode (atime) */
#define REISERFS_QUOTA_TRANS_BLOCKS(s) (REISERFS_SB(s)->s_mount_opt & (1<i_flags |= S_PRIVATE;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/reiserfs-use-generic-xattr-handlers.diff new/patches.suse/reiserfs-use-generic-xattr-handlers.diff
--- old/patches.suse/reiserfs-use-generic-xattr-handlers.diff 2007-08-30 17:04:44.000000000 +0200
+++ new/patches.suse/reiserfs-use-generic-xattr-handlers.diff 2007-08-31 16:08:23.000000000 +0200
@@ -20,18 +20,18 @@
---
fs/reiserfs/super.c | 7
- fs/reiserfs/xattr.c | 413 ++++++++++++++++-------------------------
+ fs/reiserfs/xattr.c | 423 ++++++++++++++++-------------------------
fs/reiserfs/xattr_acl.c | 79 +++----
fs/reiserfs/xattr_security.c | 26 --
fs/reiserfs/xattr_trusted.c | 45 +---
- fs/reiserfs/xattr_user.c | 30 --
+ fs/reiserfs/xattr_user.c | 31 ---
include/linux/reiserfs_acl.h | 16 -
include/linux/reiserfs_fs_sb.h | 3
- include/linux/reiserfs_xattr.h | 29 --
- 9 files changed, 227 insertions(+), 421 deletions(-)
+ include/linux/reiserfs_xattr.h | 30 --
+ 9 files changed, 237 insertions(+), 423 deletions(-)
---- a/fs/reiserfs/super.c 2007-08-30 10:13:26.000000000 -0400
-+++ b/fs/reiserfs/super.c 2007-08-30 10:13:58.000000000 -0400
+--- a/fs/reiserfs/super.c 2007-08-31 09:34:01.000000000 -0400
++++ b/fs/reiserfs/super.c 2007-08-31 09:34:01.000000000 -0400
@@ -2150,9 +2150,6 @@ static int __init init_reiserfs_fs(void)
return ret;
}
@@ -60,8 +60,8 @@
reiserfs_proc_unregister_global("version");
reiserfs_proc_info_global_done();
unregister_filesystem(&reiserfs_fs_type);
---- a/fs/reiserfs/xattr.c 2007-08-30 10:13:26.000000000 -0400
-+++ b/fs/reiserfs/xattr.c 2007-08-30 10:15:45.000000000 -0400
+--- a/fs/reiserfs/xattr.c 2007-08-31 09:34:01.000000000 -0400
++++ b/fs/reiserfs/xattr.c 2007-08-31 09:40:02.000000000 -0400
@@ -53,8 +53,49 @@
#define PRIVROOT_NAME ".reiserfs_priv"
#define XAROOT_NAME "xattrs"
@@ -145,7 +145,18 @@
}
/*
-@@ -381,8 +433,26 @@ reiserfs_xattr_set(struct inode *inode,
+@@ -364,8 +416,8 @@ static inline __u32 xattr_hash(const cha
+ * inode->i_mutex: down
+ */
+ int
+-reiserfs_xattr_set(struct inode *inode, const char *name, const void *buffer,
+- size_t buffer_size, int flags)
++__reiserfs_xattr_set(struct inode *inode, const char *name, const void *buffer,
++ size_t buffer_size, int flags)
+ {
+ int err = 0;
+ struct file *fp;
+@@ -381,8 +433,24 @@ reiserfs_xattr_set(struct inode *inode,
if (get_inode_sd_version(inode) == STAT_DATA_V1)
return -EOPNOTSUPP;
@@ -158,8 +169,6 @@
+ dentry = xattr_lookup(inode, name, XATTR_REPLACE);
+ if (IS_ERR(dentry)) {
+ err = PTR_ERR(dentry);
-+ if (err == -ENODATA)
-+ err = 0;
+ return err;
+ }
+
@@ -174,7 +183,7 @@
fp = open_xattr_file(inode, name, flags);
if (IS_ERR(fp)) {
-@@ -449,6 +519,12 @@ reiserfs_xattr_set(struct inode *inode,
+@@ -449,6 +517,12 @@ reiserfs_xattr_set(struct inode *inode,
break;
}
@@ -187,19 +196,28 @@
/* We can't mark the inode dirty if it's not hashed. This is the case
* when we're inheriting the default ACL. If we dirty it, the inode
* gets marked dirty, but won't (ever) make it onto the dirty list until
-@@ -458,11 +534,6 @@ reiserfs_xattr_set(struct inode *inode,
+@@ -458,11 +532,16 @@ reiserfs_xattr_set(struct inode *inode,
mark_inode_dirty(inode);
}
- out_filp:
- mutex_unlock(&xinode->i_mutex);
- fput(fp);
--
++ return err;
++}
+
- out:
++int
++reiserfs_xattr_set(struct inode *inode, const char *name, const void *buffer,
++ size_t buffer_size, int flags)
++{
++ int err = __reiserfs_xattr_set(inode, name, buffer, buffer_size, flags);
++ if (err == -ENODATA)
++ err = 0;
return err;
}
-@@ -470,7 +541,7 @@ reiserfs_xattr_set(struct inode *inode,
+@@ -470,7 +549,7 @@ reiserfs_xattr_set(struct inode *inode,
* inode->i_mutex: down
*/
int
@@ -208,7 +226,7 @@
size_t buffer_size)
{
ssize_t err = 0;
-@@ -573,13 +644,17 @@ reiserfs_xattr_get(const struct inode *i
+@@ -573,13 +652,17 @@ reiserfs_xattr_get(const struct inode *i
return err;
}
@@ -229,7 +247,7 @@
dentry = lookup_one_len(name, xadir, namelen);
if (IS_ERR(dentry)) {
-@@ -594,27 +669,6 @@ __reiserfs_xattr_del(struct dentry *xadi
+@@ -594,27 +677,6 @@ __reiserfs_xattr_del(struct dentry *xadi
if (S_ISDIR(dentry->d_inode->i_mode))
goto out_file;
@@ -257,7 +275,7 @@
err = vfs_unlink(xadir->d_inode, dentry);
out_file:
-@@ -624,45 +678,6 @@ __reiserfs_xattr_del(struct dentry *xadi
+@@ -624,45 +686,6 @@ __reiserfs_xattr_del(struct dentry *xadi
return err;
}
@@ -303,7 +321,7 @@
/* This is called w/ inode->i_mutex downed */
int reiserfs_delete_xattrs(struct inode *inode)
{
-@@ -817,15 +832,15 @@ ssize_t
+@@ -817,15 +840,15 @@ ssize_t
reiserfs_getxattr(struct dentry * dentry, const char *name, void *buffer,
size_t size)
{
@@ -325,7 +343,7 @@
}
/*
-@@ -837,15 +852,15 @@ int
+@@ -837,15 +860,15 @@ int
reiserfs_setxattr(struct dentry *dentry, const char *name, const void *value,
size_t size, int flags)
{
@@ -347,7 +365,7 @@
}
/*
-@@ -855,73 +870,66 @@ reiserfs_setxattr(struct dentry *dentry,
+@@ -855,73 +878,66 @@ reiserfs_setxattr(struct dentry *dentry,
*/
int reiserfs_removexattr(struct dentry *dentry, const char *name)
{
@@ -460,7 +478,7 @@
if (!dentry->d_inode)
return -EINVAL;
-@@ -934,30 +942,22 @@ ssize_t reiserfs_listxattr(struct dentry
+@@ -934,30 +950,22 @@ ssize_t reiserfs_listxattr(struct dentry
if (IS_ERR(dir)) {
err = PTR_ERR(dir);
if (err == -ENODATA)
@@ -495,7 +513,7 @@
out_dir:
fput(fp);
-@@ -966,95 +966,6 @@ ssize_t reiserfs_listxattr(struct dentry
+@@ -966,95 +974,6 @@ ssize_t reiserfs_listxattr(struct dentry
return err;
}
@@ -591,7 +609,7 @@
/* This will catch lookups from the fs root to .reiserfs_priv */
static int
xattr_lookup_poison(struct dentry *dentry, struct qstr *q1, struct qstr *name)
-@@ -1083,24 +994,21 @@ int reiserfs_xattr_init(struct super_blo
+@@ -1083,24 +1002,21 @@ int reiserfs_xattr_init(struct super_blo
/* We need generation numbers to ensure that the oid mapping is correct
* v3.5 filesystems don't have them. */
@@ -628,7 +646,7 @@
struct dentry *dentry;
dentry = lookup_one_len(PRIVROOT_NAME, s->s_root,
strlen(PRIVROOT_NAME));
-@@ -1141,14 +1049,17 @@ int reiserfs_xattr_init(struct super_blo
+@@ -1141,14 +1057,17 @@ int reiserfs_xattr_init(struct super_blo
"find/create .reiserfs_priv. "
"Failing mount.");
err = -EOPNOTSUPP;
@@ -647,8 +665,8 @@
clear_bit(REISERFS_XATTRS_USER, &(REISERFS_SB(s)->s_mount_opt));
clear_bit(REISERFS_POSIXACL, &(REISERFS_SB(s)->s_mount_opt));
}
---- a/fs/reiserfs/xattr_acl.c 2007-08-30 10:13:26.000000000 -0400
-+++ b/fs/reiserfs/xattr_acl.c 2007-08-30 10:15:43.000000000 -0400
+--- a/fs/reiserfs/xattr_acl.c 2007-08-31 09:34:01.000000000 -0400
++++ b/fs/reiserfs/xattr_acl.c 2007-08-31 09:40:48.000000000 -0400
@@ -271,7 +271,7 @@ reiserfs_set_acl(struct inode *inode, in
char *name;
void *value = NULL;
@@ -672,7 +690,7 @@
- */
+ }
+
-+ error = reiserfs_xattr_set(inode, name, value, size, 0);
++ error = __reiserfs_xattr_set(inode, name, value, size, 0);
+
+ /*
+ * Ensure that the inode gets dirtied if we're only using
@@ -772,8 +790,8 @@
- .del = posix_acl_default_del,
.list = posix_acl_default_list,
};
---- a/fs/reiserfs/xattr_security.c 2007-08-30 10:13:26.000000000 -0400
-+++ b/fs/reiserfs/xattr_security.c 2007-08-30 10:15:28.000000000 -0400
+--- a/fs/reiserfs/xattr_security.c 2007-08-27 14:03:32.000000000 -0400
++++ b/fs/reiserfs/xattr_security.c 2007-08-31 09:34:01.000000000 -0400
@@ -33,35 +33,25 @@ security_set(struct inode *inode, const
return reiserfs_xattr_set(inode, name, buffer, size, flags);
}
@@ -818,8 +836,8 @@
- .del = security_del,
.list = security_list,
};
---- a/fs/reiserfs/xattr_trusted.c 2007-08-30 10:13:26.000000000 -0400
-+++ b/fs/reiserfs/xattr_trusted.c 2007-08-30 10:13:58.000000000 -0400
+--- a/fs/reiserfs/xattr_trusted.c 2007-08-27 14:03:32.000000000 -0400
++++ b/fs/reiserfs/xattr_trusted.c 2007-08-31 09:34:01.000000000 -0400
@@ -15,10 +15,7 @@ trusted_get(struct inode *inode, const c
if (strlen(name) < sizeof(XATTR_TRUSTED_PREFIX))
return -EINVAL;
@@ -893,8 +911,8 @@
- .del = trusted_del,
.list = trusted_list,
};
---- a/fs/reiserfs/xattr_user.c 2007-08-30 10:13:26.000000000 -0400
-+++ b/fs/reiserfs/xattr_user.c 2007-08-30 10:13:58.000000000 -0400
+--- a/fs/reiserfs/xattr_user.c 2007-08-27 14:03:32.000000000 -0400
++++ b/fs/reiserfs/xattr_user.c 2007-08-31 09:39:17.000000000 -0400
@@ -6,10 +6,6 @@
#include
#include
@@ -906,7 +924,15 @@
#define XATTR_USER_PREFIX "user."
static int
-@@ -36,33 +32,23 @@ user_set(struct inode *inode, const char
+@@ -27,7 +23,6 @@ static int
+ user_set(struct inode *inode, const char *name, const void *buffer,
+ size_t size, int flags)
+ {
+-
+ if (strlen(name) < sizeof(XATTR_USER_PREFIX))
+ return -EINVAL;
+
+@@ -36,33 +31,23 @@ user_set(struct inode *inode, const char
return reiserfs_xattr_set(inode, name, buffer, size, flags);
}
@@ -916,18 +942,18 @@
{
- if (strlen(name) < sizeof(XATTR_USER_PREFIX))
- return -EINVAL;
-+ const size_t len = name_len + 1;
-
- if (!reiserfs_xattrs_user(inode->i_sb))
+-
+- if (!reiserfs_xattrs_user(inode->i_sb))
- return -EOPNOTSUPP;
- return 0;
-}
--
++ const size_t len = name_len + 1;
+
-static int
-user_list(struct inode *inode, const char *name, int namelen, char *out)
-{
- int len = namelen;
-- if (!reiserfs_xattrs_user(inode->i_sb))
+ if (!reiserfs_xattrs_user(inode->i_sb))
return 0;
-
- if (out)
@@ -948,8 +974,8 @@
- .del = user_del,
.list = user_list,
};
---- a/include/linux/reiserfs_acl.h 2007-08-30 10:13:26.000000000 -0400
-+++ b/include/linux/reiserfs_acl.h 2007-08-30 10:15:43.000000000 -0400
+--- a/include/linux/reiserfs_acl.h 2007-08-27 14:03:32.000000000 -0400
++++ b/include/linux/reiserfs_acl.h 2007-08-31 09:34:01.000000000 -0400
@@ -52,10 +52,8 @@ int reiserfs_acl_chmod(struct inode *ino
int reiserfs_inherit_default_acl(struct inode *dir, struct dentry *dentry,
struct inode *inode);
@@ -980,8 +1006,8 @@
static inline int reiserfs_acl_chmod(struct inode *inode)
{
return 0;
---- a/include/linux/reiserfs_fs_sb.h 2007-08-30 10:13:26.000000000 -0400
-+++ b/include/linux/reiserfs_fs_sb.h 2007-08-30 10:13:58.000000000 -0400
+--- a/include/linux/reiserfs_fs_sb.h 2007-08-31 09:34:01.000000000 -0400
++++ b/include/linux/reiserfs_fs_sb.h 2007-08-31 09:34:01.000000000 -0400
@@ -453,7 +453,6 @@ enum reiserfs_mount_options {
REISERFS_NO_UNHASHED_RELOCATION,
REISERFS_HASHED_RELOCATION,
@@ -999,8 +1025,8 @@
#define reiserfs_xattrs_user(s) (REISERFS_SB(s)->s_mount_opt & (1 << REISERFS_XATTRS_USER))
#define reiserfs_posixacl(s) (REISERFS_SB(s)->s_mount_opt & (1 << REISERFS_POSIXACL))
#define reiserfs_xattrs_optional(s) (reiserfs_xattrs_user(s) || reiserfs_posixacl(s))
---- a/include/linux/reiserfs_xattr.h 2007-08-30 10:13:26.000000000 -0400
-+++ b/include/linux/reiserfs_xattr.h 2007-08-30 10:15:43.000000000 -0400
+--- a/include/linux/reiserfs_xattr.h 2007-08-31 09:34:01.000000000 -0400
++++ b/include/linux/reiserfs_xattr.h 2007-08-31 09:40:32.000000000 -0400
@@ -29,20 +29,6 @@ struct iattr;
struct super_block;
struct nameidata;
@@ -1022,13 +1048,14 @@
#ifdef CONFIG_REISERFS_FS_XATTR
#define is_reiserfs_priv_object(inode) IS_PRIVATE(inode)
#define has_xattr_dir(inode) (REISERFS_I(inode)->i_flags & i_has_xattr_dir)
-@@ -57,16 +43,12 @@ int reiserfs_chown_xattrs(struct inode *
+@@ -57,16 +43,13 @@ int reiserfs_chown_xattrs(struct inode *
int reiserfs_xattr_init(struct super_block *sb, int mount_flags);
int reiserfs_permission(struct inode *inode, int mask, struct nameidata *nd);
-int reiserfs_xattr_del(struct inode *, const char *);
-int reiserfs_xattr_get(const struct inode *, const char *, void *, size_t);
+int reiserfs_xattr_get(struct inode *, const char *, void *, size_t);
++int __reiserfs_xattr_set(struct inode *, const char *, const void *, size_t, int);
int reiserfs_xattr_set(struct inode *, const char *, const void *, size_t, int);
-extern struct reiserfs_xattr_handler user_handler;
@@ -1043,7 +1070,7 @@
static inline void reiserfs_mark_inode_private(struct inode *inode)
-@@ -85,9 +67,6 @@ static inline void reiserfs_mark_inode_p
+@@ -85,9 +68,6 @@ static inline void reiserfs_mark_inode_p
#define reiserfs_permission NULL
++++++ patches.uml.tar.bz2 ++++++
++++++ patches.xen.tar.bz2 ++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org