lkml.org 
[lkml]   [2011]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [GIT PULL] block drivers for 2.6.39-rc
On 2011-03-29 01:06, Linus Torvalds wrote:
> On Sat, Mar 26, 2011 at 11:56 AM, Jens Axboe <jaxboe@fusionio.com> wrote:
>> Hi Linus,
>>
>> This is the pull request for the block driver updates for 2.6.39. Two
>> things here:
>>
>> - Big drbd update, as per usual...
>> - cciss update.
>
> Btw, that cciss thing causes a very annoying compiler warning:
>
> drivers/block/cciss.c: In function ‘dev_show_unique_id’:
> drivers/block/cciss.c:617:7: warning: ‘sn[0]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[1]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[2]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[3]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[4]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[5]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[6]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[7]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[8]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[9]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[10]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[11]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[12]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[13]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[14]’ may be used
> uninitialized in this function
> drivers/block/cciss.c:617:7: warning: ‘sn[15]’ may be used
> uninitialized in this function
>
> which is because the compiler doesn't really notice that those things
> are only used if the error return isn't being set.
>
> So it's a compiler mis-feature, but the thing is, the warning could
> easily be avoided by just writing the code more prettily.
>
> Just do the memcpy() unconditionally: we know that 'drv' is a valid
> pointer (we just loaded 'h' off it), and we're talking about a nice
> constant 16-byte copy.
>
> IOW, a patch something like the attached.
>
> Untested, but it looks really obvious. Hmm?

Looks good to me. I'm curious, you get a warning in dev_show_unique_id()
but not in dev_show_vendor() or any of the other following 4-5 functions
written in the same style?

My gcc here does not warn for any of them. But it is very convoluted for
what it does

--
Jens Axboe

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

\
 
 \ /
  Last update: 2011-03-29 08:37    [W:0.073 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site