Messages in this thread | | | Date | Fri, 21 Jul 2023 09:01:29 -0700 | From | Jakub Kicinski <> | Subject | Re: [PATCH RFC net-next v2 7/7] net: skbuff: always try to recycle PP pages directly when in softirq |
| |
On Fri, 21 Jul 2023 17:37:57 +0200 Alexander Lobakin wrote: > > Does it mean ptr_ring_produce_any() is needed in > > page_pool_recycle_in_ring() too? > > > > As it is assumed that page pool API can be called in the context with > > irqs_disabled() || in_hardirq(), and force recylcling happens in the > > prt_ring. > > > > Isn't it conflit with the below patch? as the below patch assume page > > pool API can not be called in the context with irqs_disabled() || in_hardirq(): > > [PATCH net-next] page_pool: add a lockdep check for recycling in hardirq > > > > Or am I missing something obvious here? > > No, Page Pool is *not* intended to be called when IRQs are disabled, > hence the fix Jakub's posted in the separate thread.
Yeah, it's just a bandaid / compromise, since Olek really wants his optimization and I really don't want to spend a month debugging potential production crashes :)
On the ptr ring the use may still be incorrect but there is a spin lock so things will explode in much more obvious way, if they do.
| |