From patchwork Thu Jun 15 00:23:58 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: YUAN Linyu X-Patchwork-Id: 776050 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3wp44l1wC2z9sDB for ; Thu, 15 Jun 2017 10:24:23 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751623AbdFOAYC convert rfc822-to-8bit (ORCPT ); Wed, 14 Jun 2017 20:24:02 -0400 Received: from cnshjsmin03.alcatel-sbell.com.cn ([116.246.26.71]:43923 "EHLO cnshjsmin03.alcatel-sbell.com.cn" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750768AbdFOAYB (ORCPT ); Wed, 14 Jun 2017 20:24:01 -0400 X-AuditID: ac189297-f796d6d00000230c-ec-5941d39fed52 Received: from CNSHJCASHUB01.ad4.ad.alcatel.com (Unknown_Domain [135.251.50.71]) (using TLS with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by cnshjsmin03.alcatel-sbell.com.cn (Symantec Messaging Gateway) with SMTP id 48.77.08972.F93D1495; Thu, 15 Jun 2017 08:23:59 +0800 (HKT) Received: from CNSHJMBX02.ad4.ad.alcatel.com ([135.251.50.102]) by CNSHJCASHUB01.ad4.ad.alcatel.com ([135.251.50.71]) with mapi id 14.03.0319.002; Thu, 15 Jun 2017 08:23:59 +0800 From: YUAN Linyu To: Johannes Berg , "netdev@vger.kernel.org" CC: Johannes Berg Subject: RE: [RFC] networking: convert many more places to skb_put_zero() Thread-Topic: [RFC] networking: convert many more places to skb_put_zero() Thread-Index: AQHS5UtRz9jv/VKL9UmeFe1Us+P8rKIlDmmQ Date: Thu, 15 Jun 2017 00:23:58 +0000 Message-ID: <8729016553E3654398EA69218DA29EEF15BC8D22@cnshjmbx02> References: <20170614201748.28213-1-johannes@sipsolutions.net> In-Reply-To: <20170614201748.28213-1-johannes@sipsolutions.net> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [135.251.10.22] MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprJIsWRmVeSWpSXmKPExsXS/tvIXXf+ZcdIg32PDSwerZjFbvFxwycW i2MLxByYPRbvecnk0d+7jcXj8ya5AOYoLpuU1JzMstQifbsErozeBdtZC6YIVkx61MLSwHid p4uRk0NCwERiw/XPrBC2mMSFe+vZQGwhgZ1MEkc+B3YxcgHZ2xgl9m76wNjFyMHBJmAk8a1d FMQUEUiSePuxHqScWUBb4u3v2WCtwgKeEsd/vwcbKSLgJXH58U8WCNtIYu/P5+wgNouAqsSD /qeMIDavgKPEvrMLmSDW2kk83P8CrIZTwF7i5cZWsBpGAVmJaY/uM0HsEpe49WQ+E8TJAhJL 9pxnhrBFJV4+/gf1iqLExjObWSHqdSQW7P7EBnPnsoWvmSH2CkqcnPmEZQKj2CwkY2chaZmF pGUWkpYFjCyrGBWS84ozsopzM/MMjPUSc5ITS1JzdIuTUnNy9JLzc/WS8zYxAiNsjcSk6TsY jx3wPsQowMGoxMPLYOEYKcSaWFZcmXuIUYKDWUmEV+0SUIg3JbGyKrUoP76oNCe1+BCjNAeL kjhv8ZL9EUIC6UCzs1NTC1KLYLJMHJxSDYxsxZvyFumfqNvSwXmui+PT+/OaMd8e2LcYKXTF Lk31MH6ekSCpwqRwu0nb38h5zWqfA5XfGDPdrzT9+WXhIaz8V+Yvj9Qqk92nJj07FfLC5378 qcbaL7d4bUveO+79w8KdvenM2TAJVxPvJxeCpU3uu/xe58J5ufZZ+J2c3Uu+xE6as28Ph6MS S3FGoqEWc1FxIgA18kmyrAIAAA== Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Hi, Indeed, it find more. Compare with my patch, still lost pattern like below, 1. sctp and openvswitch kfree_skb(skb); if (padlen) { - u8 *pad = skb_put(nskb, padlen); - memset(pad, 0, padlen); + skb_put_zero(nskb, padlen); I will send a separate patch for ipv6/ndisc.c once spatch done. > -----Original Message----- > From: netdev-owner@vger.kernel.org [mailto:netdev-owner@vger.kernel.org] > On Behalf Of Johannes Berg > Sent: Thursday, June 15, 2017 4:18 AM > To: netdev@vger.kernel.org > Cc: Johannes Berg > Subject: [RFC] networking: convert many more places to skb_put_zero() > > From: Johannes Berg > > There were many places that my previous spatch didn't find, > as pointed out by yuan linyu in various patches. > > The following spatch found many more and also removes the > now unnecessary casts: > > @@ > identifier p, p2; > expression len; > expression skb; > type t, t2; > @@ > ( > -p = skb_put(skb, len); > +p = skb_put_zero(skb, len); > | > -p = (t)skb_put(skb, len); > +p = skb_put_zero(skb, len); > ) > ( > p2 = (t2)p; > -memset(p2, 0, len); > | > -memset(p, 0, len); > ) > > @@ > type t, t2; > identifier p, p2; > expression skb; > @@ > t *p; > ... > ( > -p = skb_put(skb, sizeof(t)); > +p = skb_put_zero(skb, sizeof(t)); > | > -p = (t *)skb_put(skb, sizeof(t)); > +p = skb_put_zero(skb, sizeof(t)); > ) > ( > p2 = (t2)p; > -memset(p2, 0, sizeof(*p)); > | > -memset(p, 0, sizeof(*p)); > ) > --- a/net/sctp/output.c +++ b/net/sctp/output.c @@ -463,7 +463,7 @@ static int sctp_packet_pack(struct sctp_packet *packet, padding = SCTP_PAD4(chunk->skb->len) - chunk->skb->len; if (padding) - memset(skb_put(chunk->skb, padding), 0, padding); + skb_put_zero(chunk->skb, padding); --- a/net/dsa/tag_trailer.c +++ b/net/dsa/tag_trailer.c @@ -43,8 +43,7 @@ static struct sk_buff *trailer_xmit(struct sk_buff *skb, struct net_device *dev)