Commit fc5e58c0c4fd86881ec8ba8e46e41a07e25dc7a6

Authored by Artem Bityutskiy
1 parent 3d46b316bc

UBIFS: use GFP_NOFS properly

This patch fixes a brown-paperbag bug which was introduced by me:
I used incorrect "GFP_KERNEL | GFP_NOFS" allocation flags to make
sure my allocations do not cause write-back. But the correct form
is "GFP_NOFS".

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>

Showing 4 changed files with 5 additions and 5 deletions Side-by-side Diff

... ... @@ -818,7 +818,7 @@
818 818 printk(KERN_DEBUG "(pid %d) start dumping LEB %d\n",
819 819 current->pid, lnum);
820 820  
821   - buf = __vmalloc(c->leb_size, GFP_KERNEL | GFP_NOFS, PAGE_KERNEL);
  821 + buf = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
822 822 if (!buf) {
823 823 ubifs_err("cannot allocate memory for dumping LEB %d", lnum);
824 824 return;
... ... @@ -1094,7 +1094,7 @@
1094 1094 }
1095 1095 }
1096 1096  
1097   - buf = __vmalloc(c->leb_size, GFP_KERNEL | GFP_NOFS, PAGE_KERNEL);
  1097 + buf = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
1098 1098 if (!buf) {
1099 1099 ubifs_err("cannot allocate memory to scan LEB %d", lnum);
1100 1100 goto out;
fs/ubifs/lpt_commit.c
... ... @@ -1633,7 +1633,7 @@
1633 1633 if (!(ubifs_chk_flags & UBIFS_CHK_LPROPS))
1634 1634 return 0;
1635 1635  
1636   - buf = p = __vmalloc(c->leb_size, GFP_KERNEL | GFP_NOFS, PAGE_KERNEL);
  1636 + buf = p = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
1637 1637 if (!buf) {
1638 1638 ubifs_err("cannot allocate memory for ltab checking");
1639 1639 return 0;
... ... @@ -1885,7 +1885,7 @@
1885 1885  
1886 1886 printk(KERN_DEBUG "(pid %d) start dumping LEB %d\n",
1887 1887 current->pid, lnum);
1888   - buf = p = __vmalloc(c->leb_size, GFP_KERNEL | GFP_NOFS, PAGE_KERNEL);
  1888 + buf = p = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
1889 1889 if (!buf) {
1890 1890 ubifs_err("cannot allocate memory to dump LPT");
1891 1891 return;
... ... @@ -898,7 +898,7 @@
898 898 if (c->no_orphs)
899 899 return 0;
900 900  
901   - buf = __vmalloc(c->leb_size, GFP_KERNEL | GFP_NOFS, PAGE_KERNEL);
  901 + buf = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
902 902 if (!buf) {
903 903 ubifs_err("cannot allocate memory to check orphans");
904 904 return 0;