diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-12 21:09:35 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-12 21:09:35 -0500 |
commit | 4d58967783611c5676820b8d47a9b6b0bb456995 (patch) | |
tree | 6a20281fbff1a1a4e88d65d5851e51d8d6b2f02e /fs/gfs2/xattr.c | |
parent | 33caf82acf4dc420bf0f0136b886f7b27ecf90c5 (diff) | |
parent | a93a99838248bdab49db2eaac00236847670bc7f (diff) |
Merge tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2
Pull GFS2 updates from Bob Peterson:
"Here is a list of patches we've accumulated for GFS2 for the current
upstream merge window. Last window's set was short, but I warned that
this one would be bigger, and so it is. We've got 19 patches:
- A patch from Abhi Das to propagate the GFS2_DIF_SYSTEM bit so that
newly added journals don't get flagged, deleted, and recreated by
fsck.gfs2.
- Two patches from Andreas Gruenbacher to improve GFS2 performance
where extended attributes are involved.
- A patch from Andy Price to fix a suspicious rcu dereference error.
- Two patches from Ben Marzinski that rework how GFS2's NFS cookies
are managed. This fixes readdir problems with nfs-over-gfs2.
- A patch from Ben Marzinski that fixes a race in unmounting GFS2.
- A set of four patches from me to move the resource group
reservations inside the gfs2 inode to improve performance and fix a
bug whereby get_write_access improperly prevented some operations
like chown.
- A patch from me to spinlock-protect the setting of system statfs
file data. This was causing small discrepancies between df and du.
- A patch from me to reintroduce a timeout while clearing glocks
which was accidentally dropped some time ago.
- A patch from me to wait for iopen glock dequeues in order to
improve deleting of files that were unlinked from a different
cluster node.
- A patch from me to ensure metadata address spaces get truncated
when an inode is evicted.
- A patch from me to fix a bug in which a memory leak could occur in
some error cases when inodes were trying to be created.
- A patch to consistently use iopen glocks to transition from the
unlinked state to the deleted state.
- A patch to fix a glock reference count error when inode creation
fails.
- A patch from Junxiao Bi to fix an flock panic.
- A patch from Markus Elfring that removes an unnecessary if"
* tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
gfs2: fix flock panic issue
GFS2: Don't do glock put on when inode creation fails
GFS2: Always use iopen glock for gl_deletes
GFS2: Release iopen glock in gfs2_create_inode error cases
GFS2: Truncate address space mapping when deleting an inode
GFS2: Wait for iopen glock dequeues
gfs2: clear journal live bit in gfs2_log_flush
gfs2: change gfs2 readdir cookie
gfs2: keep offset when splitting dir leaf blocks
GFS2: Reintroduce a timeout in function gfs2_gl_hash_clear
GFS2: Update master statfs buffer with sd_statfs_spin locked
GFS2: Reduce size of incore inode
GFS2: Make rgrp reservations part of the gfs2_inode structure
GFS2: Extract quota data from reservations structure (revert 5407e24)
gfs2: Extended attribute readahead optimization
gfs2: Extended attribute readahead
GFS2: Use rht_for_each_entry_rcu in glock_hash_walk
GFS2: Delete an unnecessary check before the function call "iput"
gfs2: Automatically set GFS2_DIF_SYSTEM flag on system files
Diffstat (limited to 'fs/gfs2/xattr.c')
-rw-r--r-- | fs/gfs2/xattr.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/gfs2/xattr.c b/fs/gfs2/xattr.c index 84f2d81fe451..e8dfb4740c04 100644 --- a/fs/gfs2/xattr.c +++ b/fs/gfs2/xattr.c | |||
@@ -119,7 +119,7 @@ static int ea_foreach(struct gfs2_inode *ip, ea_call_t ea_call, void *data) | |||
119 | __be64 *eablk, *end; | 119 | __be64 *eablk, *end; |
120 | int error; | 120 | int error; |
121 | 121 | ||
122 | error = gfs2_meta_read(ip->i_gl, ip->i_eattr, DIO_WAIT, &bh); | 122 | error = gfs2_meta_read(ip->i_gl, ip->i_eattr, DIO_WAIT, 0, &bh); |
123 | if (error) | 123 | if (error) |
124 | return error; | 124 | return error; |
125 | 125 | ||
@@ -143,7 +143,7 @@ static int ea_foreach(struct gfs2_inode *ip, ea_call_t ea_call, void *data) | |||
143 | break; | 143 | break; |
144 | bn = be64_to_cpu(*eablk); | 144 | bn = be64_to_cpu(*eablk); |
145 | 145 | ||
146 | error = gfs2_meta_read(ip->i_gl, bn, DIO_WAIT, &eabh); | 146 | error = gfs2_meta_read(ip->i_gl, bn, DIO_WAIT, 0, &eabh); |
147 | if (error) | 147 | if (error) |
148 | break; | 148 | break; |
149 | error = ea_foreach_i(ip, eabh, ea_call, data); | 149 | error = ea_foreach_i(ip, eabh, ea_call, data); |
@@ -477,7 +477,7 @@ static int gfs2_iter_unstuffed(struct gfs2_inode *ip, struct gfs2_ea_header *ea, | |||
477 | return -ENOMEM; | 477 | return -ENOMEM; |
478 | 478 | ||
479 | for (x = 0; x < nptrs; x++) { | 479 | for (x = 0; x < nptrs; x++) { |
480 | error = gfs2_meta_read(ip->i_gl, be64_to_cpu(*dataptrs), 0, | 480 | error = gfs2_meta_read(ip->i_gl, be64_to_cpu(*dataptrs), 0, 0, |
481 | bh + x); | 481 | bh + x); |
482 | if (error) { | 482 | if (error) { |
483 | while (x--) | 483 | while (x--) |
@@ -979,7 +979,7 @@ static int ea_set_block(struct gfs2_inode *ip, struct gfs2_ea_request *er, | |||
979 | if (ip->i_diskflags & GFS2_DIF_EA_INDIRECT) { | 979 | if (ip->i_diskflags & GFS2_DIF_EA_INDIRECT) { |
980 | __be64 *end; | 980 | __be64 *end; |
981 | 981 | ||
982 | error = gfs2_meta_read(ip->i_gl, ip->i_eattr, DIO_WAIT, | 982 | error = gfs2_meta_read(ip->i_gl, ip->i_eattr, DIO_WAIT, 0, |
983 | &indbh); | 983 | &indbh); |
984 | if (error) | 984 | if (error) |
985 | return error; | 985 | return error; |
@@ -1256,7 +1256,7 @@ static int ea_dealloc_indirect(struct gfs2_inode *ip) | |||
1256 | 1256 | ||
1257 | memset(&rlist, 0, sizeof(struct gfs2_rgrp_list)); | 1257 | memset(&rlist, 0, sizeof(struct gfs2_rgrp_list)); |
1258 | 1258 | ||
1259 | error = gfs2_meta_read(ip->i_gl, ip->i_eattr, DIO_WAIT, &indbh); | 1259 | error = gfs2_meta_read(ip->i_gl, ip->i_eattr, DIO_WAIT, 0, &indbh); |
1260 | if (error) | 1260 | if (error) |
1261 | return error; | 1261 | return error; |
1262 | 1262 | ||