Re: [PATCH] staging: unisys: use common return path

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

 



On 12/01/2015 10:57 AM, Dan Carpenter wrote:
What I meant was that I'm generally opposed to "common exit paths".
Mixing all the exit paths together often makes the code more complicated
and leads to errors.  That makes sense from a common sense perspective
that doing many things is more difficult than doing one thing?  Anyway
it's easy enough to verify empirically that this style is bug prone.

On the other hand there are times where all exit paths need to unlock or
to free a variable and in those cases using a common exit path makes
sense.  Just don't standardize on "Every function should only have a
single return".


That works for me. Mainly my issue with it is that I've spent a lot of time trying to eliminate "goto Away" code from the drivers, so I'd rather not put any back if possible.


If we *have* to change it

I don't think we have to change it at all.  Using direct returns makes
finding locking bugs easier for static checkers.


That's true, and I think the code is fine as it is.

		spin_unlock_irqrestore(&devdata->priv_lock, flags);

This is a bug.


Indeed, but I'd rather not have any of these changes made anyway. This function isn't broken so it doesn't need to be fixed.

-- Ben
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux