diff options
| author | Eric Dumazet <[email protected]> | 2020-08-20 10:11:16 -0700 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2020-08-20 16:14:53 -0700 |
| commit | 0d89419319ef68f8acc1b78377ad3e7523fead4a (patch) | |
| tree | f08c02e3cce3b6a2e536374fb12886651c72833d /tools/perf/scripts/python/export-to-postgresql.py | |
| parent | 394fcd8a813456b3306c423ec4227ed874dfc08b (diff) | |
selftests: net: tcp_mmap: use madvise(MADV_DONTNEED)
When TCP_ZEROCOPY_RECEIVE operation has been added,
I made the mistake of automatically un-mapping prior
content before mapping new pages.
This has the unfortunate effect of adding potentially long
MMU operations (like TLB flushes) while socket lock is held.
Using madvise(MADV_DONTNEED) right after pages has been used
has two benefits :
1) This releases pages sooner, allowing pages to be recycled
if they were part of a page pool in a NIC driver.
2) No more long unmap operations while preventing immediate
processing of incoming packets.
The cost of the added system call is small enough.
Arjun will submit a kernel patch allowing to opt out from
the unmap attempt in tcp_zerocopy_receive()
Signed-off-by: Eric Dumazet <[email protected]>
Cc: Arjun Roy <[email protected]>
Cc: Soheil Hassas Yeganeh <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions