diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-24 17:14:46 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-24 17:14:46 -0400 |
| commit | 9978306e31a8f89bd81fbc4c49fd9aefb1d30d10 (patch) | |
| tree | 85bbd03336a82d20a00761ed35eb05536936b881 | |
| parent | abe81e25f08abbac493754a043f7a91a1b3e0f93 (diff) | |
| parent | 14c26c6a05de138a4fd9a0c05ff8e7435a618324 (diff) | |
Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
Pull XFS update from Ben Myers:
- Removal of xfsbufd
- Background CIL flushes have been moved to a workqueue.
- Fix to xfs_check_page_type applicable to filesystems where
blocksize < page size
- Fix for stale data exposure when extsize hints are used.
- A series of xfs_buf cache cleanups.
- Fix for XFS_IOC_ALLOCSP
- Cleanups for includes and removal of xfs_lrw.[ch].
- Moved all busy extent handling to it's own file so that it is easier
to merge with userspace.
- Fix for log mount failure.
- Fix to enable inode reclaim during quotacheck at mount time.
- Fix for delalloc quota accounting.
- Fix for memory reclaim deadlock on agi buffer.
- Fixes for failed writes and to clean up stale delalloc blocks.
- Fix to use GFP_NOFS in blkdev_issue_flush
- SEEK_DATA/SEEK_HOLE support
* 'for-linus' of git://oss.sgi.com/xfs/xfs: (57 commits)
xfs: add trace points for log forces
xfs: fix memory reclaim deadlock on agi buffer
xfs: fix delalloc quota accounting on failure
xfs: protect xfs_sync_worker with s_umount semaphore
xfs: introduce SEEK_DATA/SEEK_HOLE support
xfs: make xfs_extent_busy_trim not static
xfs: make XBF_MAPPED the default behaviour
xfs: flush outstanding buffers on log mount failure
xfs: Properly exclude IO type flags from buffer flags
xfs: clean up xfs_bit.h includes
xfs: move xfs_do_force_shutdown() and kill xfs_rw.c
xfs: move xfs_get_extsz_hint() and kill xfs_rw.h
xfs: move xfs_fsb_to_db to xfs_bmap.h
xfs: clean up busy extent naming
xfs: move busy extent handling to it's own file
xfs: move xfsagino_t to xfs_types.h
xfs: use iolock on XFS_IOC_ALLOCSP calls
xfs: kill XBF_DONTBLOCK
xfs: kill xfs_read_buf()
xfs: kill XBF_LOCK
...
80 files changed, 2459 insertions, 2852 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index eaff0392eb32..150a29f3cd33 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
| @@ -7623,7 +7623,7 @@ XFS FILESYSTEM | |||
| 7623 | P: Silicon Graphics Inc | 7623 | P: Silicon Graphics Inc |
| 7624 | M: Ben Myers <bpm@sgi.com> | 7624 | M: Ben Myers <bpm@sgi.com> |
| 7625 | M: Alex Elder <elder@kernel.org> | 7625 | M: Alex Elder <elder@kernel.org> |
| 7626 | M: xfs-masters@oss.sgi.com | 7626 | M: xfs@oss.sgi.com |
| 7627 | L: xfs@oss.sgi.com | 7627 | L: xfs@oss.sgi.com |
| 7628 | W: http://oss.sgi.com/projects/xfs | 7628 | W: http://oss.sgi.com/projects/xfs |
| 7629 | T: git git://oss.sgi.com/xfs/xfs.git | 7629 | T: git git://oss.sgi.com/xfs/xfs.git |
diff --git a/fs/xfs/Makefile b/fs/xfs/Makefile index 0a9977983f92..d2bf974b1a2f 100644 --- a/fs/xfs/Makefile +++ b/fs/xfs/Makefile | |||
| @@ -33,6 +33,7 @@ xfs-y += xfs_aops.o \ | |||
| 33 | xfs_discard.o \ | 33 | xfs_discard.o \ |
| 34 | xfs_error.o \ | 34 | xfs_error.o \ |
| 35 | xfs_export.o \ | 35 | xfs_export.o \ |
| 36 | xfs_extent_busy.o \ | ||
| 36 | xfs_file.o \ | 37 | xfs_file.o \ |
| 37 | xfs_filestream.o \ | 38 | xfs_filestream.o \ |
| 38 | xfs_fsops.o \ | 39 | xfs_fsops.o \ |
| @@ -49,7 +50,6 @@ xfs-y += xfs_aops.o \ | |||
| 49 | xfs_sync.o \ | 50 | xfs_sync.o \ |
| 50 | xfs_xattr.o \ | 51 | xfs_xattr.o \ |
| 51 | xfs_rename.o \ | 52 | xfs_rename.o \ |
| 52 | xfs_rw.o \ | ||
| 53 | xfs_utils.o \ | 53 | xfs_utils.o \ |
| 54 | xfs_vnodeops.o \ | 54 | xfs_vnodeops.o \ |
| 55 | kmem.o \ | 55 | kmem.o \ |
diff --git a/fs/xfs/xfs_ag.h b/fs/xfs/xfs_ag.h index 4805f009f923..44d65c1533c0 100644 --- a/fs/xfs/xfs_ag.h +++ b/fs/xfs/xfs_ag.h | |||
| @@ -175,24 +175,6 @@ typedef struct xfs_agfl { | |||
| 175 | } xfs_agfl_t; | 175 | } xfs_agfl_t; |
| 176 | 176 | ||
| 177 | /* | 177 | /* |
| 178 | * Busy block/extent entry. Indexed by a rbtree in perag to mark blocks that | ||
| 179 | * have been freed but whose transactions aren't committed to disk yet. | ||
| 180 | * | ||
| 181 | * Note that we use the transaction ID to record the transaction, not the | ||
| 182 | * transaction structure itself. See xfs_alloc_busy_insert() for details. | ||
| 183 | */ | ||
| 184 | struct xfs_busy_extent { | ||
| 185 | struct rb_node rb_node; /* ag by-bno indexed search tree */ | ||
| 186 | struct list_head list; /* transaction busy extent list */ | ||
| 187 | xfs_agnumber_t agno; | ||
| 188 | xfs_agblock_t bno; | ||
| 189 | xfs_extlen_t length; | ||
| 190 | unsigned int flags; | ||
| 191 | #define XFS_ALLOC_BUSY_DISCARDED 0x01 /* undergoing a discard op. */ | ||
| 192 | #define XFS_ALLOC_BUSY_SKIP_DISCARD 0x02 /* do not discard */ | ||
| 193 | }; | ||
| 194 | |||
| 195 | /* | ||
| 196 | * Per-ag incore structure, copies of information in agf and agi, | 178 | * Per-ag incore structure, copies of information in agf and agi, |
| 197 | * to improve the performance of allocation group selection. | 179 | * to improve the performance of allocation group selection. |
| 198 | */ | 180 | */ |
diff --git a/fs/xfs/xfs_alloc.c b/fs/xfs/xfs_alloc.c index 0f0df2759b09..229641fb8e67 100644 --- a/fs/xfs/xfs_alloc.c +++ b/fs/xfs/xfs_alloc.c | |||
| @@ -20,7 +20,6 @@ | |||
| 20 | #include "xfs_types.h" | ||
