{"id":811323,"url":"http://patchwork.ozlabs.org/api/1.2/patches/811323/?format=json","web_url":"http://patchwork.ozlabs.org/project/netdev/patch/45aab5effc0c424a992646a97cf2ec14-mfwitten@gmail.com/","project":{"id":7,"url":"http://patchwork.ozlabs.org/api/1.2/projects/7/?format=json","name":"Linux network development","link_name":"netdev","list_id":"netdev.vger.kernel.org","list_email":"netdev@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<45aab5effc0c424a992646a97cf2ec14-mfwitten@gmail.com>","list_archive_url":null,"date":"2017-09-08T05:05:37","name":"[0/3] net: TCP/IP: A few minor cleanups","commit_ref":null,"pull_url":null,"state":"deferred","archived":true,"hash":"67e6be2ac7d4845fa001fdf6f948f3792360fdc5","submitter":{"id":7859,"url":"http://patchwork.ozlabs.org/api/1.2/people/7859/?format=json","name":"Michael Witten","email":"mfwitten@gmail.com"},"delegate":{"id":34,"url":"http://patchwork.ozlabs.org/api/1.2/users/34/?format=json","username":"davem","first_name":"David","last_name":"Miller","email":"davem@davemloft.net"},"mbox":"http://patchwork.ozlabs.org/project/netdev/patch/45aab5effc0c424a992646a97cf2ec14-mfwitten@gmail.com/mbox/","series":[],"comments":"http://patchwork.ozlabs.org/api/patches/811323/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/811323/checks/","tags":{},"related":[],"headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"lsL5C4Uj\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xpRNp1J04z9t2M\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri,  8 Sep 2017 15:54:50 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1754257AbdIHFyf (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tFri, 8 Sep 2017 01:54:35 -0400","from mail-wr0-f194.google.com ([209.85.128.194]:34637 \"EHLO\n\tmail-wr0-f194.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751088AbdIHFye (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Fri, 8 Sep 2017 01:54:34 -0400","by mail-wr0-f194.google.com with SMTP id k20so752267wre.1;\n\tThu, 07 Sep 2017 22:54:33 -0700 (PDT)","from gmail.com ([89.35.178.104]) by smtp.gmail.com with ESMTPSA id\n\tc78sm1392001wmd.7.2017.09.07.22.54.30\n\t(version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);\n\tThu, 07 Sep 2017 22:54:31 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20161025;\n\th=subject:date:from:to:cc:message-id;\n\tbh=zfGi0Nf8/13FNpyRZQEI6vvbs5RXp6S+b2BZZzYwgzI=;\n\tb=lsL5C4UjRgOQJDbbAGYaYzvma8pBCcEHbRiqzBWSqigZv18emHqtQ5dwoe/iR+T68d\n\t4kASGkf/Yuz35YIuuTekI4/TOd5ILcKKWCbPg8PilqN/K2Nz6l0FR59nITNw1JnlFF4E\n\tnh3CFtNFajQn3Xyd4dzCSqvFwl8WLG3DHbIQyqAHx7vohCsOESiYi/LFZamZRiIHs4bc\n\tAcHryBZ9HEPckj6B7Mm+DoBSKjGfUaHbWm0iGbgXzrXVgFUGkAIMBHtyq04ng+3sOX3K\n\tklt9VupgWzsQyGEcQ+bxESAypxEHzcCcJwWvGJRjfkXQHLoIICrLqxT9SWeYSxwdisIs\n\tybOw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:subject:date:from:to:cc:message-id;\n\tbh=zfGi0Nf8/13FNpyRZQEI6vvbs5RXp6S+b2BZZzYwgzI=;\n\tb=q9Rah+yFNHG6rXxl0kxOzeqNbk0FkUdYxVpxv4Fxotbq2USpSq3VFlQ2RcOX4JBXUE\n\tDdlB2dUKOGHb9Bm18FYl/g3dQDQ9c2hjhxq59ViMRXYqDrfQSN79l4/+J5Amka2GsE+e\n\tLVI6zgtLV4GazFvNXXVWAtd8NJVk4vJI98hChjxqagKrtKJiDcMggqhTlbqWxg936FEM\n\t4ScP4tlClWmaLG5gJQ++Aa+2PKU0eFw3bI3tvNjXVrL3nlWidz3qxM0wDtOTaGLaO9j6\n\t+9y3WjA9l9siNJ1oPedHpEJp9dCoZxoUD8zyrfdHGLvHhX+ENuw01f7OVwM24cHX7jw+\n\t9/oA==","X-Gm-Message-State":"AHPjjUhjFmqXx6TbOGSBIEV/+b6rTtGFSiuOyHqnb7ni8y65lwx6+MFZ\n\tuJRqPfBjuH1po+/m","X-Google-Smtp-Source":"ADKCNb76tWbfkuWvBosdtbiNozhgQyYIQlxUET00VDhWhODNcEZKeH6QY5wh/LKByxVzvKQG3QbQQw==","X-Received":"by 10.223.130.77 with SMTP id 71mr1018899wrb.247.1504850072386; \n\tThu, 07 Sep 2017 22:54:32 -0700 (PDT)","Subject":"[PATCH 0/3] net: TCP/IP: A few minor cleanups","Date":"Fri, 08 Sep 2017 05:05:37 -0000","From":"Michael Witten <mfwitten@gmail.com>","To":"\"David S. Miller\" <davem@davemloft.net>,\n\tAlexey Kuznetsov <kuznet@ms2.inr.ac.ru>,\n\tHideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>","Cc":"netdev@vger.kernel.org, linux-kernel@vger.kernel.org","Message-ID":"<45aab5effc0c424a992646a97cf2ec14-mfwitten@gmail.com>","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"},"content":"The following patch series is an ad hoc \"cleanup\" that I made\nwhile perusing the code (I'm not well versed in this code, so I\nwould not be surprised if there were objections to the changes):\n\n  [1] net: __sock_cmsg_send(): Remove unused parameter `msg'\n  [2] net: inet_recvmsg(): Remove unnecessary bitwise operation.\n  [3] net: skb_queue_purge(): lock/unlock the list only once\n\nEach patch will be sent as an individiual email; the total diff\nis appended below for your convenience.\n\nYou may also fetch these patches from GitHub:\n\n  git checkout -b test 5969d1bb3082b41eba8fd2c826559abe38ccb6df\n  git pull https://github.com/mfwitten/linux.git net/tcp-ip/01-cleanup/00\n\nOverall:\n\n  include/net/sock.h     | 2 +-\n  net/core/skbuff.c      | 6 +++++-\n  net/core/sock.c        | 4 ++--\n  net/ipv4/af_inet.c     | 2 +-\n  net/ipv4/ip_sockglue.c | 2 +-\n  net/ipv6/datagram.c    | 2 +-\n  6 files changed, 11 insertions(+), 7 deletions(-)\n\nSincerly,\nMichael Witten","diff":"diff --git a/include/net/sock.h b/include/net/sock.h\nindex 03a362568357..83373d7148a9 100644\n--- a/include/net/sock.h\n+++ b/include/net/sock.h\n@@ -1562,7 +1562,7 @@ struct sockcm_cookie {\n \tu16 tsflags;\n };\n \n-int __sock_cmsg_send(struct sock *sk, struct msghdr *msg, struct cmsghdr *cmsg,\n+int __sock_cmsg_send(struct sock *sk, struct cmsghdr *cmsg,\n \t\t     struct sockcm_cookie *sockc);\n int sock_cmsg_send(struct sock *sk, struct msghdr *msg,\n \t\t   struct sockcm_cookie *sockc);\ndiff --git a/net/core/sock.c b/net/core/sock.c\nindex 9b7b6bbb2a23..425e03fe1c56 100644\n--- a/net/core/sock.c\n+++ b/net/core/sock.c\n@@ -2091,7 +2091,7 @@ struct sk_buff *sock_alloc_send_skb(struct sock *sk, unsigned long size,\n }\n EXPORT_SYMBOL(sock_alloc_send_skb);\n \n-int __sock_cmsg_send(struct sock *sk, struct msghdr *msg, struct cmsghdr *cmsg,\n+int __sock_cmsg_send(struct sock *sk, struct cmsghdr *cmsg,\n \t\t     struct sockcm_cookie *sockc)\n {\n \tu32 tsflags;\n@@ -2137,7 +2137,7 @@ int sock_cmsg_send(struct sock *sk, struct msghdr *msg,\n \t\t\treturn -EINVAL;\n \t\tif (cmsg->cmsg_level != SOL_SOCKET)\n \t\t\tcontinue;\n-\t\tret = __sock_cmsg_send(sk, msg, cmsg, sockc);\n+\t\tret = __sock_cmsg_send(sk, cmsg, sockc);\n \t\tif (ret)\n \t\t\treturn ret;\n \t}\ndiff --git a/net/ipv4/ip_sockglue.c b/net/ipv4/ip_sockglue.c\nindex e558e4f9597b..c79b7822b0b9 100644\n--- a/net/ipv4/ip_sockglue.c\n+++ b/net/ipv4/ip_sockglue.c\n@@ -263,7 +263,7 @@ int ip_cmsg_send(struct sock *sk, struct msghdr *msg, struct ipcm_cookie *ipc,\n \t\t}\n #endif\n \t\tif (cmsg->cmsg_level == SOL_SOCKET) {\n-\t\t\terr = __sock_cmsg_send(sk, msg, cmsg, &ipc->sockc);\n+\t\t\terr = __sock_cmsg_send(sk, cmsg, &ipc->sockc);\n \t\t\tif (err)\n \t\t\t\treturn err;\n \t\t\tcontinue;\ndiff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c\nindex a1f918713006..1d1926a4cbe2 100644\n--- a/net/ipv6/datagram.c\n+++ b/net/ipv6/datagram.c\n@@ -756,7 +756,7 @@ int ip6_datagram_send_ctl(struct net *net, struct sock *sk,\n \t\t}\n \n \t\tif (cmsg->cmsg_level == SOL_SOCKET) {\n-\t\t\terr = __sock_cmsg_send(sk, msg, cmsg, sockc);\n+\t\t\terr = __sock_cmsg_send(sk, cmsg, sockc);\n \t\t\tif (err)\n \t\t\t\treturn err;\n \t\t\tcontinue;\ndiff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c\nindex e31108e5ef79..2dbed042a412 100644\n--- a/net/ipv4/af_inet.c\n+++ b/net/ipv4/af_inet.c\n@@ -791,7 +791,7 @@ int inet_recvmsg(struct socket *sock, struct msghdr *msg, size_t size,\n \tsock_rps_record_flow(sk);\n \n \terr = sk->sk_prot->recvmsg(sk, msg, size, flags & MSG_DONTWAIT,\n-\t\t\t\t   flags & ~MSG_DONTWAIT, &addr_len);\n+\t\t\t\t   flags, &addr_len);\n \tif (err >= 0)\n \t\tmsg->msg_namelen = addr_len;\n \treturn err;\ndiff --git a/net/core/skbuff.c b/net/core/skbuff.c\nindex 68065d7d383f..66c0731a2a5f 100644\n--- a/net/core/skbuff.c\n+++ b/net/core/skbuff.c\n@@ -2834,9 +2834,13 @@ EXPORT_SYMBOL(skb_dequeue_tail);\n  */\n void skb_queue_purge(struct sk_buff_head *list)\n {\n+\tunsigned long flags;\n \tstruct sk_buff *skb;\n-\twhile ((skb = skb_dequeue(list)) != NULL)\n+\n+\tspin_lock_irqsave(&list->lock, flags);\n+\twhile ((skb = __skb_dequeue(list)) != NULL)\n \t\tkfree_skb(skb);\n+\tspin_unlock_irqrestore(&list->lock, flags);\n }\n EXPORT_SYMBOL(skb_queue_purge);\n \n","prefixes":["0/3"]}