On Tue,  3 Mar 2026 12:54:03 -0800
Long Li <[email protected]> wrote:

> This series fixes several resource management bugs in the netvsc PMD and
> adds support for runtime queue count reconfiguration.
> 
> Patches 1-5 are bug fixes:
>   1. Subchannel leak on device removal — subchannels allocated during
>      configure are never closed in uninit.
>   2. Double-free of primary Rx queue — hn_dev_free_queues() already
>      frees hv->primary, then uninit frees it again.
>   3. Init error path leaks — hv->primary and hv->channels[0] not freed
>      on failure after allocation.
>   4. Event callback leak — device event callback not unregistered when
>      rxfilter or vf_start fails in hn_dev_start().
>   5. MTU change path leaks — missing chimney bitmap teardown/rebuild,
>      rxbuf_info leak, stale subchannel pointers, and VMBus channel
>      close before free.
> 
> Patch 6 adds runtime queue count reconfiguration via port
> stop/configure/start, with full NVS/RNDIS session teardown and reinit
> when the queue count changes.
> 
> Tested:
>   - Queue reconfig: 4→2→8 queues, all transitions successful
>   - MTU changes: 1500→4000→8000 with rxd/txd=2048, no crashes
>   - TX pps: 15.5M (1500B), 6.1M (4000B), 3.1M (8000B)
>   - RX pps: 7.6M (1500B), 2.7M (4000B), 1.4M (8000B)


Looks good, applied to next-net.

PS: had to argue with Claude to get it to understand relationship
between queues and vmbus channels

Reply via email to