Messages in this thread | | | Date | Sun, 21 Nov 2004 11:53:04 +0000 (GMT) | From | Anton Altaparmakov <> | Subject | Re: [PATCH] [Request for inclusion] Filesystem in Userspace |
| |
On Sun, 21 Nov 2004, Miklos Szeredi wrote: > OK, I see your point. But can't the memory subsystem be tought, that > those pages are not guaranteed to be written back in a limited time?
It already is. Your address space ->writepage can do
redirty_page_for_writepage(wbc, page); unlock_page(page); return 0;
And that is fine. NTFS does this. As does Reiserfs I believe.
For NTFS I do it exactly when I get to -ENOMEM so that I don't have enough memory to coplete the writepage so I abort the write and redirty the page so it gets tried again at a later time when more memory is freed. The writeback control (wbc) ensures the VM doesn't just keep calling us trying to clean the page to free it. It knows it is pointless so it gives up. The OOM killer can then kill some other app which will free memory, and then the writepage will be retried and it will succeed. Now I know the fuse fs can be swapped out but why that would lead to a deadlock I can't see. There always is something else to kill to free memory so the fs can be swapped back in. And if the fs is killed surely all its pages will be invalidated and thrown away by fuse, no?
Best regards,
Anton -- Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @) Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |