[XFS] Fix double free in xfs_buf_get_noaddr error handling path
[deliverable/linux.git] / fs / xfs / linux-2.6 / xfs_buf.c
index 208daf58b826765ca3f097c06a4dfc208e65701a..192aa0650919153b09a7427ff1e47b73f5ffe6f9 100644 (file)
@@ -792,8 +792,9 @@ xfs_buf_get_noaddr(
  fail_free_mem:
        while (--i >= 0)
                __free_page(bp->b_pages[i]);
+       _xfs_buf_free_pages(bp);
  fail_free_buf:
-       xfs_buf_free(bp);
+       xfs_buf_deallocate(bp);
  fail:
        return NULL;
 }
This page took 0.027353 seconds and 5 git commands to generate.