Messages in this thread | | | Date | Mon, 3 Jul 2023 13:32:07 -0700 | From | Jakub Kicinski <> | Subject | Re: [PATCH RFC net-next 2/4] net: page_pool: avoid calling no-op externals when possible |
| |
On Fri, 30 Jun 2023 17:34:02 +0200 Alexander Lobakin wrote: > > I am not a fan of having the page pool force the syncing either. Last > > I knew I thought the PP_FLAG_DMA_SYNC_DEV was meant to be set by the > > Please follow the logics of the patch. > > 1. The driver sets DMA_SYNC_DEV. > 2. PP tries to shortcut and replaces it with MAYBE_SYNC. > 3. If dma_need_sync() returns true for some page, it gets replaced back > to DMA_SYNC_DEV, no further dma_need_sync() calls for that pool. > > OR > > 1. The driver doesn't set DMA_SYNC_DEV. > 2. PP doesn't turn on MAYBE_SYNC. > 3. No dma_need_sync() tests. > > Where does PP force syncs for drivers which don't need them?
I think both Alex and I got confused about what's going on here.
Could you reshuffle the code somehow to make it more obvious? Rename the flag, perhaps put it in a different field than the driver-set PP flags?
| |