Re: [GIT PULL] iov_iter: Improve page extraction (pin or just list)

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

 



On 31.01.23 14:41, David Howells wrote:
David Hildenbrand <david@xxxxxxxxxx> wrote:

percpu counters maybe - add them up at the point of viewing?
They are percpu, see my last email. But for every 108 changes (on
my system), they will do two atomic_long_adds(). So not very
useful for anything but low frequency modifications.


Can we just treat the whole acquired/released accounting as a debug mechanism
to detect missing releases and do it only for debug kernels?


The pcpu counter is an s8, so we have to flush on a regular basis and cannot
really defer it any longer ... but I'm curious if it would be of any help to
only have a single PINNED counter that goes into both directions (inc/dec on
pin/release), to reduce the flushing.

Of course, once we pin/release more than ~108 pages in one go or we switch
CPUs frequently it won't be that much of a help ...

What are the stats actually used for?  Is it just debugging, or do we actually
have users for them (control groups spring to mind)?

As it's really just "how many pinning events" vs. "how many unpinning events", I assume it's only for debugging.

For example, if you pin the same page twice it would not get accounted as "a single page is pinned".

--
Thanks,

David / dhildenb




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

  Powered by Linux