Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1473504

Re: [PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support

From Andrew Lunn <andrew@lunn.ch>
Newsgroups linux.kernel
Subject Re: [PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support
Date 2016-08-31 16:00 +0200
Message-ID <scedB-34F-51@gated-at.bofh.it> (permalink)
References <sbBvz-3DB-7@gated-at.bofh.it> <sbBvz-3DB-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Vivien

> diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
> index 93abfff..812cb47 100644
> --- a/drivers/net/dsa/mv88e6xxx/chip.c
> +++ b/drivers/net/dsa/mv88e6xxx/chip.c
> @@ -2240,6 +2240,15 @@ static int mv88e6xxx_port_db_dump_one(struct mv88e6xxx_chip *chip,
>  				fdb->ndm_state = NUD_NOARP;
>  			else
>  				fdb->ndm_state = NUD_REACHABLE;
> +		} else {

Rather than else, i think it would be safer to do

		if (obj->id == SWITCHDEV_OBJ_ID_PORT_MDB) {
> +			struct switchdev_obj_port_mdb *mdb;
> +
> +			if (!is_multicast_ether_addr(addr.mac))
> +				continue;
> +
> +			mdb = SWITCHDEV_OBJ_PORT_MDB(obj);
> +			mdb->vid = vid;
> +			ether_addr_copy(mdb->addr, addr.mac);
>  		}

It should not happen, but the day it does, we get very confused...

> +static int mv88e6xxx_port_mdb_dump(struct dsa_switch *ds, int port,
> +				   struct switchdev_obj_port_mdb *mdb,
> +				   int (*cb)(struct switchdev_obj *obj))
> +{
> +	struct mv88e6xxx_chip *chip = ds_to_priv(ds);
> +	int err;
> +
> +	mutex_lock(&chip->reg_lock);
> +	err = mv88e6xxx_port_db_dump(chip, port, &mdb->obj, cb);
> +	mutex_unlock(&chip->reg_lock);
> +
> +	return err;
> +}

Isn't this identical to mv88e6xxx_port_fdb_dump()? Maybe we should
just have one function, and register it twice?

     Andrew

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2016-08-29 22:40 +0200
  Re: [PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support Andrew Lunn <andrew@lunn.ch> - 2016-08-31 16:00 +0200
    Re: [PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2016-08-31 16:50 +0200
      Re: [PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support Andrew Lunn <andrew@lunn.ch> - 2016-08-31 17:00 +0200
      Re: [PATCH net-next 3/3] net: dsa: mv88e6xxx: add MDB support Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-08-31 19:40 +0200

csiph-web