Re: [RFC net-next 0/7] Provide an ism layer

Alexandra Winter
2025-01-17T13:01:08Z

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.