]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - fs/xfs/xfs_bmap_item.c
drivers: net: DSA: Sort drivers
[mirror_ubuntu-artful-kernel.git] / fs / xfs / xfs_bmap_item.c
index 9bf57c76623b404ebf5e1e57dd1582ad52de7c92..d419d23fa2149ae3b022cdec3aba6879c987eec1 100644 (file)
@@ -34,6 +34,8 @@
 #include "xfs_bmap.h"
 #include "xfs_icache.h"
 #include "xfs_trace.h"
+#include "xfs_bmap_btree.h"
+#include "xfs_trans_space.h"
 
 
 kmem_zone_t    *xfs_bui_zone;
@@ -215,6 +217,7 @@ void
 xfs_bui_release(
        struct xfs_bui_log_item *buip)
 {
+       ASSERT(atomic_read(&buip->bui_refcount) > 0);
        if (atomic_dec_and_test(&buip->bui_refcount)) {
                xfs_trans_ail_remove(&buip->bui_item, SHUTDOWN_LOG_IO_ERROR);
                xfs_bui_item_free(buip);
@@ -446,7 +449,8 @@ xfs_bui_recover(
                return -EIO;
        }
 
-       error = xfs_trans_alloc(mp, &M_RES(mp)->tr_itruncate, 0, 0, 0, &tp);
+       error = xfs_trans_alloc(mp, &M_RES(mp)->tr_itruncate,
+                       XFS_EXTENTADD_SPACE_RES(mp, XFS_DATA_FORK), 0, 0, &tp);
        if (error)
                return error;
        budp = xfs_trans_get_bud(tp, buip);