Re: [PATCH] ALSA: hda: intel-sdw-acpi: Use u8 type for link index

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 9/12/23 12:26, Peter Ujfalusi wrote:
> Use consistently u8 for sdw link index. The id is limited to 4, u8 is
> adequate in size to store it.
> 
> This change will also fixes the following compiler warning/error (W=1):
> 
> sound/hda/intel-sdw-acpi.c: In function ‘sdw_intel_acpi_scan’:
> sound/hda/intel-sdw-acpi.c:34:35: error: ‘-subproperties’ directive output may be truncated writing 14 bytes into a region of size between 7 and 17 [-Werror=format-truncation=]
>    34 |                  "mipi-sdw-link-%d-subproperties", i);
>       |                                   ^~~~~~~~~~~~~~
> In function ‘is_link_enabled’,
>     inlined from ‘sdw_intel_scan_controller’ at sound/hda/intel-sdw-acpi.c:106:8,
>     inlined from ‘sdw_intel_acpi_scan’ at sound/hda/intel-sdw-acpi.c:180:9:
> sound/hda/intel-sdw-acpi.c:33:9: note: ‘snprintf’ output between 30 and 40 bytes into a destination of size 32
>    33 |         snprintf(name, sizeof(name),
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    34 |                  "mipi-sdw-link-%d-subproperties", i);
>       |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> 
> The warnings got brought to light by a recent patch upstream:
> commit 6d4ab2e97dcf ("extrawarn: enable format and stringop overflow warnings in W=1")
> 
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@xxxxxxxxxxxxxxx>

Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>


> ---
>  sound/hda/intel-sdw-acpi.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/hda/intel-sdw-acpi.c b/sound/hda/intel-sdw-acpi.c
> index 5cb92f7ccbca..b57d72ea4503 100644
> --- a/sound/hda/intel-sdw-acpi.c
> +++ b/sound/hda/intel-sdw-acpi.c
> @@ -23,7 +23,7 @@ static int ctrl_link_mask;
>  module_param_named(sdw_link_mask, ctrl_link_mask, int, 0444);
>  MODULE_PARM_DESC(sdw_link_mask, "Intel link mask (one bit per link)");
>  
> -static bool is_link_enabled(struct fwnode_handle *fw_node, int i)
> +static bool is_link_enabled(struct fwnode_handle *fw_node, u8 idx)
>  {
>  	struct fwnode_handle *link;
>  	char name[32];
> @@ -31,7 +31,7 @@ static bool is_link_enabled(struct fwnode_handle *fw_node, int i)
>  
>  	/* Find master handle */
>  	snprintf(name, sizeof(name),
> -		 "mipi-sdw-link-%d-subproperties", i);
> +		 "mipi-sdw-link-%hhu-subproperties", idx);
>  
>  	link = fwnode_get_named_child_node(fw_node, name);
>  	if (!link)
> @@ -51,8 +51,8 @@ static int
>  sdw_intel_scan_controller(struct sdw_intel_acpi_info *info)
>  {
>  	struct acpi_device *adev = acpi_fetch_acpi_dev(info->handle);
> -	int ret, i;
> -	u8 count;
> +	u8 count, i;
> +	int ret;
>  
>  	if (!adev)
>  		return -EINVAL;



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux