Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp4590021ybg; Mon, 8 Jun 2020 11:38:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzMV6LFcXXRSdM3ODVMRqDjqLbYvPr7gNBVk+ok/IeBRkImblHxInt4zCYYjKmYRZIVasKe X-Received: by 2002:a17:906:7083:: with SMTP id b3mr21242594ejk.57.1591641527725; Mon, 08 Jun 2020 11:38:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591641527; cv=none; d=google.com; s=arc-20160816; b=JlIKpgsZlsjnJnJhy1EJyuwk7IGYSaJJW2owCtZQOnwzjlXOQaGe7XJRB1dSM6lWeO WqeSJHuk2DPrx0RBWfeAKmoVD5gabpfn2Ko8AmjCFpY5RDRCma3ORAwkQKmCxGhAcWwj cD6mwcYqB31Ybp4qXwUbsZ1JplolysFApdy0SLf0fA9XO3MWYD4Nye2cClBNrBbsNKyN JuF0Tx45S0RvYE5zx9plOzXW2i/5iWBdUNKcIQSNvjG6SCq3GGB0sO44q7sisXllov3t yoQS6AtFeH7ER5FVTS9QICHYUR7dvgJy1LrTIaMywI2U354mgZnoEVYlEyFbngPxbnvi Or9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :message-id:in-reply-to:subject:cc:to:from:date; bh=gmHYrdm6pnLWsMMXk1/cpi+azUKbloItbZrOkIlndRU=; b=g0z/GGELCa+DtDXI2Ug+ljsAvz0WBjV1WV7NVfJqXMvDvGpHTMrL029CqlkuIjXn9v l6lgZTPwN78DHGQl3Uv9vQC4R+JaFXuZZPLbXiZUi8t9BPx+6IONuLrHm6gPhUVSQkqH 9F7uhvgXjd8jWhU/oAIZWMiBOTn+eEd4CJsHWuc7IF3vcwEQj+PZ8tbWMmaICNBEhfLk i+xUiijPntPQNTPeQwCwYgKOfahQGbvCkN2gFfKXlDz/tz2ziEBEPPxI/Gu59H190mr8 3O/NJH6w4QTsqIo+K4914A6q1g+n8dShtMFgwxBil/wItT2pOC+Uae1k/1sdNF0WvDdp 0xlg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dt7si8835220ejb.395.2020.06.08.11.38.24; Mon, 08 Jun 2020 11:38:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725954AbgFHSge (ORCPT + 99 others); Mon, 8 Jun 2020 14:36:34 -0400 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:61224 "EHLO mail2-relais-roc.national.inria.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725280AbgFHSge (ORCPT ); Mon, 8 Jun 2020 14:36:34 -0400 X-IronPort-AV: E=Sophos;i="5.73,487,1583190000"; d="scan'208";a="453622896" Received: from abo-173-121-68.mrs.modulonet.fr (HELO hadrien) ([85.68.121.173]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2020 20:36:32 +0200 Date: Mon, 8 Jun 2020 20:36:31 +0200 (CEST) From: Julia Lawall X-X-Sender: jll@hadrien To: Markus Elfring cc: Denis Efremov , Coccinelle , Gilles Muller , Masahiro Yamada , Michal Marek , Nicolas Palix , kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 2/4] coccinelle: api: extend memdup_user rule with vmemdup_user() In-Reply-To: <6c9c6a4c-c305-ddab-8a1b-e4dc448d643f@web.de> Message-ID: References: <6c9c6a4c-c305-ddab-8a1b-e4dc448d643f@web.de> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323329-1412814973-1591641392=:3136" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-1412814973-1591641392=:3136 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT On Mon, 8 Jun 2020, Markus Elfring wrote: > … > +++ b/scripts/coccinelle/api/memdup_user.cocci > @@ -39,6 +39,28 @@ … > … > > +@depends on patch@ > > +expression from,to,size; > > +identifier l1,l2; > > +@@ > > + > > +- to = \(kvmalloc\|kvzalloc\)(size,\(GFP_KERNEL\|GFP_USER\)); > > ++ to = vmemdup_user(from,size); > > I suggest to combine the desired adjustment with the previous SmPL rule > by using another disjunction. > > > > +@rv depends on !patch@ > > +expression from,to,size; > > +position p; > > +statement S1,S2; > > +@@ > > + > > +* to = \(kvmalloc@p\|kvzalloc@p\)(size,\(GFP_KERNEL\|GFP_USER\)); > > + if (to==NULL || ...) S1 > > + if (copy_from_user(to, from, size) != 0) > > + S2 > > How does the SmPL asterisk functionality fit to the operation > modes “org” and “report”? Make coccicheck uses --no-show-diff for org and report modes, so the * has no effect in those cases. julia --8323329-1412814973-1591641392=:3136--