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

From: Ilya Dryomov
Date: Mon Jul 17 2017 - 11:08:29 EST


On Fri, Jul 14, 2017 at 1:25 PM, Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote:
>
>
> 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.

Applied.

Thanks,

Ilya