On Sun, Mar 15, 2020 at 02:27:46AM +0200, Jarkko Sakkinen wrote: > On Thu, Mar 12, 2020 at 11:38:24AM -0700, Sean Christopherson wrote: > > On Fri, Mar 06, 2020 at 08:47:02PM +0200, Jarkko Sakkinen wrote: > > > On Thu, Mar 05, 2020 at 11:03:54AM -0800, Sean Christopherson wrote: > > > > We've also discussed taking a file descriptor to hold the backing, but > > > > unless I'm misreading the pagecache code, that doesn't solve the incorrect > > > > accounting problem because the current task, i.e. evicting task, would be > > > > charged. In other words, whether the backing is kernel or user controlled > > > > is purely an ABI question. > > > > > > Even if the file is owned by a different process the account happens > > > to "current"? > > > > Yes. Which makes sense as files do not have a 1:1 association with tasks. > > Yeah, that makes sense. Looking at mm/memory.c. > > Looking at finish_fault/alloc_set_pte/inc_mm_counter_fast code path that > is also what happens. Ugh, I meant __set_page_dirty/account_page_dirtied/task_io_account_write path :-/ Anyway. /Jarkko