Thread (6 messages) flat view 6 messages, 3 authors, 2021-09-20

Re: Re: [PATCH net-next] net: socket: add the case sock_no_xxx support

From: Cong Wang <hidden>
Date: 2021-09-20 16:33:24
Also in: lkml

On Mon, Sep 20, 2021 at 5:28 AM yajun.deng@linux.dev
[off-list ref] wrote:
From: Cong Wang
Date: 2021-09-20 07:52
To: Yajun Deng
CC: Jakub Kicinski; David Miller; Linux Kernel Network Developers; LKML
Subject: Re: [PATCH net-next] net: socket: add the case sock_no_xxx support
On Sat, Sep 18, 2021 at 5:11 AM [off-list ref] wrote:
quoted
September 18, 2021 9:33 AM, "Jakub Kicinski" [off-list ref] wrote:
quoted
On Thu, 16 Sep 2021 20:29:43 +0800 Yajun Deng wrote:
quoted
Those sock_no_{mmap, socketpair, listen, accept, connect, shutdown,
sendpage} functions are used many times in struct proto_ops, but they are
meaningless. So we can add them support in socket and delete them in struct
proto_ops.
So the reason to do this is.. what exactly?

Removing a couple empty helpers (which is not even part of this patch)?

I'm not sold, sorry.
When we define a struct proto_ops xxx, we only need to assign meaningful member variables that we need.
Those {mmap, socketpair, listen, accept, connect, shutdown, sendpage} members we don't need assign
it if we don't need. We just need do once in socket, not in every struct proto_ops.

These members are assigned meaningless values far more often than meaningful ones, so this patch I used likely(!!sock->ops->xxx) for this case. This is the reason why I send this patch.
But you end up adding more code:

1 file changed, 58 insertions(+), 13 deletions(-)

Yes,This would add more code, but this is at the cost of reducing other codes. At the same time, the code will only run  likely(!sock->ops->xxx) in most cases.  Don’t you think that this kind of meaningless thing shouldn’t be done by socket?
I have no idea why you call it reducing code while adding 45 lines
of code. So this does not make sense to me.

Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help