On Thu, May 07, 2026 at 03:44:05PM +0000, Stanislav Kinsburskii wrote: > mshv_portid_free() uses synchronize_rcu() followed by kfree() to > reclaim port table entries. This blocks the caller until a full RCU > grace period elapses, which is unnecessary since the same module already > uses the non-blocking kfree_rcu() pattern in mshv_port_table_fini(). > > Replace with kfree_rcu() to avoid the blocking wait and keep the > reclamation strategy consistent across the file. > > Signed-off-by: Stanislav Kinsburskii <[email protected]> > --- > drivers/hv/mshv_portid_table.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/hv/mshv_portid_table.c b/drivers/hv/mshv_portid_table.c > index d87a82e399e96..42d21b92b88fd 100644 > --- a/drivers/hv/mshv_portid_table.c > +++ b/drivers/hv/mshv_portid_table.c > @@ -62,8 +62,7 @@ mshv_portid_free(int port_id) > WARN_ON(!info); > idr_unlock(&port_table_idr); > > - synchronize_rcu(); > - kfree(info); > + kfree_rcu(info, portbl_rcu); > } > > /* > >
Reviewed-by: Anirudh Rayabharam (Microsoft) <[email protected]>

