Subject: Re: [PATCH 1/2] net: dsa: Error out on tagging protocol mismatches

From: Andrew Lunn <[email-masked]>
Date: Thu, 23 Oct 2014 15:32:03 +0200

On Wed, Oct 22, 2014 at 04:46:52PM -0700, Florian Fainelli wrote:
> On 10/22/2014 04:35 PM, Andrew Lunn wrote:
> > If there is a mismatch between enabled tagging protocols and the
> > protocol the switch supports, error out, rather than continue with a
> > situation which is unlikely to work.
> > 
> > Signed-off-by: Andrew Lunn <[email-masked]>
> > cc: [email-masked]
> > ---
> >  net/dsa/dsa.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/net/dsa/dsa.c b/net/dsa/dsa.c
> > index 22f34cf4cb27..8a31bd81a315 100644
> > --- a/net/dsa/dsa.c
> > +++ b/net/dsa/dsa.c
> > @@ -175,7 +175,8 @@ dsa_switch_setup(struct dsa_switch_tree *dst, int index,
> >  			break;
> >  #endif
> >  		default:
> > -			break;
> > +			ret = -ENOPROTOOPT;
> > +			goto out;
> >  		}
> 
> This prevents using a switch driver without tagging, which is something
> that you might want to do (link setup, ethtool stats, EEE etc...).

Hi Florian

I didn't know that was a use case.

So i assume such a driver would use DSA_TAG_PROTO_NONE? So all i need
to do is add that as a case value to the switch statement, and we
should cover that use case, and still be able to detect a mismatch.

v2 patch soon.

   Andrew