On 11/11/25 7:00 PM, Jason Wang wrote:
> On Tue, Nov 11, 2025 at 6:42 PM Paolo Abeni <[email protected]> wrote:
>>
>> On 11/7/25 5:15 AM, Daniel Jurgens wrote:
>>> @@ -7121,6 +7301,15 @@ static int virtnet_probe(struct virtio_device *vdev)
>>>       }
>>>       vi->guest_offloads_capable = vi->guest_offloads;
>>>
>>> +     /* Initialize flow filters. Not supported is an acceptable and common
>>> +      * return code
>>> +      */
>>> +     err = virtnet_ff_init(&vi->ff, vi->vdev);
>>> +     if (err && err != -EOPNOTSUPP) {
>>> +             rtnl_unlock();
>>> +             goto free_unregister_netdev;
>>
>> I'm sorry for not noticing the following earlier, but it looks like that
>> the code could error out on ENOMEM even if the feature is not really
>> supported,  when `cap_id_list` allocation fails, which in turn looks a
>> bit bad, as the allocated chunk is not that small (32K if I read
>> correctly).
>>
>> @Jason, @Micheal: WDYT?
> 
> I agree. I think virtnet_ff_init() should be only called when the
> feature is negotiated.
> 
> Thanks
> 

Are you suggesting we wait to call init until get/set_rxnfc is called? I
don't like that idea. Probe is the right time to do feature discovery.


>>
>> /P
>>
> 


Reply via email to