From patchwork Tue Mar 13 20:58:39 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 131533 Delivered-To: patch@linaro.org Received: by 10.46.84.17 with SMTP id i17csp45948ljb; Tue, 13 Mar 2018 13:59:37 -0700 (PDT) X-Google-Smtp-Source: AG47ELsi3Ls5udTXxuKU07riJD6QzY9MK37NcqzgHAPSBMNo3Mt+oto5Kdm1P7UVsuHTKXxA2W2h X-Received: by 10.99.170.73 with SMTP id x9mr1564745pgo.393.1520974776995; Tue, 13 Mar 2018 13:59:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1520974776; cv=none; d=google.com; s=arc-20160816; b=RB/5sFKo8lo9Lzx6IcJcS6sUUAM9UdFLOOavqhVw8SUyPmf5o6QHJT5hOEdn97I+b0 Yy8qos06dKUAPn48Z3XwdyKAJOUWKNUe6yApfDs80PLvH5X5TVF3hEJNJMonjZRNN8Lk jrnzFW+KXbb0PEH3RpzRL8NZzwNb756o/JFI8vwCpMcQOBK+koYsrxoJir8GSi8yZjgg 8bbXrVIFuVR3QpodSnJd+WgC56f/JhiqJe73O1KviJ8JrdrHDk5mFgRVM/nvhnFVzFvc siS9a0SGVy3/H8uuRxM0aYaAzX93kbb8YKlfaN4JLllSVKk1SN+iZmqSmdrGP1ovBR9i ghpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=0EiS1V+dbO7/tKg4UFUCHQoIFj0bg6RjcwIdGdPiDNw=; b=GRrR48yxIDm8f9CmyyManhQhmVadUw1XuzyNlFPzE0aQhpkf1Lf8KopkqREUb62eGJ +V8S803x5aRGDw5lMY8gDB4SETgZ35HCjI4jLpMG+3pzGbRUpouCXncc93O2BpyTwF7e 2WXDV2ueXWDJO+0KRb2kelm+JWNb2AwUcu47eSOxLJNMqlWpl4oanqt3Z3ViysKV/hNL BCn0rdET7317E5czO4iP0TpbAEBE+GXj18S5NDmorI/A2xLUm/1diUrIhlLR0/YVAir8 8fWFE60lCBz0I6/VTAnM50v7bvio1mAoF42OlZRNk8WsIfNUEj5pkb0VOUjXk/01ePcM 2T6g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 63si669856pgi.376.2018.03.13.13.59.36; Tue, 13 Mar 2018 13:59:36 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753258AbeCMU7e (ORCPT + 28 others); Tue, 13 Mar 2018 16:59:34 -0400 Received: from mout.kundenserver.de ([217.72.192.75]:32881 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751606AbeCMU7c (ORCPT ); Tue, 13 Mar 2018 16:59:32 -0400 Received: from wuerfel.lan ([95.208.111.237]) by mrelayeu.kundenserver.de (mreue105 [212.227.15.145]) with ESMTPA (Nemesis) id 0MWBZZ-1f78VJ3Z8L-00XJJo; Tue, 13 Mar 2018 21:59:00 +0100 From: Arnd Bergmann To: "David S. Miller" Cc: "Gustavo A . R . Silva" , Arnd Bergmann , Dmitry Safonov , Johannes Berg , Eric Dumazet , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] pktgen: use dynamic allocation for debug print buffer Date: Tue, 13 Mar 2018 21:58:39 +0100 Message-Id: <20180313205856.3309750-1-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 X-Provags-ID: V03:K0:gYPnWXSgfjW9oWtrgm3ai6EMJ+l6x8vwrYFPhfHrDIyB/3JMAHT EnJMnbGTwEQDBbeVNgkBmmZ9irwis6umRG7FWSb3qBxBn0ijHQXV1/pal/KYBbcw3SQqhnC DmdMNbJ5+ddONIM3Wyjv7S48dJXfDJ7iMzBTU/Bs6LSYvQYYOKf79kcincZ6RnksmCXl4qN VukMX/oe7sJO2Bs8MTo7w== X-UI-Out-Filterresults: notjunk:1; V01:K0:tMqcks/Hy3U=:6s5tbNLixJoAduYSOOQtnA 9jJtesmpS78tWJ5BN+5OTszYvYQKO4lW8a9yMz/CRtHGZpH4rfYMC8t+JI/WpCxTqZ4quTL0p ONT9AsOvtzEPTq7CE8cb67JnZF3siRpQEBcvwKeSayrurDtYGbX7Sf5yFOSeXU5UrDhqWCZgD FLMTq0hExDk7GfevTlXG7jK4eN04joD5A06UGOzkeQe7kvbFfQAeTeUopER7W1Z6a3gZYLcaC T4pipcpuns8AS5H3+fhZVTqUfeGKWuxPYh08q2H9NN44dJzbJwHmU1pn7u+mmJMaguHMPJVmb /UT60Ff+0td9bzc0jc2SbAVR47L0/haEQacmbilePhQGu43rav2GwWB9IeHHWNZ9fwAg/5Fgy ylWMX58tfIHr9gS2E9NPr58Ygg3ZRbruEaiAKEMEMpC6l9E490tyPExMrlQMvlDP51qng0IkO mlW7Ck/1IyWJIcA7RhWisRsrGqGNhBD1cvLVFtLZGu2+fDmW/Iw13yAIzOlWHMydQqGPlMyYG j3ahcukKZza+JLNnfAF3LlnHQWlKqA6rYOtclJtPhYVINZSeyN6Mg/gvKqRH5lX1P+v2nPhzI +g/jbVwGR2QKcHUiqHs89XP1vKcAZuY29I7GhwgkKiYwFJ9vQodVei0jobBspw69ClpLc9lAQ 20wmTeR/D63EDuuysvJcW4wmN0fhQxFXHQmzqcdJ7ruZS0Z9A1vEz5okCcq8Imm7CuIvJ9rf0 fTO9Plj58yVLud5QaeAVB7k2L7qiVug/Ij2KyA== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org After the removal of the VLA, we get a harmless warning about a large stack frame: net/core/pktgen.c: In function 'pktgen_if_write': net/core/pktgen.c:1710:1: error: the frame size of 1076 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] The function was previously shown to be safe despite hitting the 1024 bye warning level. To get rid of the annoyging warning, while keeping it readable, this changes it to use strndup_user(). Obviously this is not a fast path, so the kmalloc() overhead can be disregarded. Fixes: 35951393bbff ("pktgen: Remove VLA usage") Signed-off-by: Arnd Bergmann --- net/core/pktgen.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) -- 2.9.0 diff --git a/net/core/pktgen.c b/net/core/pktgen.c index de17a9f3e1f6..9216cf99b5a0 100644 --- a/net/core/pktgen.c +++ b/net/core/pktgen.c @@ -906,13 +906,14 @@ static ssize_t pktgen_if_write(struct file *file, i += len; if (debug) { - size_t copy = min_t(size_t, count, 1023); - char tb[1024]; - if (copy_from_user(tb, user_buffer, copy)) - return -EFAULT; - tb[copy] = 0; - pr_debug("%s,%lu buffer -:%s:-\n", - name, (unsigned long)count, tb); + size_t copy = min_t(size_t, count + 1, 1024); + char *tp = strndup_user(user_buffer, copy); + + if (IS_ERR(tp)) + return PTR_ERR(tp); + + pr_debug("%s,%zu buffer -:%s:-\n", name, count, tp); + kfree(buf); } if (!strcmp(name, "min_pkt_size")) {