On Wed, 14 Jun 2023 11:36:28 +0800 Yunsheng Lin wrote: > > As Jakub previously mentioned, this involves including dma-mapping.h, > > which is relatively heavy, to each source file which includes skbuff.h, > > i.e. almost the whole kernel :D > > I am not sure I understand the part about 'includes skbuff.h' yet, it seems > 'skbuff.h' does not have anything related to this patch? $ git grep net/page_pool.h -- include/linux/skbuff.h include/linux/skbuff.h:#include <net/page_pool.h> > > I addressed this in my series, which I hope will land soon after yours > > (sending new revision in 24-48 hours), so you can leave it as it is. Or > > otherwise you can pick my solution (or come up with your own :D). > > Do you mean by removing "#include <linux/dma-direction.h>" as dma-mapping.h > has included dma-direction.h? > But I am not sure if there is any hard rule about not explicitly including > a .h which is implicitly included. What if the dma-mapping.h is changed to not > include dma-direction.h anymore? > > Anyway, it seems it is unlikely to not include dma-direction.h in dma-mapping.h, > Will remove the "#include <linux/dma-direction.h>" if there is another version > needed for this patchset:) The point is that we don't want commonly included headers to pull in huge dependencies. Please run the preprocessor on linux/dma-direction.h, you'll see how enormous it is.