Re: [PATCH v1 06/11] mm: support GUP-triggered unsharing via FAULT_FLAG_UNSHARE (!hugetlb)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Dec 18, 2021 at 04:52:13AM +0000, Nadav Amit wrote:
> Take for instance memcached and assume you overcommit memory with a very fast
> swap (e.g., pmem, zram, perhaps even slower). Now, it turns out memcached
> often accesses a page first for read and shortly after for write. I
> encountered, in a similar scenario, that the page reference that
> lru_cache_add() takes during the first faultin event (for read), causes a COW
> on a write page-fault that happens shortly after [1]. So on memcached I
> assume this would also trigger frequent unnecessary COWs.

Why are we comparing page_count() against 1 and not 1 + PageLRU(page)?
Having a reference from the LRU should be expected.  Is it because of
some race that we'd need to take the page lock to protect against?



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux