Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754803AbdCBQuC (ORCPT ); Thu, 2 Mar 2017 11:50:02 -0500 Received: from mout.kundenserver.de ([212.227.126.187]:61642 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753337AbdCBQsW (ORCPT ); Thu, 2 Mar 2017 11:48:22 -0500 From: Arnd Bergmann To: kasan-dev@googlegroups.com Cc: Andrey Ryabinin , Alexander Potapenko , Dmitry Vyukov , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-wireless@vger.kernel.org, kernel-build-reports@lists.linaro.org, "David S . Miller" , Arnd Bergmann Subject: [PATCH 19/26] [media] r820t: mark register functions as noinline_for_kasan Date: Thu, 2 Mar 2017 17:38:27 +0100 Message-Id: <20170302163834.2273519-20-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 In-Reply-To: <20170302163834.2273519-1-arnd@arndb.de> References: <20170302163834.2273519-1-arnd@arndb.de> X-Provags-ID: V03:K0:JYEnyAQjpxdncraGr49Q2ijC1c9X5FfQDjT32cvnJ3LakGJkp1P BOXevN12m17sguKiYPnnhRXkC1gKk0lT11nsGkyaTDzHnBPc9DaAptoAbr3GpeF7W+7HkJE FV4JuQURhcZMADF+9CuzBo2IcVKVYSu+UaAlQWT4xTRGAHq9myGKTChqbg8uzv6i26xVSsY fV6YsREkMPEqciEDI7N1g== X-UI-Out-Filterresults: notjunk:1;V01:K0:3DwSJqQDXJM=:pq618xqfmS5aWvTbxsd4mw UpQBlsOXDClIE7DwWnT8HQhxQyNBnMtQBAKPA8IOHpq4FOa+c1gYueWa/dzIvjK8ax6hX2d8y ZFN3BCi9gpNq8XZtJ3iB3a80n9pXyWFu/xH35zN3f8oCLsYJWEqL85Bv09Kr84xAGi0FzcWk7 LPuvHAOvNfSBMIVILEZ9o+jaLCzXyb2q2qaJ1d7yxLqHKS2yFYmhd9WgQ0459gBA8iJjyzxxm s4OFE603vkIgcVjnhljcCLr0qvapeSA4gLmS/6Y/LEJNzLya//pneg9sMDGy4IQ7/fRLYyxtg RT0b6V0erEe1dU76P3aCavq1QJYiMhNdOALdMiSJDTN0BKGCwseq7o+MP9N032fJTjWVXPp6s ixuBTEJvWKvbCLDfXfEXkflF4eeIxVz6x37ed+4Ffa+EeMWbDZiJOmeoCkRRtXMbizknDRVF3 ft+SlMza1zP1W89BKvfSaiG+XM79fvYwUp8Yx0AOP2CGMoWWeog879c+F61sTtelYYOu0wyMe xJ+T3vfZCFPEJY7id6AYgz/qG6mEDtilK4E6bsKp8XGJOtTujNdmWTX9YLJte+YVRlCkCudTY RLB7LVHSUPvCo16e96BclL2Stztr0wSsx8fG6X52BlyLYH0D+4EOZSOl3HJnJgt7rb+020R3M q8XLr0G2lDLiFc+ZsrTgz6FCoFc4iZWn710LVEDB3AnLw3/H5flrZfF3/p74x5ohVs4I= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1476 Lines: 40 With KASAN, we get an overly long stack frame due to inlining the register access function: drivers/media/tuners/r820t.c: In function 'generic_set_freq.isra.7': drivers/media/tuners/r820t.c:1334:1: error: the frame size of 2880 bytes is larger than 2048 bytes [-Werror=frame-larger-than=] An earlier patch I tried used an open-coded r820t_write_reg() implementation that may have been more efficent, while this version simply adds the annotation, which has a lower risk for regressions. Signed-off-by: Arnd Bergmann --- drivers/media/tuners/r820t.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/media/tuners/r820t.c b/drivers/media/tuners/r820t.c index ba80376a3b86..0fbfa6416e38 100644 --- a/drivers/media/tuners/r820t.c +++ b/drivers/media/tuners/r820t.c @@ -396,7 +396,7 @@ static int r820t_write(struct r820t_priv *priv, u8 reg, const u8 *val, return 0; } -static int r820t_write_reg(struct r820t_priv *priv, u8 reg, u8 val) +static noinline_for_kasan int r820t_write_reg(struct r820t_priv *priv, u8 reg, u8 val) { return r820t_write(priv, reg, &val, 1); } @@ -411,7 +411,7 @@ static int r820t_read_cache_reg(struct r820t_priv *priv, int reg) return -EINVAL; } -static int r820t_write_reg_mask(struct r820t_priv *priv, u8 reg, u8 val, +static noinline_for_kasan int r820t_write_reg_mask(struct r820t_priv *priv, u8 reg, u8 val, u8 bit_mask) { int rc = r820t_read_cache_reg(priv, reg); -- 2.9.0