That basically means we must never call one of the pool get or put
functions with kernel lock.  This may be the case currently.  But
at this stage while we are pushing locks around the network code,
I would like to keep it as it is.

Allowing net interrupts during route pool get mutex gains nearly
nothing.  It makes placing a kernel lock in our transition process
harder.

bluhm

On Thu, Apr 27, 2023 at 02:18:11AM +0300, Vitaliy Makkoveev wrote:
> Index: sys/net/route.c
> ===================================================================
> RCS file: /cvs/src/sys/net/route.c,v
> retrieving revision 1.418
> diff -u -p -r1.418 route.c
> --- sys/net/route.c   26 Apr 2023 16:09:44 -0000      1.418
> +++ sys/net/route.c   26 Apr 2023 23:00:02 -0000
> @@ -176,7 +176,7 @@ route_init(void)
>  {
>       rtcounters = counters_alloc(rts_ncounters);
>  
> -     pool_init(&rtentry_pool, sizeof(struct rtentry), 0, IPL_MPFLOOR, 0,
> +     pool_init(&rtentry_pool, sizeof(struct rtentry), 0, IPL_SOFTNET, 0,
>           "rtentry", NULL);
>  
>       while (rt_hashjitter == 0)

Reply via email to