[XFS] remove i_gen from incore inode
[safe/jmp/linux-2.6] / fs / xfs / xfs_filestream.c
index ce22786..f3bb75d 100644 (file)
@@ -73,7 +73,7 @@ xfs_filestreams_trace(
 #define TRACE4(mp,t,a0,a1,a2,a3)       TRACE6(mp,t,a0,a1,a2,a3,0,0)
 #define TRACE5(mp,t,a0,a1,a2,a3,a4)    TRACE6(mp,t,a0,a1,a2,a3,a4,0)
 #define TRACE6(mp,t,a0,a1,a2,a3,a4,a5) \
-       xfs_filestreams_trace(mp, t, __FUNCTION__, __LINE__, \
+       xfs_filestreams_trace(mp, t, __func__, __LINE__, \
                                (__psunsigned_t)a0, (__psunsigned_t)a1, \
                                (__psunsigned_t)a2, (__psunsigned_t)a3, \
                                (__psunsigned_t)a4, (__psunsigned_t)a5)
@@ -348,11 +348,12 @@ _xfs_filestream_update_ag(
 }
 
 /* xfs_fstrm_free_func(): callback for freeing cached stream items. */
-void
+STATIC void
 xfs_fstrm_free_func(
-       xfs_ino_t       ino,
-       fstrm_item_t    *item)
+       unsigned long   ino,
+       void            *data)
 {
+       fstrm_item_t    *item  = (fstrm_item_t *)data;
        xfs_inode_t     *ip = item->ip;
        int ref;
 
@@ -396,10 +397,12 @@ int
 xfs_filestream_init(void)
 {
        item_zone = kmem_zone_init(sizeof(fstrm_item_t), "fstrm_item");
+       if (!item_zone)
+               return -ENOMEM;
 #ifdef XFS_FILESTREAMS_TRACE
-       xfs_filestreams_trace_buf = ktrace_alloc(XFS_FSTRM_KTRACE_SIZE, KM_SLEEP);
+       xfs_filestreams_trace_buf = ktrace_alloc(XFS_FSTRM_KTRACE_SIZE, KM_NOFS);
 #endif
-       return item_zone ? 0 : -ENOMEM;
+       return 0;
 }
 
 /*
@@ -438,7 +441,7 @@ xfs_filestream_mount(
        grp_count = 10;
 
        err = xfs_mru_cache_create(&mp->m_filestream, lifetime, grp_count,
-                            (xfs_mru_cache_free_func_t)xfs_fstrm_free_func);
+                            xfs_fstrm_free_func);
 
        return err;
 }
@@ -467,8 +470,7 @@ void
 xfs_filestream_flush(
        xfs_mount_t     *mp)
 {
-       /* point in time flush, so keep the reaper running */
-       xfs_mru_cache_flush(mp->m_filestream, 1);
+       xfs_mru_cache_flush(mp->m_filestream);
 }
 
 /*