> From: Andrew Lunn [mailto:and...@lunn.ch] > Sent: Tuesday, December 4, 2018 10:56 AM > To: Salil Mehta <salil.me...@huawei.com> > Cc: David Miller <da...@davemloft.net>; jakub.kicin...@netronome.com; > Zhuangyuzeng (Yisen) <yisen.zhu...@huawei.com>; lipeng (Y) > <lipeng...@huawei.com>; mehta.sa...@opnsrc.net; netdev@vger.kernel.org; > linux-ker...@vger.kernel.org; Linuxarm <linux...@huawei.com>; > Liuzhongzhu <liuzhong...@huawei.com>; j...@resnulli.us; > f.faine...@gmail.com > Subject: Re: [RFC net-next 3/9] net: hns3: Add "port vlan table" > information query function > > > > > Adding debugfs files for basic switch concepts like MAC and VLAN tables > > > > seems like a bit of a stretch to me. I wonder what others think. > > > > > > Agreed. > > > > > > I was wondering how other vendors are solving this? One way I could > > understand is to use "Switchdev" framework which in turn will expose > > entries to the kernel using the switch driver. In our NIC we don't > > have a proper switch and it cannot learn/age entries. > > Your hardware is there to accelerate what linux can do in software. > How do we manage the software version of this feature?
Yes, so it can kind of represent switch in the hardware, has vports and has tables for mac-vlan, port-vlan, vlan (which I guess kernel also supports in vlan aware mode of bridging?). Perhaps, only way I can understand now to be able to use standard bridge, ip link tools to fetch this info is by having represented them by "Switchdev"? > > > Also, on-SoC NIC contains other tables which might not have any standard > > user-space interface at all. What are your suggestions regarding that? > > How are these tables map to software features the Linux stack > implements? If you refer output shown in patch you will get an idea, [RFC net-next 5/9] net: hns3: Add "manager table" information query function Manager Table stores entries for any exception packet matching or for matching any special types like control packets which we might not want to forward using general forwarding route using mac-vlan table. Not sure if this makes sense inside Linux kernel? Therefore, we thought of exposing them through the debugfs. Thanks Salil