drivers/message/fusion/mptctl.c: In function ‘mptctl_mpt_command’: drivers/message/fusion/mptctl.c:1764: warning: ‘bufIn.len’ may be used uninitialized in this function drivers/message/fusion/mptctl.c:1765: warning: ‘bufOut.len’ may be used uninitialized in this function come because gcc gets confused by some "goto" statements in above function. The warnings have been verified to be bogus, however, the function does initialize these later (after the offending goto's) in the function anyway. So let's move those initializations to top of function, thereby also shutting up these warnings. Signed-off-by: Satyam Sharma <satyam@xxxxxxxxxxxxx> Acked-by: Eric Moore <eric.moore@xxxxxxx> --- [ Had not copied Andrew and linux-scsi@ last time, don't yet see this in any of the SCSI git trees. ] drivers/message/fusion/mptctl.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) --- linux-2.6.23-rc4-mm1/drivers/message/fusion/mptctl.c~fix 2007-09-02 21:51:14.000000000 +0530 +++ linux-2.6.23-rc4-mm1/drivers/message/fusion/mptctl.c 2007-09-02 21:54:25.000000000 +0530 @@ -1773,7 +1773,10 @@ mptctl_do_mpt_command (struct mpt_ioctl_ ulong timeout; struct scsi_device *sdev; + /* bufIn and bufOut are used for user to kernel space transfers + */ bufIn.kptr = bufOut.kptr = NULL; + bufIn.len = bufOut.len = 0; if (((iocnum = mpt_verify_adapter(karg.hdr.iocnum, &ioc)) < 0) || (ioc == NULL)) { @@ -2107,11 +2110,6 @@ mptctl_do_mpt_command (struct mpt_ioctl_ psge = (char *) (((int *) mf) + karg.dataSgeOffset); flagsLength = 0; - /* bufIn and bufOut are used for user to kernel space transfers - */ - bufIn.kptr = bufOut.kptr = NULL; - bufIn.len = bufOut.len = 0; - if (karg.dataOutSize > 0) sgSize ++;