diff options
-rw-r--r-- | fs/xfs/linux-2.6/xfs_sync.c | 3 | ||||
-rw-r--r-- | fs/xfs/xfs_filestream.c | 14 | ||||
-rw-r--r-- | fs/xfs/xfs_filestream.h | 1 | ||||
-rw-r--r-- | fs/xfs/xfs_mru_cache.c | 2 | ||||
-rw-r--r-- | fs/xfs/xfs_mru_cache.h | 1 |
5 files changed, 1 insertions, 20 deletions
diff --git a/fs/xfs/linux-2.6/xfs_sync.c b/fs/xfs/linux-2.6/xfs_sync.c index cc964faf12e9..b58f8412dfe2 100644 --- a/fs/xfs/linux-2.6/xfs_sync.c +++ b/fs/xfs/linux-2.6/xfs_sync.c | |||
@@ -451,9 +451,6 @@ xfs_quiesce_data( | |||
451 | xfs_sync_data(mp, SYNC_WAIT); | 451 | xfs_sync_data(mp, SYNC_WAIT); |
452 | xfs_qm_sync(mp, SYNC_WAIT); | 452 | xfs_qm_sync(mp, SYNC_WAIT); |
453 | 453 | ||
454 | /* drop inode references pinned by filestreams */ | ||
455 | xfs_filestream_flush(mp); | ||
456 | |||
457 | /* write superblock and hoover up shutdown errors */ | 454 | /* write superblock and hoover up shutdown errors */ |
458 | error = xfs_sync_fsdata(mp, SYNC_WAIT); | 455 | error = xfs_sync_fsdata(mp, SYNC_WAIT); |
459 | 456 | ||
diff --git a/fs/xfs/xfs_filestream.c b/fs/xfs/xfs_filestream.c index 914d00d0f119..390850ee6603 100644 --- a/fs/xfs/xfs_filestream.c +++ b/fs/xfs/xfs_filestream.c | |||
@@ -455,20 +455,6 @@ xfs_filestream_unmount( | |||
455 | } | 455 | } |
456 | 456 | ||
457 | /* | 457 | /* |
458 | * If the mount point's m_perag tree is going to be modified, all | ||
459 | * outstanding cache entries must be flushed to avoid accessing reference count | ||
460 | * addresses that have been freed. The call to xfs_filestream_flush() must be | ||
461 | * made inside the block that holds the m_perag_lock in write mode to do the | ||
462 | * reallocation. | ||
463 | */ | ||
464 | void | ||
465 | xfs_filestream_flush( | ||
466 | xfs_mount_t *mp) | ||
467 | { | ||
468 | xfs_mru_cache_flush(mp->m_filestream); | ||
469 | } | ||
470 | |||
471 | /* | ||
472 | * Return the AG of the filestream the file or directory belongs to, or | 458 | * Return the AG of the filestream the file or directory belongs to, or |
473 | * NULLAGNUMBER otherwise. | 459 | * NULLAGNUMBER otherwise. |
474 | */ | 460 | */ |
diff --git a/fs/xfs/xfs_filestream.h b/fs/xfs/xfs_filestream.h index 58378b2ea033..260f757bbc5d 100644 --- a/fs/xfs/xfs_filestream.h +++ b/fs/xfs/xfs_filestream.h | |||
@@ -135,7 +135,6 @@ int xfs_filestream_init(void); | |||
135 | void xfs_filestream_uninit(void); | 135 | void xfs_filestream_uninit(void); |
136 | int xfs_filestream_mount(struct xfs_mount *mp); | 136 | int xfs_filestream_mount(struct xfs_mount *mp); |
137 | void xfs_filestream_unmount(struct xfs_mount *mp); | 137 | void xfs_filestream_unmount(struct xfs_mount *mp); |
138 | void xfs_filestream_flush(struct xfs_mount *mp); | ||
139 | xfs_agnumber_t xfs_filestream_lookup_ag(struct xfs_inode *ip); | 138 | xfs_agnumber_t xfs_filestream_lookup_ag(struct xfs_inode *ip); |
140 | int xfs_filestream_associate(struct xfs_inode *dip, struct xfs_inode *ip); | 139 | int xfs_filestream_associate(struct xfs_inode *dip, struct xfs_inode *ip); |
141 | void xfs_filestream_deassociate(struct xfs_inode *ip); | 140 | void xfs_filestream_deassociate(struct xfs_inode *ip); |
diff --git a/fs/xfs/xfs_mru_cache.c b/fs/xfs/xfs_mru_cache.c index 4b0613d99faa..45ce15dc5b2b 100644 --- a/fs/xfs/xfs_mru_cache.c +++ b/fs/xfs/xfs_mru_cache.c | |||
@@ -398,7 +398,7 @@ exit: | |||
398 | * guaranteed that all the free functions for all the elements have finished | 398 | * guaranteed that all the free functions for all the elements have finished |
399 | * executing and the reaper is not running. | 399 | * executing and the reaper is not running. |
400 | */ | 400 | */ |
401 | void | 401 | static void |
402 | xfs_mru_cache_flush( | 402 | xfs_mru_cache_flush( |
403 | xfs_mru_cache_t *mru) | 403 | xfs_mru_cache_t *mru) |
404 | { | 404 | { |
diff --git a/fs/xfs/xfs_mru_cache.h b/fs/xfs/xfs_mru_cache.h index 5d439f34b0c9..36dd3ec8b4eb 100644 --- a/fs/xfs/xfs_mru_cache.h +++ b/fs/xfs/xfs_mru_cache.h | |||
@@ -42,7 +42,6 @@ void xfs_mru_cache_uninit(void); | |||
42 | int xfs_mru_cache_create(struct xfs_mru_cache **mrup, unsigned int lifetime_ms, | 42 | int xfs_mru_cache_create(struct xfs_mru_cache **mrup, unsigned int lifetime_ms, |
43 | unsigned int grp_count, | 43 | unsigned int grp_count, |
44 | xfs_mru_cache_free_func_t free_func); | 44 | xfs_mru_cache_free_func_t free_func); |
45 | void xfs_mru_cache_flush(xfs_mru_cache_t *mru); | ||
46 | void xfs_mru_cache_destroy(struct xfs_mru_cache *mru); | 45 | void xfs_mru_cache_destroy(struct xfs_mru_cache *mru); |
47 | int xfs_mru_cache_insert(struct xfs_mru_cache *mru, unsigned long key, | 46 | int xfs_mru_cache_insert(struct xfs_mru_cache *mru, unsigned long key, |
48 | void *value); | 47 | void *value); |