Re: [PATCH net-next 2/2] net:dsa: check for EPROBE_DEFER from dsa_dst_parse()
From: Andrew Lunn <andrew@lunn.ch>
Date: 2017-01-04 02:19:53
On Wed, Dec 07, 2016 at 05:56:06PM +0100, Volodymyr Bendiuga wrote:
quoted hunk
Since there can be multiple dsa switches stacked together but not all of devicetree nodes available at the time of calling dsa_dst_parse(), EPROBE_DEFER can be returned by it. When this happens, only the last dsa switch has to be deleted by dsa_dst_del_ds(), but not the whole list, because next time linux cames back to this function it will try to add only the last dsa switch which returned EPROBE_DEFER. Signed-off-by: Volodymyr Bendiuga <redacted> --- net/dsa/dsa2.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c index 7924c92..0a5ddaa 100644 --- a/net/dsa/dsa2.c +++ b/net/dsa/dsa2.c@@ -673,8 +673,14 @@ static int _dsa_register_switch(struct dsa_switch *ds, struct device_node *np) } err = dsa_dst_parse(dst); - if (err) + if (err){ + if (-EPROBE_DEFER == err) {
Hi Volodymyr
Please can you turn this around, err == -EPROBE_DEFER, to make it
consistent with all the other network code.
With that change
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Andrew