lkml.org 
[lkml]   [2005]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Kernel bug: Bad page state: related to generic symlink code and mmap
Al Viro wrote:

>On Fri, Aug 19, 2005 at 05:53:32PM +0100, Al Viro wrote:
>
>
>>I'm taking NFS helpers to libfs.c and switching ncpfs to them. IMO that's
>>better than copying the damn thing and other network filesystems might have
>>the same needs eventually...
>>
>>
>
>[something like this - completely untested]
>
>* stray_page_get_link(inode, filler) - returns ERR_PTR(error) or pointer
>to symlink body. Said symlink body sits in a page at offset equal to
>offsetof(page, struct stray_page_link). filler() is expected to put it
>at such offset. Page is cached.
>
>* stray_page_put_link() - ->put_link() suitable for links obtained from
>stray_page_get_link(). Unlike the usual pagecache-based variants, this
>sucker does _not_ rely on page staying cached.
>
>* nfs and ncpfs switched to the helpers above.
>
>Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
>----
>
>

Just out of curiosity - what protects even local filesystems against
concurrent truncate and symlink resolving when using the page cache helpers?

--Mika

-
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/

\
 
 \ /
  Last update: 2005-08-19 21:18    [W:1.338 / U:0.176 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site