RFC net: Introduce recvmmsg socket syscall
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v4 RFC Latest2 patches 7 repliesIn review
- v3 RFC1 patch 0 repliesSuperseded
- v2 RFC1 patch 8 repliesSuperseded
Patches in v4 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | net: Introduce recvmmsg socket syscallarch/ arch/ arch/ +21 more | +259 | 2 replies | |
| 2/2 | net: Allow protocols to provide an unlocked_recvmsg socket methoddrivers/ drivers/ drivers/ +43 more | +244 | 5 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v4 yet.
Cover letter [RFCv4 PATCH 0/2] net: Introduce recvmmsg socket syscall
Hi,
Nir, can you please test with this patchset and check if latency
numbers improved? They should, I think :-)
New perf callgraphs here:
http://oops.ghostprotocols.net:81/acme/perf.recvmsg.step2.cg.data.txt.bz2
versus
http://oops.ghostprotocols.net:81/acme/perf.recvmmsg.step2.cg.data.txt.bz2
Look at what appears now on the radar, its not locking :-)
Or course, I need to do more tests, but it looks promising, please give
it a go and report back here if you can!
- Arnaldo
# Samples: 761074
#
# Overhead Command Shared Object Symbol
# ........ ........ ........................ ......
#
6.54% recvmmsg [kernel] [k] skb_set_owner_r
|
|--99.43%-- sock_queue_rcv_skb
| __udp_queue_rcv_skb
| sk_backlog_rcv
| release_sock
| __sys_recvmmsg
| sys_recvmmsg
| system_call_fastpath
| syscall
| |
| --12.76%-- main
| __libc_start_main
|
--0.57%-- __udp_queue_rcv_skb
sk_backlog_rcv
release_sock
__sys_recvmmsg
sys_recvmmsg
system_call_fastpath
syscall
|
--10.84%-- main
__libc_start_main 5.88% recvmmsg [kernel] [k] _spin_lock_irqsave
|
|--47.58%-- skb_queue_tail
| sock_queue_rcv_skb
| __udp_queue_rcv_skb
| sk_backlog_rcv
| release_sock
| __sys_recvmmsg
| sys_recvmmsg
| system_call_fastpath
| syscall
| |
| --12.56%-- main
| __libc_start_main
|
|--41.85%-- __skb_recv_datagram
| __udp_recvmsg
| udp_unlocked_recvmsg
| sock_common_unlocked_recvmsg
| __sock_unlocked_recvmsg_nosec
| |
| |--98.41%-- sock_unlocked_recvmsg_nosec
| | __sys_recvmsg
| | __sys_recvmmsg
| | sys_recvmmsg
| | system_call_fastpath
| | syscall
| | |
| | --12.82%-- main
| | __libc_start_main
| |
| --1.59%-- sock_unlocked_recvmsg
| __sys_recvmsg
| __sys_recvmmsg
| sys_recvmmsg
- Arnaldo