Re: [PATCH 3.13-rc1] xen-blkfront: Silence pfn maybe-uninitializedwarning

From: Roger Pau MonnÃ
Date: Fri Nov 15 2013 - 07:09:34 EST


On 14/11/13 23:24, Konrad Rzeszutek Wilk wrote:
> Tim Gardner <tim.gardner@xxxxxxxxxxxxx> wrote:
>> pfn cannot actually be used unless (!info->feature_persistent), nor is
>> pfn accessed in get_grant() unless (!info->feature_persistent), but
>> silence
>> this warning anyway. gcc-4.8
>>
>> drivers/block/xen-blkfront.c: In function 'do_blkif_request':
>> drivers/block/xen-blkfront.c:508:20: warning: 'pfn' may be used
>> uninitialized in this function [-Wmaybe-uninitialized]
>> gnt_list_entry = get_grant(&gref_head, pfn, info);
>> ^
>> drivers/block/xen-blkfront.c:492:19: note: 'pfn' was declared here
>> unsigned long pfn;
>>
>> Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
>> Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
>> Cc: David Vrabel <david.vrabel@xxxxxxxxxx>
>> Signed-off-by: Tim Gardner <tim.gardner@xxxxxxxxxxxxx>

Acked-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx>

>> ---
>> drivers/block/xen-blkfront.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/block/xen-blkfront.c
>> b/drivers/block/xen-blkfront.c
>> index 432db1b..5f926de 100644
>> --- a/drivers/block/xen-blkfront.c
>> +++ b/drivers/block/xen-blkfront.c
>> @@ -489,7 +489,7 @@ static int blkif_queue_request(struct request *req)
>>
>> if ((ring_req->operation == BLKIF_OP_INDIRECT) &&
>> (i % SEGS_PER_INDIRECT_FRAME == 0)) {
>> - unsigned long pfn;
>> + unsigned long uninitialized_var(pfn);
>>
>> if (segments)
>> kunmap_atomic(segments);
>
> I have a similar patch from Roger that sets pfn=0.
>
> Roger could you repost your patch please or if you feel that this patch makes sense then comment on it?

I'm fine with this patch, although I'm more used to the classic pfn = 0.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/