On 08/08/2017 03:10 AM, Bob Peterson wrote:
| | Signed-off-by: Guoqing Jiang <gqji...@suse.com>
| | ---
| |  fs/dlm/lowcomms.c | 2 +-
| |  1 file changed, 1 insertion(+), 1 deletion(-)
| |
| | diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c
| | index 9382db9..4813d0e 100644
| | --- a/fs/dlm/lowcomms.c
| | +++ b/fs/dlm/lowcomms.c
| | @@ -729,7 +729,7 @@ static int tcp_accept_from_sock(struct connection *con)
| |     mutex_unlock(&connections_lock);
| |
| |     memset(&peeraddr, 0, sizeof(peeraddr));
| | -   result = sock_create_kern(&init_net, dlm_local_addr[0]->ss_family,
| | +   result = sock_create_lite(dlm_local_addr[0]->ss_family,
| |                               SOCK_STREAM, IPPROTO_TCP, &newsock);
| |     if (result < 0)
| |             return -ENOMEM;
|
| Isn't this also a problem for the sctp equivalent, sctp_connect_to_sock?
|
| Regards,
|
| Bob Peterson
| Red Hat File Systems
|

In fact, I see 5 different calls to sock_create_kern in DLM.
Shouldn't it be done to all of them?

Only this one called accept immediately after the socket is created, so others probably are safe. Plus, the sock is used after sock_create_kern, so I am not
sure it can be replaced with sock_create_lite.

        result = sock_create_kern(&init_net, dlm_local_addr[0]->ss_family,
                                  SOCK_STREAM, IPPROTO_SCTP, &sock);
        ...
        sock->sk->sk_user_data = con;

One could also argue that sock_create_kern should itself be fixed,
not its callers.

Pls see https://patchwork.ozlabs.org/patch/780356/ for more infos.

Thanks,
GUoqing

Reply via email to