From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 15 Jan 2016 00:05:09 +0000 From: Al Viro To: Linus Torvalds Cc: Tomeu Vizoso , "linux-kernel@vger.kernel.org" , Neil Brown , linux-fsdevel Subject: Re: [PATCH v2 06/11] don't put symlink bodies in pagecache into highmem Message-ID: <20160115000509.GD17997@ZenIV.linux.org.uk> References: <20160114152553.GW17997@ZenIV.linux.org.uk> <20160114162333.GX17997@ZenIV.linux.org.uk> <20160114171341.GY17997@ZenIV.linux.org.uk> <20160114210223.GA17997@ZenIV.linux.org.uk> <20160114222544.GB17997@ZenIV.linux.org.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org List-ID: On Thu, Jan 14, 2016 at 03:58:22PM -0800, Linus Torvalds wrote: > On Thu, Jan 14, 2016 at 2:25 PM, Al Viro wrote: > > > > For one thing, we'll lose RCU ->get_link() for those. > > Why couldn't we just do that in the RCU walker? kmap should be fine.. In map_new_virtual(): __set_current_state(TASK_UNINTERRUPTIBLE); add_wait_queue(pkmap_map_wait, &wait); unlock_kmap(); schedule(); remove_wait_queue(pkmap_map_wait, &wait); lock_kmap(); IOW, not in RCU mode ;-/ > That said, as long as you think it's ok now, I guess I don't care. > Having some sanity testing in __add_to_page_cache_locked might be a > good safety net. That's better as a separate commit, IMO. The thing I'm not sure about is whether we want a BUG() in there - VM_WARN_ON(), perhaps? OTOH, we do have VM_BUG_ON_PAGE() in the same place already...