I vaguely remember Adrian (CCed) did this on purpose. This is for thecase when nandsim emulates NAND flash on top of a file. So there are 2file-systems involved: one sits on top of nandsim (e.g. UBIFS) and theother owns the file which nandsim uses (e.g., ext3).

And I really cannot remember off the top of my head why he neededPF_MEMALLOC, but I think Adrian wanted to prevent the direct reclaimpath to re-enter, say UBIFS, and cause deadlock. But I'd thing that allthe allocations in vfs_read()/vfs_write() should be GFP_NOFS, so thatshould not be a probelm?