Re: [PATCH 4/8] staging: et131x: Add pci suspend & resume functions

From: Francois Romieu
Date: Sat Oct 01 2011 - 15:38:44 EST


Mark Einon <mark.einon@xxxxxxxxx> :
> On 1 October 2011 12:03, Francois Romieu <romieu@xxxxxxxxxxxxx> wrote:
[...]
> >> + ? ? err = et131x_open(netdev);
> >> + ? ? if (err) {
> >> + ? ? ? ? ? ? dev_err(&pdev->dev, "Can't resume interface!\n");
> >> + ? ? ? ? ? ? goto out;
> >> + ? ? }
> >
> > You can/should split et131x_{open/close} to remove this failure point.
>
> Hi, thanks for the comments francois,
> I'm not quite sure what you mean here. Can you expand on your comment please?

Something like:

int et131x_open(struct net_device *netdev)
{
add_timer(...)

err = request_irq(...)
if (err < 0)
goto release_timer;

et131x_start(...)

out:
return err;

release_timer:
blah;
goto out;
}

Same thing with et131x_close / et131x_stop. You only use et131x_{start/stop}
for suspend/resume : one error path is gone away.

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