lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9de66b16-73eb-4853-b283-47db26bce170@linux.ibm.com>
Date: Fri, 13 Jun 2025 14:00:58 -0400
From: Qiushi Wu <qiushi@...ux.ibm.com>
To: Guenter Roeck <linux@...ck-us.net>, linux-kernel@...r.kernel.org
Cc: jdelvare@...e.com, linux-hwmon@...r.kernel.org, zohar@...ux.ibm.com,
        qiushi.wu@....com
Subject: Re: [PATCH] hwmon: ibmaem: match return type of
 wait_for_completion_timeout


On 6/12/25 16:57, Guenter Roeck wrote:
> On 6/12/25 11:43, Qiushi Wu wrote:
>> Return type of wait_for_completion_timeout is unsigned long not int.
>> Check its return value inline instead of introducing a throw-away
>> variable.
>>
>> Reviewed-by: Mimi Zohar <zohar@...ux.ibm.com>
>> Signed-off-by: Qiushi Wu <qiushi@...ux.ibm.com>
>> ---
>>   drivers/hwmon/ibmaem.c | 11 +++--------
>>   1 file changed, 3 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/hwmon/ibmaem.c b/drivers/hwmon/ibmaem.c
>> index 157e232aace0..e52e937a396c 100644
>> --- a/drivers/hwmon/ibmaem.c
>> +++ b/drivers/hwmon/ibmaem.c
>> @@ -383,8 +383,7 @@ static int aem_read_sensor(struct aem_data *data, 
>> u8 elt, u8 reg,
>>         aem_send_message(ipmi);
>>   -    res = wait_for_completion_timeout(&ipmi->read_complete, 
>> IPMI_TIMEOUT);
>> -    if (!res) {
>> +    if (!wait_for_completion_timeout(&ipmi->read_complete, 
>> IPMI_TIMEOUT)) {
>>           res = -ETIMEDOUT;
>>           goto out;
>
> If you want to clean up the code:
>
>         return -ETIMEDOUT;
>
> Also drop the second goto and return directly, drop res and the out: 
> label
> entirely, and return 0; at the end. That goto is really pointless.
>
> Guenter
>
Thanks for your feedback. I’ll clean up that and resubmit it as v2.

Sincerely,

Qiushi

>>       }
>> @@ -491,7 +490,6 @@ static void aem_delete(struct aem_data *data)
>>   /* Retrieve version and module handle for an AEM1 instance */
>>   static int aem_find_aem1_count(struct aem_ipmi_data *data)
>>   {
>> -    int res;
>>       struct aem_find_firmware_req    ff_req;
>>       struct aem_find_firmware_resp    ff_resp;
>>   @@ -508,8 +506,7 @@ static int aem_find_aem1_count(struct 
>> aem_ipmi_data *data)
>>         aem_send_message(data);
>>   -    res = wait_for_completion_timeout(&data->read_complete, 
>> IPMI_TIMEOUT);
>> -    if (!res)
>> +    if (!wait_for_completion_timeout(&data->read_complete, 
>> IPMI_TIMEOUT))
>>           return -ETIMEDOUT;
>>         if (data->rx_result || data->rx_msg_len != sizeof(ff_resp) ||
>> @@ -632,7 +629,6 @@ static int aem_find_aem2(struct aem_ipmi_data *data,
>>                   struct aem_find_instance_resp *fi_resp,
>>                   int instance_num)
>>   {
>> -    int res;
>>       struct aem_find_instance_req fi_req;
>>         fi_req.id = system_x_id;
>> @@ -648,8 +644,7 @@ static int aem_find_aem2(struct aem_ipmi_data *data,
>>         aem_send_message(data);
>>   -    res = wait_for_completion_timeout(&data->read_complete, 
>> IPMI_TIMEOUT);
>> -    if (!res)
>> +    if (!wait_for_completion_timeout(&data->read_complete, 
>> IPMI_TIMEOUT))
>>           return -ETIMEDOUT;
>>         if (data->rx_result || data->rx_msg_len != sizeof(*fi_resp) ||
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ