Received: by 2002:a05:6358:4e97:b0:b3:742d:4702 with SMTP id ce23csp930551rwb; Thu, 18 Aug 2022 15:08:56 -0700 (PDT) X-Google-Smtp-Source: AA6agR44qwOfVFAcX01D6ozekNMY/6WvzfkwMktsADE/SEKO59CU4s/X3Gq1LroLPGymfo5Hg93W X-Received: by 2002:a17:906:8a57:b0:730:8b50:610a with SMTP id gx23-20020a1709068a5700b007308b50610amr2993642ejc.557.1660860536422; Thu, 18 Aug 2022 15:08:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1660860536; cv=none; d=google.com; s=arc-20160816; b=s9UzXGsozM7T8v1ffVl6G87ToCyNz9sjfC2BCAgjf2Gtah9X2+5Rm2yztaSBpM4JyR 6sVkfPFZeqkJraWjnfDsK+JXLDPREEqD1p1UrtscSfASyiCoNmGv6SpWJNaz6f5AfGRb fnqrNdMFanA5rhamZ8Fsk57FCENvP01UjRN542otFb/YytFZtkuu/xW9SNMhG3RKUx62 tHpYLwYy9AepJ0YBOg3OYOnpxrQEqIhrkB2dybhh9q0AZbOvJb0ZlSlJNdQg3dGR4zZr s4Hvmocaac1CY7q59pDb6wl032mWyo6k9WTTwYz6k37ZLJUF856oWfyKlP9969xK4HLn JZ8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=8UP2LBQSsYV7quRbRKCZKUeksr9EZKt394krNhhmV3s=; b=Wwlnn74DusIV68nQ2Q6s9FYYDNgKxkP/0j4A/4iETdRAbsorGHn3NyK28xK6Qcz7UE mDm5E9V+uplkPoP6YI4vGDVfBy6EWCPKwpRjFEg3MxKRKCKEJqkekMXQVrPMvO0vkTjd BArNR6vqUO3/Kx2jw3A/GhSWhGsnsUAgJXPKRBSgvDlW/YE0V4Oigropj4CXhLFJWEdV 5FgeRqsEK3jwH/8DW78GqgKzV1sBs//CvRdssbxBEE/xsyBo4wYoOhPDJrg2ZM9NSWmU 8x4F4YVsW23hVRcgmkKms6r7BD9nr3yhkB5et5CIeETt8YMZENA8F6G7inQucabOOASz KK7w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b="QUU/hQ32"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j35-20020a05640223a300b00445d8daa06esi1806142eda.366.2022.08.18.15.08.30; Thu, 18 Aug 2022 15:08:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b="QUU/hQ32"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237121AbiHRWGD (ORCPT + 99 others); Thu, 18 Aug 2022 18:06:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42340 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232990AbiHRWGA (ORCPT ); Thu, 18 Aug 2022 18:06:00 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 45DB1D21FE for ; Thu, 18 Aug 2022 15:05:58 -0700 (PDT) Received: from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 0E2338B; Fri, 19 Aug 2022 00:05:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1660860355; bh=xD92V269nPxYBK40XY1d1B25dDlefBuRONroqzpcmFY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=QUU/hQ32HHQF3Iy3QdDKQ8vHxfX3BWD5YwCe6g4cz4OhMabwyKJRwPSxJmDyMWfOe o9mQzoOLH8HQPNXzMdOtcgTe04KFBTzwsFMw3jNG7eIiJcaagzZGYK2Sguonkg5VxJ 5c+cckw7toR6l9FhivXRTvYjNMNTgfP1UdrLaxS8= Date: Fri, 19 Aug 2022 01:05:52 +0300 From: Laurent Pinchart To: Wolfram Sang Cc: linux-kernel@vger.kernel.org, Alex Deucher , Christian =?utf-8?B?S8O2bmln?= , "Pan, Xinhui" , David Airlie , Daniel Vetter , Evan Quan , Andrzej Hajda , Neil Armstrong , Robert Foss , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Russell King , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , Chun-Kuang Hu , Philipp Zabel , Matthias Brugger , Sandy Huang , Heiko =?utf-8?Q?St=C3=BCbner?= , Chen-Yu Tsai , Samuel Holland , amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-sunxi@lists.linux.dev Subject: Re: [PATCH] gpu: move from strlcpy with unused retval to strscpy Message-ID: References: <20220818210008.6721-1-wsa+renesas@sang-engineering.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20220818210008.6721-1-wsa+renesas@sang-engineering.com> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Wolfram, Thank you for the patch. On Thu, Aug 18, 2022 at 11:00:07PM +0200, Wolfram Sang wrote: > Follow the advice of the below link and prefer 'strscpy' in this > subsystem. Conversion is 1:1 because the return value is not used. > Generated by a coccinelle script. > > Link: https://lore.kernel.org/r/CAHk-=wgfRnXz0W3D37d01q3JFkr_i_uTL=V6A6G1oUZcprmknw@mail.gmail.com/ > Signed-off-by: Wolfram Sang Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/amd/amdgpu/atom.c | 2 +- > drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c | 2 +- > drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c | 6 +++--- > drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 2 +- > drivers/gpu/drm/display/drm_dp_helper.c | 2 +- > drivers/gpu/drm/display/drm_dp_mst_topology.c | 2 +- > drivers/gpu/drm/drm_mipi_dsi.c | 2 +- > drivers/gpu/drm/i2c/tda998x_drv.c | 2 +- > drivers/gpu/drm/i915/selftests/i915_perf.c | 2 +- > drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c | 2 +- > drivers/gpu/drm/radeon/radeon_atombios.c | 4 ++-- > drivers/gpu/drm/radeon/radeon_combios.c | 4 ++-- > drivers/gpu/drm/rockchip/inno_hdmi.c | 2 +- > drivers/gpu/drm/rockchip/rk3066_hdmi.c | 2 +- > drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c | 2 +- > 15 files changed, 19 insertions(+), 19 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/atom.c b/drivers/gpu/drm/amd/amdgpu/atom.c > index 1c5d9388ad0b..5f610e9a5f0f 100644 > --- a/drivers/gpu/drm/amd/amdgpu/atom.c > +++ b/drivers/gpu/drm/amd/amdgpu/atom.c > @@ -1509,7 +1509,7 @@ struct atom_context *amdgpu_atom_parse(struct card_info *card, void *bios) > str = CSTR(idx); > if (*str != '\0') { > pr_info("ATOM BIOS: %s\n", str); > - strlcpy(ctx->vbios_version, str, sizeof(ctx->vbios_version)); > + strscpy(ctx->vbios_version, str, sizeof(ctx->vbios_version)); > } > > atom_rom_header = (struct _ATOM_ROM_HEADER *)CSTR(base); > diff --git a/drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c b/drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c > index d3fe149d8476..81fb4e5dd804 100644 > --- a/drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c > +++ b/drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c > @@ -794,7 +794,7 @@ void amdgpu_add_thermal_controller(struct amdgpu_device *adev) > struct i2c_board_info info = { }; > const char *name = pp_lib_thermal_controller_names[controller->ucType]; > info.addr = controller->ucI2cAddress >> 1; > - strlcpy(info.type, name, sizeof(info.type)); > + strscpy(info.type, name, sizeof(info.type)); > i2c_new_client_device(&adev->pm.i2c_bus->adapter, &info); > } > } else { > diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c > index 7d2ed0ed2fe2..4efb62bcdb63 100644 > --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c > +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-ahb-audio.c > @@ -542,8 +542,8 @@ static int snd_dw_hdmi_probe(struct platform_device *pdev) > if (ret < 0) > return ret; > > - strlcpy(card->driver, DRIVER_NAME, sizeof(card->driver)); > - strlcpy(card->shortname, "DW-HDMI", sizeof(card->shortname)); > + strscpy(card->driver, DRIVER_NAME, sizeof(card->driver)); > + strscpy(card->shortname, "DW-HDMI", sizeof(card->shortname)); > snprintf(card->longname, sizeof(card->longname), > "%s rev 0x%02x, irq %d", card->shortname, revision, > data->irq); > @@ -561,7 +561,7 @@ static int snd_dw_hdmi_probe(struct platform_device *pdev) > > dw->pcm = pcm; > pcm->private_data = dw; > - strlcpy(pcm->name, DRIVER_NAME, sizeof(pcm->name)); > + strscpy(pcm->name, DRIVER_NAME, sizeof(pcm->name)); > snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_dw_hdmi_ops); > > /* > diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > index 25a60eb4d67c..4f3ae976e677 100644 > --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c > @@ -533,7 +533,7 @@ static struct i2c_adapter *dw_hdmi_i2c_adapter(struct dw_hdmi *hdmi) > adap->owner = THIS_MODULE; > adap->dev.parent = hdmi->dev; > adap->algo = &dw_hdmi_algorithm; > - strlcpy(adap->name, "DesignWare HDMI", sizeof(adap->name)); > + strscpy(adap->name, "DesignWare HDMI", sizeof(adap->name)); > i2c_set_adapdata(adap, hdmi); > > ret = i2c_add_adapter(adap); > diff --git a/drivers/gpu/drm/display/drm_dp_helper.c b/drivers/gpu/drm/display/drm_dp_helper.c > index e5bab236b3ae..10a39b36a661 100644 > --- a/drivers/gpu/drm/display/drm_dp_helper.c > +++ b/drivers/gpu/drm/display/drm_dp_helper.c > @@ -2058,7 +2058,7 @@ int drm_dp_aux_register(struct drm_dp_aux *aux) > aux->ddc.owner = THIS_MODULE; > aux->ddc.dev.parent = aux->dev; > > - strlcpy(aux->ddc.name, aux->name ? aux->name : dev_name(aux->dev), > + strscpy(aux->ddc.name, aux->name ? aux->name : dev_name(aux->dev), > sizeof(aux->ddc.name)); > > ret = drm_dp_aux_register_devnode(aux); > diff --git a/drivers/gpu/drm/display/drm_dp_mst_topology.c b/drivers/gpu/drm/display/drm_dp_mst_topology.c > index 57e65423e50d..6bdf39937054 100644 > --- a/drivers/gpu/drm/display/drm_dp_mst_topology.c > +++ b/drivers/gpu/drm/display/drm_dp_mst_topology.c > @@ -5780,7 +5780,7 @@ static int drm_dp_mst_register_i2c_bus(struct drm_dp_mst_port *port) > aux->ddc.dev.parent = parent_dev; > aux->ddc.dev.of_node = parent_dev->of_node; > > - strlcpy(aux->ddc.name, aux->name ? aux->name : dev_name(parent_dev), > + strscpy(aux->ddc.name, aux->name ? aux->name : dev_name(parent_dev), > sizeof(aux->ddc.name)); > > return i2c_add_adapter(&aux->ddc); > diff --git a/drivers/gpu/drm/drm_mipi_dsi.c b/drivers/gpu/drm/drm_mipi_dsi.c > index c40bde96cfdf..9820b85a34c7 100644 > --- a/drivers/gpu/drm/drm_mipi_dsi.c > +++ b/drivers/gpu/drm/drm_mipi_dsi.c > @@ -223,7 +223,7 @@ mipi_dsi_device_register_full(struct mipi_dsi_host *host, > > dsi->dev.of_node = info->node; > dsi->channel = info->channel; > - strlcpy(dsi->name, info->type, sizeof(dsi->name)); > + strscpy(dsi->name, info->type, sizeof(dsi->name)); > > ret = mipi_dsi_device_add(dsi); > if (ret) { > diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/i2c/tda998x_drv.c > index f8eb6f69be05..d49f0bd8d02c 100644 > --- a/drivers/gpu/drm/i2c/tda998x_drv.c > +++ b/drivers/gpu/drm/i2c/tda998x_drv.c > @@ -1949,7 +1949,7 @@ static int tda998x_create(struct device *dev) > * offset. > */ > memset(&cec_info, 0, sizeof(cec_info)); > - strlcpy(cec_info.type, "tda9950", sizeof(cec_info.type)); > + strscpy(cec_info.type, "tda9950", sizeof(cec_info.type)); > cec_info.addr = priv->cec_addr; > cec_info.platform_data = &priv->cec_glue; > cec_info.irq = client->irq; > diff --git a/drivers/gpu/drm/i915/selftests/i915_perf.c b/drivers/gpu/drm/i915/selftests/i915_perf.c > index 88db2e3d81d0..8f5285654d7a 100644 > --- a/drivers/gpu/drm/i915/selftests/i915_perf.c > +++ b/drivers/gpu/drm/i915/selftests/i915_perf.c > @@ -28,7 +28,7 @@ alloc_empty_config(struct i915_perf *perf) > oa_config->perf = perf; > kref_init(&oa_config->ref); > > - strlcpy(oa_config->uuid, TEST_OA_CONFIG_UUID, sizeof(oa_config->uuid)); > + strscpy(oa_config->uuid, TEST_OA_CONFIG_UUID, sizeof(oa_config->uuid)); > > mutex_lock(&perf->metrics_lock); > > diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c b/drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c > index 6207eac88550..19541d197047 100644 > --- a/drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c > +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c > @@ -292,7 +292,7 @@ static int mtk_hdmi_ddc_probe(struct platform_device *pdev) > return ret; > } > > - strlcpy(ddc->adap.name, "mediatek-hdmi-ddc", sizeof(ddc->adap.name)); > + strscpy(ddc->adap.name, "mediatek-hdmi-ddc", sizeof(ddc->adap.name)); > ddc->adap.owner = THIS_MODULE; > ddc->adap.class = I2C_CLASS_DDC; > ddc->adap.algo = &mtk_hdmi_ddc_algorithm; > diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c > index 28c4413f4dc8..62fbbd6181bc 100644 > --- a/drivers/gpu/drm/radeon/radeon_atombios.c > +++ b/drivers/gpu/drm/radeon/radeon_atombios.c > @@ -2104,7 +2104,7 @@ static int radeon_atombios_parse_power_table_1_3(struct radeon_device *rdev) > const char *name = thermal_controller_names[power_info->info. > ucOverdriveThermalController]; > info.addr = power_info->info.ucOverdriveControllerAddress >> 1; > - strlcpy(info.type, name, sizeof(info.type)); > + strscpy(info.type, name, sizeof(info.type)); > i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info); > } > } > @@ -2354,7 +2354,7 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r > struct i2c_board_info info = { }; > const char *name = pp_lib_thermal_controller_names[controller->ucType]; > info.addr = controller->ucI2cAddress >> 1; > - strlcpy(info.type, name, sizeof(info.type)); > + strscpy(info.type, name, sizeof(info.type)); > i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info); > } > } else { > diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c > index 783a6b8802d5..795c3667f6d6 100644 > --- a/drivers/gpu/drm/radeon/radeon_combios.c > +++ b/drivers/gpu/drm/radeon/radeon_combios.c > @@ -2702,7 +2702,7 @@ void radeon_combios_get_power_modes(struct radeon_device *rdev) > struct i2c_board_info info = { }; > const char *name = thermal_controller_names[thermal_controller]; > info.addr = i2c_addr >> 1; > - strlcpy(info.type, name, sizeof(info.type)); > + strscpy(info.type, name, sizeof(info.type)); > i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info); > } > } > @@ -2719,7 +2719,7 @@ void radeon_combios_get_power_modes(struct radeon_device *rdev) > struct i2c_board_info info = { }; > const char *name = "f75375"; > info.addr = 0x28; > - strlcpy(info.type, name, sizeof(info.type)); > + strscpy(info.type, name, sizeof(info.type)); > i2c_new_client_device(&rdev->pm.i2c_bus->adapter, &info); > DRM_INFO("Possible %s thermal controller at 0x%02x\n", > name, info.addr); > diff --git a/drivers/gpu/drm/rockchip/inno_hdmi.c b/drivers/gpu/drm/rockchip/inno_hdmi.c > index 87b2243ea23e..98ed6cc931d0 100644 > --- a/drivers/gpu/drm/rockchip/inno_hdmi.c > +++ b/drivers/gpu/drm/rockchip/inno_hdmi.c > @@ -797,7 +797,7 @@ static struct i2c_adapter *inno_hdmi_i2c_adapter(struct inno_hdmi *hdmi) > adap->dev.parent = hdmi->dev; > adap->dev.of_node = hdmi->dev->of_node; > adap->algo = &inno_hdmi_algorithm; > - strlcpy(adap->name, "Inno HDMI", sizeof(adap->name)); > + strscpy(adap->name, "Inno HDMI", sizeof(adap->name)); > i2c_set_adapdata(adap, hdmi); > > ret = i2c_add_adapter(adap); > diff --git a/drivers/gpu/drm/rockchip/rk3066_hdmi.c b/drivers/gpu/drm/rockchip/rk3066_hdmi.c > index cf2cf51091a3..bf2924730d84 100644 > --- a/drivers/gpu/drm/rockchip/rk3066_hdmi.c > +++ b/drivers/gpu/drm/rockchip/rk3066_hdmi.c > @@ -730,7 +730,7 @@ static struct i2c_adapter *rk3066_hdmi_i2c_adapter(struct rk3066_hdmi *hdmi) > adap->dev.parent = hdmi->dev; > adap->dev.of_node = hdmi->dev->of_node; > adap->algo = &rk3066_hdmi_algorithm; > - strlcpy(adap->name, "RK3066 HDMI", sizeof(adap->name)); > + strscpy(adap->name, "RK3066 HDMI", sizeof(adap->name)); > i2c_set_adapdata(adap, hdmi); > > ret = i2c_add_adapter(adap); > diff --git a/drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c b/drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c > index c7d7e9fff91c..d1a65a921f5a 100644 > --- a/drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c > +++ b/drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c > @@ -304,7 +304,7 @@ int sun4i_hdmi_i2c_create(struct device *dev, struct sun4i_hdmi *hdmi) > adap->owner = THIS_MODULE; > adap->class = I2C_CLASS_DDC; > adap->algo = &sun4i_hdmi_i2c_algorithm; > - strlcpy(adap->name, "sun4i_hdmi_i2c adapter", sizeof(adap->name)); > + strscpy(adap->name, "sun4i_hdmi_i2c adapter", sizeof(adap->name)); > i2c_set_adapdata(adap, hdmi); > > ret = i2c_add_adapter(adap); -- Regards, Laurent Pinchart