Hello,
On 06.02.2016 20:40, Jiri Pirko wrote:
Fri, Feb 05, 2016 at 06:38:42PM CET, alexei.starovoi...@gmail.com wrote:
On Fri, Feb 05, 2016 at 11:01:22AM +0100, Hannes Frederic Sowa wrote:
Okay. I see it more as changing mode of operation of hardware and thus has
not really anything to do with networking. If you say you change ethernet to
infiniband it has something to do with networking, sure. But I am fine with
this, I just thought the code size could be reduced by adding this to sysfs
quite a lot. I don't have a strong opinion on this.
there is already a way to change eth/ib via
echo 'eth' > /sys/bus/pci/drivers/mlx4_core/0000:02:00.0/mlx4_port1
sounds like this is another way to achieve the same?
It is. However the current way is driver-specific, not correct.
Why is driver specific not correct? Actually it is very much a device
specific thing, isn't it?
For mlx5, we need the same, it cannot be done in this way. Do devlink is
the correct way to go.
Do two drivers already justify a new complete netlink api? Doesn't this
create the same problems like netdevice naming problems which needed
multiple years to become stable in case we have multiple cards or some
administrator reorders the cards (biosdevorder, systemd/udev issues)?
Are ports always stable? How can we have a 1:1 relationship with
ifindexes and how can they be stable? It is impossible to use that in
scripts?
Why not hide echo/cat in iproute2 instead of adding parallel netlink api?
Or this is for switches instead of nics?
Then why it's not adding to switchdev?
Note this is not specific to switch ASICs. This is for all network devices.
That's actually my fear. The relationship from "devlink-names" to
ifindexes I didn't understand at all architecturally.
Bye,
Hannes