On Fri, Jan 17, 2025 at 02:00:55PM +0100, Alexandra Winter wrote: > > > On 17.01.25 03:13, Dust Li wrote: > >>>> Modular Approach: I've made the ism_loopback an independent kernel > >>>> module since dynamic enable/disable functionality is not yet supported > >>>> in SMC. Using insmod and rmmod for module management could provide the > >>>> flexibility needed in practical scenarios. > >> > >> With this proposal ism_loopback is just another ism device and SMC-D will > >> handle removal just like ism_client.remove(ism_dev) of other ism devices. > >> > >> But I understand that net/smc/ism_loopback.c today does not provide enable/disable, > >> which is a big disadvantage, I agree. The ism layer is prepared for dynamic > >> removal by ism_dev_unregister(). In case of this RFC that would only happen > >> in case of rmmod ism. Which should be improved. > >> One way to do that would be a separate ism_loopback kernel module, like you say. > >> Today ism_loopback is only 10k LOC, so I'd be fine with leaving it in the ism module. > >> I also think it is a great way for testing any ISM client, so it has benefit for > >> anybody using the ism module. > >> Another way would be e.g. an 'enable' entry in the sysfs of the loopback device. > >> (Once we agree if and how to represent ism devices in genera in sysfs). > > This works for me as well. I think it would be better to implement this > > within the common ISM layer, rather than duplicating the code in each > > device. Similar to how it's done in netdevice. > > > > Best regards, > > Dust > > > Is there a specific example for enable/disable in the netdevice code, you have in mind? > Or do you mean in general how netdevice provides a common layer? > Yes, everything that is common for all devices should be provided by the network layer. Again, lack of basic understanding.... but why is it not a network device? Network devices are not just Ethernet. We also have CAN, SLIP, FDDI, etc. Andrew