From: David Miller <da...@davemloft.net> Date: Mon, 02 May 2016 22:39:45 -0400 (EDT)
> From: Wei Wang <wei...@google.com> > Date: Fri, 29 Apr 2016 17:31:12 -0700 > >> From: Wei Wang <wei...@google.com> >> >> In the sendmsg function of UDP, raw, ICMP and l2tp sockets, we use local >> variables like hlimits, tclass, opt and dontfrag and pass them to >> corresponding >> functions like ip6_make_skb, ip6_append_data and xxx_push_pending_frames. >> This is not a good practice and makes it hard to add new parameters. >> This fix introduces a new struct ipcm6_cookie similar to ipcm_cookie in >> ipv4 and include the above mentioned variables. And we only pass the >> pointer to this structure to corresponding functions. This makes it easier >> to add new parameters in the future and makes the function cleaner. >> >> Signed-off-by: Wei Wang <wei...@google.com> > > Looks good, applied, thank you. Actually I had to revert, this break the build. net/l2tp/l2tp_ip6.c: In function ‘l2tp_ip6_sendmsg’: net/l2tp/l2tp_ip6.c:634:10: error: invalid operands to binary & (have ‘struct ipcm6_cookie *’ and ‘struct flowi6’) &fl6, (struct rt6_info *)dst, ^ net/l2tp/l2tp_ip6.c:634:16: warning: passing argument 7 of ‘ip6_append_data’ from incompatible pointer type &fl6, (struct rt6_info *)dst, ^ and so on and so forth...