2023-08-08 16:21:36

by Breno Leitao

[permalink] [raw]
Subject: [PATCH v2 1/8] net: expose sock_use_custom_sol_socket

Exposing function sock_use_custom_sol_socket(), so it could be used by
io_uring subsystem.

This function will be used in the function io_uring_cmd_setsockopt() in
the coming patch, so, let's move it to the socket.h header file.

Signed-off-by: Breno Leitao <[email protected]>
---
include/linux/net.h | 5 +++++
net/socket.c | 5 -----
2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/linux/net.h b/include/linux/net.h
index 41c608c1b02c..14a956e4530e 100644
--- a/include/linux/net.h
+++ b/include/linux/net.h
@@ -355,4 +355,9 @@ u32 kernel_sock_ip_overhead(struct sock *sk);
#define MODULE_ALIAS_NET_PF_PROTO_NAME(pf, proto, name) \
MODULE_ALIAS("net-pf-" __stringify(pf) "-proto-" __stringify(proto) \
name)
+
+static inline bool sock_use_custom_sol_socket(const struct socket *sock)
+{
+ return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
+}
#endif /* _LINUX_NET_H */
diff --git a/net/socket.c b/net/socket.c
index 1dc23f5298ba..8df54352af83 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -2216,11 +2216,6 @@ SYSCALL_DEFINE4(recv, int, fd, void __user *, ubuf, size_t, size,
return __sys_recvfrom(fd, ubuf, size, flags, NULL, NULL);
}

-static bool sock_use_custom_sol_socket(const struct socket *sock)
-{
- return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
-}
-
/*
* Set a socket option. Because we don't know the option lengths we have
* to pass the user mode parameter for the protocols to sort out.
--
2.34.1



2023-08-08 18:26:38

by Breno Leitao

[permalink] [raw]
Subject: Re: [PATCH v2 1/8] net: expose sock_use_custom_sol_socket

Hello Hugo,

On Tue, Aug 08, 2023 at 12:13:23PM -0400, Hugo Villeneuve wrote:
> On Tue, 8 Aug 2023 06:40:41 -0700
> Breno Leitao <[email protected]> wrote:
>
> > Exposing function sock_use_custom_sol_socket(), so it could be used by
> > io_uring subsystem.
> >
> > This function will be used in the function io_uring_cmd_setsockopt() in
> > the coming patch, so, let's move it to the socket.h header file.
>
> Hi,
> this description doesn't seem to match the code change below...

I re-read the patch comment and it seems to match what the code does,
so, probably this description only makes sense to me (?).

That said, hat have you understood from reading the description above?

Thanks for the review,

> > ---
> > include/linux/net.h | 5 +++++
> > net/socket.c | 5 -----
> > 2 files changed, 5 insertions(+), 5 deletions(-)
> >
> > diff --git a/include/linux/net.h b/include/linux/net.h
> > index 41c608c1b02c..14a956e4530e 100644
> > --- a/include/linux/net.h
> > +++ b/include/linux/net.h
> > @@ -355,4 +355,9 @@ u32 kernel_sock_ip_overhead(struct sock *sk);
> > #define MODULE_ALIAS_NET_PF_PROTO_NAME(pf, proto, name) \
> > MODULE_ALIAS("net-pf-" __stringify(pf) "-proto-" __stringify(proto) \
> > name)
> > +
> > +static inline bool sock_use_custom_sol_socket(const struct socket *sock)
> > +{
> > + return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
> > +}
> > #endif /* _LINUX_NET_H */
> > diff --git a/net/socket.c b/net/socket.c
> > index 1dc23f5298ba..8df54352af83 100644
> > --- a/net/socket.c
> > +++ b/net/socket.c
> > @@ -2216,11 +2216,6 @@ SYSCALL_DEFINE4(recv, int, fd, void __user *, ubuf, size_t, size,
> > return __sys_recvfrom(fd, ubuf, size, flags, NULL, NULL);
> > }
> >
> > -static bool sock_use_custom_sol_socket(const struct socket *sock)
> > -{
> > - return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
> > -}
> > -
> > /*
> > * Set a socket option. Because we don't know the option lengths we have
> > * to pass the user mode parameter for the protocols to sort out.
> > --
> > 2.34.1
> >

2023-08-08 18:54:27

by Hugo Villeneuve

[permalink] [raw]
Subject: Re: [PATCH v2 1/8] net: expose sock_use_custom_sol_socket

On Tue, 8 Aug 2023 06:40:41 -0700
Breno Leitao <[email protected]> wrote:

> Exposing function sock_use_custom_sol_socket(), so it could be used by
> io_uring subsystem.
>
> This function will be used in the function io_uring_cmd_setsockopt() in
> the coming patch, so, let's move it to the socket.h header file.

Hi,
this description doesn't seem to match the code change below...

Hugo Villeneuve.


> Signed-off-by: Breno Leitao <[email protected]>
> ---
> include/linux/net.h | 5 +++++
> net/socket.c | 5 -----
> 2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/include/linux/net.h b/include/linux/net.h
> index 41c608c1b02c..14a956e4530e 100644
> --- a/include/linux/net.h
> +++ b/include/linux/net.h
> @@ -355,4 +355,9 @@ u32 kernel_sock_ip_overhead(struct sock *sk);
> #define MODULE_ALIAS_NET_PF_PROTO_NAME(pf, proto, name) \
> MODULE_ALIAS("net-pf-" __stringify(pf) "-proto-" __stringify(proto) \
> name)
> +
> +static inline bool sock_use_custom_sol_socket(const struct socket *sock)
> +{
> + return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
> +}
> #endif /* _LINUX_NET_H */
> diff --git a/net/socket.c b/net/socket.c
> index 1dc23f5298ba..8df54352af83 100644
> --- a/net/socket.c
> +++ b/net/socket.c
> @@ -2216,11 +2216,6 @@ SYSCALL_DEFINE4(recv, int, fd, void __user *, ubuf, size_t, size,
> return __sys_recvfrom(fd, ubuf, size, flags, NULL, NULL);
> }
>
> -static bool sock_use_custom_sol_socket(const struct socket *sock)
> -{
> - return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
> -}
> -
> /*
> * Set a socket option. Because we don't know the option lengths we have
> * to pass the user mode parameter for the protocols to sort out.
> --
> 2.34.1
>

2023-08-08 21:37:20

by Jeff Moyer

[permalink] [raw]
Subject: Re: [PATCH v2 1/8] net: expose sock_use_custom_sol_socket

Breno Leitao <[email protected]> writes:

> Hello Hugo,
>
> On Tue, Aug 08, 2023 at 12:13:23PM -0400, Hugo Villeneuve wrote:
>> On Tue, 8 Aug 2023 06:40:41 -0700
>> Breno Leitao <[email protected]> wrote:
>>
>> > Exposing function sock_use_custom_sol_socket(), so it could be used by
>> > io_uring subsystem.
>> >
>> > This function will be used in the function io_uring_cmd_setsockopt() in
>> > the coming patch, so, let's move it to the socket.h header file.
>>
>> Hi,
>> this description doesn't seem to match the code change below...
>
> I re-read the patch comment and it seems to match what the code does,
> so, probably this description only makes sense to me (?).
>
> That said, hat have you understood from reading the description above?

The comment states the function prototype is moving to socket.h, but the
patch puts it in net.h.

Cheers,
Jeff

>
> Thanks for the review,
>
>> > ---
>> > include/linux/net.h | 5 +++++
>> > net/socket.c | 5 -----
>> > 2 files changed, 5 insertions(+), 5 deletions(-)
>> >
>> > diff --git a/include/linux/net.h b/include/linux/net.h
>> > index 41c608c1b02c..14a956e4530e 100644
>> > --- a/include/linux/net.h
>> > +++ b/include/linux/net.h
>> > @@ -355,4 +355,9 @@ u32 kernel_sock_ip_overhead(struct sock *sk);
>> > #define MODULE_ALIAS_NET_PF_PROTO_NAME(pf, proto, name) \
>> > MODULE_ALIAS("net-pf-" __stringify(pf) "-proto-" __stringify(proto) \
>> > name)
>> > +
>> > +static inline bool sock_use_custom_sol_socket(const struct socket *sock)
>> > +{
>> > + return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
>> > +}
>> > #endif /* _LINUX_NET_H */
>> > diff --git a/net/socket.c b/net/socket.c
>> > index 1dc23f5298ba..8df54352af83 100644
>> > --- a/net/socket.c
>> > +++ b/net/socket.c
>> > @@ -2216,11 +2216,6 @@ SYSCALL_DEFINE4(recv, int, fd, void __user *, ubuf, size_t, size,
>> > return __sys_recvfrom(fd, ubuf, size, flags, NULL, NULL);
>> > }
>> >
>> > -static bool sock_use_custom_sol_socket(const struct socket *sock)
>> > -{
>> > - return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
>> > -}
>> > -
>> > /*
>> > * Set a socket option. Because we don't know the option lengths we have
>> > * to pass the user mode parameter for the protocols to sort out.
>> > --
>> > 2.34.1
>> >


2023-08-08 23:19:26

by Hugo Villeneuve

[permalink] [raw]
Subject: Re: [PATCH v2 1/8] net: expose sock_use_custom_sol_socket

On Tue, 8 Aug 2023 10:21:03 -0700
Breno Leitao <[email protected]> wrote:

> Hello Hugo,
>
> On Tue, Aug 08, 2023 at 12:13:23PM -0400, Hugo Villeneuve wrote:
> > On Tue, 8 Aug 2023 06:40:41 -0700
> > Breno Leitao <[email protected]> wrote:
> >
> > > Exposing function sock_use_custom_sol_socket(), so it could be used by
> > > io_uring subsystem.
> > >
> > > This function will be used in the function io_uring_cmd_setsockopt() in
> > > the coming patch, so, let's move it to the socket.h header file.
> >
> > Hi,
> > this description doesn't seem to match the code change below...
>
> I re-read the patch comment and it seems to match what the code does,
> so, probably this description only makes sense to me (?).
>
> That said, hat have you understood from reading the description above?
> socket.h
> Thanks for the review,

Hi Breno,
your comments says "move it to the socket.h header file" but it seems
to be moved to the net.h header file?

Hugo Villeneuve


> > > ---
> > > include/linux/net.h | 5 +++++
> > > net/socket.c | 5 -----
> > > 2 files changed, 5 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/include/linux/net.h b/include/linux/net.h
> > > index 41c608c1b02c..14a956e4530e 100644
> > > --- a/include/linux/net.h
> > > +++ b/include/linux/net.h
> > > @@ -355,4 +355,9 @@ u32 kernel_sock_ip_overhead(struct sock *sk);
> > > #define MODULE_ALIAS_NET_PF_PROTO_NAME(pf, proto, name) \
> > > MODULE_ALIAS("net-pf-" __stringify(pf) "-proto-" __stringify(proto) \
> > > name)
> > > +
> > > +static inline bool sock_use_custom_sol_socket(const struct socket *sock)
> > > +{
> > > + return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
> > > +}
> > > #endif /* _LINUX_NET_H */
> > > diff --git a/net/socket.c b/net/socket.c
> > > index 1dc23f5298ba..8df54352af83 100644
> > > --- a/net/socket.c
> > > +++ b/net/socket.c
> > > @@ -2216,11 +2216,6 @@ SYSCALL_DEFINE4(recv, int, fd, void __user *, ubuf, size_t, size,
> > > return __sys_recvfrom(fd, ubuf, size, flags, NULL, NULL);
> > > }
> > >
> > > -static bool sock_use_custom_sol_socket(const struct socket *sock)
> > > -{
> > > - return test_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags);
> > > -}
> > > -
> > > /*
> > > * Set a socket option. Because we don't know the option lengths we have
> > > * to pass the user mode parameter for the protocols to sort out.
> > > --
> > > 2.34.1
> > >

2023-08-09 10:28:21

by Breno Leitao

[permalink] [raw]
Subject: Re: [PATCH v2 1/8] net: expose sock_use_custom_sol_socket

On Tue, Aug 08, 2023 at 01:46:47PM -0400, Hugo Villeneuve wrote:
> On Tue, 8 Aug 2023 10:21:03 -0700
> Breno Leitao <[email protected]> wrote:
>
> > Hello Hugo,
> >
> > On Tue, Aug 08, 2023 at 12:13:23PM -0400, Hugo Villeneuve wrote:
> > > On Tue, 8 Aug 2023 06:40:41 -0700
> > > Breno Leitao <[email protected]> wrote:
> > >
> > > > Exposing function sock_use_custom_sol_socket(), so it could be used by
> > > > io_uring subsystem.
> > > >
> > > > This function will be used in the function io_uring_cmd_setsockopt() in
> > > > the coming patch, so, let's move it to the socket.h header file.
> > >
> > > Hi,
> > > this description doesn't seem to match the code change below...
> >
> > I re-read the patch comment and it seems to match what the code does,
> > so, probably this description only makes sense to me (?).
> >
> > That said, hat have you understood from reading the description above?
> > socket.h
> > Thanks for the review,
>
> Hi Breno,
> your comments says "move it to the socket.h header file" but it seems
> to be moved to the net.h header file?

Gotcha. Thanks. I will update.