Re: optimizations to sk_buff handling in rds_tcp_data_ready

2016-04-10 Thread Eric Dumazet
On Sat, 2016-04-09 at 20:18 -0400, Sowmini Varadhan wrote: > On (04/07/16 07:16), Eric Dumazet wrote: > > Use skb split like TCP in output path ? > > Really, pskb_expand_head() is not supposed to copy payload ;) > > Question- how come skb_split doesnt have to deal with frag_list > and do a skb_wal

Re: optimizations to sk_buff handling in rds_tcp_data_ready

2016-04-09 Thread Sowmini Varadhan
On (04/07/16 07:16), Eric Dumazet wrote: > Use skb split like TCP in output path ? > Really, pskb_expand_head() is not supposed to copy payload ;) Question- how come skb_split doesnt have to deal with frag_list and do a skb_walk_frags()? Couldn't the split-line be somewhere in the frag_list? Also

Re: optimizations to sk_buff handling in rds_tcp_data_ready

2016-04-07 Thread Sowmini Varadhan
On (04/07/16 07:16), Eric Dumazet wrote: > Use skb split like TCP in output path ? That almost looks like what I want, but skb_split modifies both skb and skb1, and I want to leave skb untouched (otherwise I will mess up the book-keeping in tcp_read_sock). But skb_split is a good template- I thi

Re: optimizations to sk_buff handling in rds_tcp_data_ready

2016-04-07 Thread Eric Dumazet
On Thu, 2016-04-07 at 09:11 -0400, Sowmini Varadhan wrote: > I was going back to Alexei's comment here: > http://permalink.gmane.org/gmane.linux.network/387806 > In rds-stress profiling, we are indeed seeing the pksb_pull > (from rds_tcp_data_recv) show up in the perf profile. > > At least for

optimizations to sk_buff handling in rds_tcp_data_ready

2016-04-07 Thread Sowmini Varadhan
I was going back to Alexei's comment here: http://permalink.gmane.org/gmane.linux.network/387806 In rds-stress profiling, we are indeed seeing the pksb_pull (from rds_tcp_data_recv) show up in the perf profile. At least for rds-tcp, we cannot re-use the skb even if it is not shared, because w