Re: [PATCH] rbd: Fix uninitialized variable use in rbd_acquire_lock

From: Kefeng Wang
Date: Fri Jul 14 2017 - 07:25:58 EST




On 2017/7/14 18:06, Ilya Dryomov wrote:
> On Thu, Jul 13, 2017 at 9:46 AM, Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote:
>> drivers/block/rbd.c: In function 'rbd_acquire_lock':
>> drivers/block/rbd.c:3602:44: error: 'ret' may be used uninitialized in this function [-Werror=maybe-uninitialized]
>>
>> Silence the warning, found it when built old kernel(3.10) with
>> OBS(opensuse build service).
>>
>> Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx>
>> ---
>> drivers/block/rbd.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
>> index b008b6a..b640ad8 100644
>> --- a/drivers/block/rbd.c
>> +++ b/drivers/block/rbd.c
>> @@ -3435,7 +3435,7 @@ static void rbd_acquire_lock(struct work_struct *work)
>> struct rbd_device *rbd_dev = container_of(to_delayed_work(work),
>> struct rbd_device, lock_dwork);
>> enum rbd_lock_state lock_state;
>> - int ret;
>> + int ret = 0;
>>
>> dout("%s rbd_dev %p\n", __func__, rbd_dev);
>> again:
>
> How did you get rbd_acquire_lock() into 3.10?

Using CentOS 7.3.

>
> Thanks,
>
> Ilya
>
>