Re: [PATCH 8/8] staging: ccree: remove BUG macro usage

From: Gilad Ben-Yossef
Date: Thu Sep 07 2017 - 05:00:19 EST


On Wed, Sep 6, 2017 at 10:28 PM, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
> On Sun, Sep 03, 2017 at 11:56:50AM +0300, Gilad Ben-Yossef wrote:
>> @@ -1154,7 +1150,8 @@ static inline int ssi_buffer_mgr_aead_chain_data(
>> //if have reached the end of the sgl, then this is unexpected
>> if (!areq_ctx->src_sgl) {
>> SSI_LOG_ERR("reached end of sg list. unexpected\n");
>> - BUG();
>> + return -EINVAL;
>> + goto chain_data_exit;
>
> You've got a direct return followed by a goto.

Yes, that is silly. Thank you for spotting that.

>
> It's a do-nothing goto that just returns rc. I hate those. I've tried
> to review locking bugs to see if single returns prevent future
> programmers from introducing new error paths which don't unlock. They
> don't really help...


I've replaced the error handling from goto to return as you suggested
for the changes
introduced by this patch.

Still need to clean up a lot of the other code doing this though.

Gilad




--
Gilad Ben-Yossef
Chief Coffee Drinker

"If you take a class in large-scale robotics, can you end up in a
situation where the homework eats your dog?"
-- Jean-Baptiste Queru