Re: [PATCH] scsi: megaraid_mbox: return -ENOMEM on megaraid_init_mbox() allocation failure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2021-10-20 at 13:56 +1100, Finn Thain wrote:
> On Tue, 19 Oct 2021, James Bottomley wrote:
> 
> > On Tue, 2021-10-19 at 18:53 +0800, Jiapeng Chong wrote:
> > > From: chongjiapeng <jiapeng.chong@xxxxxxxxxxxxxxxxx>
> > > 
> > > Fixes the following smatch warning:
> > > 
> > > drivers/scsi/megaraid/megaraid_mbox.c:715 megaraid_init_mbox()
> > > warn:
> > > returning -1 instead of -ENOMEM is sloppy.
> > 
> > Why is this a problem?  megaraid_init_mbox() is called using this
> > pattern:
> > 
> > 	// Start the mailbox based controller
> > 	if (megaraid_init_mbox(adapter) != 0) {
> > 		con_log(CL_ANN, (KERN_WARNING
> > 			"megaraid: mailbox adapter did not
> > initialize\n"));
> > 
> > 		goto out_free_adapter;
> > 	}
> > 
> > So the only meaningful returns are 0 on success and anything else
> > (although megaraid uses -1 for this) on failure. 
> 
> I think you're arguing for a bool (?)

I'm not arguing for anything ... I'm just explaining how the current
code works that makes this change pointless.  Megaraid is an older
driver, so even if the current return is two state, changing it to bool
would be unnecessary churn.

> Smatch apparently did not think of that -- probably needs a holiday.
> 
> > Since -1 is the conventional failure return, why alter that to
> > something different that still won't be printed or acted on?  And
> > worse still, if we make this change, it will likely excite other
> > static checkers to complain we're losing error information ...
> > 
> 
> ... and arguably they would be correct.

Well, yes ... that's why I don't want one "fix" that generates a
cascading sequence of further "fixes".

James






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux