Thanks John! On Tue, 14 Sept 2021 at 19:26, Daniel Vetter <dan...@ffwll.ch> wrote: > > On Thu, Sep 09, 2021 at 02:37:41AM +0000, John Stultz wrote: > > When trying to do mid-order allocations, set __GFP_NOWARN to > > avoid warning messages if the allocation fails, as we will > > still fall back to single page allocatitions in that case. > > This is the similar to what we already do for large order > > allocations. > > > > Cc: Daniel Vetter <dan...@ffwll.ch> > > Cc: Christian Koenig <christian.koe...@amd.com> > > Cc: Sumit Semwal <sumit.sem...@linaro.org> > > Cc: Liam Mark <lm...@codeaurora.org> > > Cc: Chris Goldsworthy <cgold...@codeaurora.org> > > Cc: Laura Abbott <labb...@kernel.org> > > Cc: Brian Starkey <brian.star...@arm.com> > > Cc: Hridya Valsaraju <hri...@google.com> > > Cc: Suren Baghdasaryan <sur...@google.com> > > Cc: Sandeep Patil <sspa...@google.com> > > Cc: Daniel Mentz <danielme...@google.com> > > Cc: Ørjan Eide <orjan.e...@arm.com> > > Cc: Robin Murphy <robin.mur...@arm.com> > > Cc: Simon Ser <cont...@emersion.fr> > > Cc: James Jones <jajo...@nvidia.com> > > Cc: Leo Yan <leo....@linaro.org> > > Cc: linux-me...@vger.kernel.org > > Cc: dri-devel@lists.freedesktop.org > > Signed-off-by: John Stultz <john.stu...@linaro.org> > > Acked-by: Daniel Vetter <daniel.vet...@ffwll.ch> > Pushed to drm-misc-next.
> > --- > > drivers/dma-buf/heaps/system_heap.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/dma-buf/heaps/system_heap.c > > b/drivers/dma-buf/heaps/system_heap.c > > index 23a7e74ef966..f57a39ddd063 100644 > > --- a/drivers/dma-buf/heaps/system_heap.c > > +++ b/drivers/dma-buf/heaps/system_heap.c > > @@ -40,11 +40,12 @@ struct dma_heap_attachment { > > bool mapped; > > }; > > > > +#define LOW_ORDER_GFP (GFP_HIGHUSER | __GFP_ZERO | __GFP_COMP) > > +#define MID_ORDER_GFP (LOW_ORDER_GFP | __GFP_NOWARN) > > #define HIGH_ORDER_GFP (((GFP_HIGHUSER | __GFP_ZERO | __GFP_NOWARN \ > > | __GFP_NORETRY) & ~__GFP_RECLAIM) \ > > | __GFP_COMP) > > -#define LOW_ORDER_GFP (GFP_HIGHUSER | __GFP_ZERO | __GFP_COMP) > > -static gfp_t order_flags[] = {HIGH_ORDER_GFP, LOW_ORDER_GFP, > > LOW_ORDER_GFP}; > > +static gfp_t order_flags[] = {HIGH_ORDER_GFP, MID_ORDER_GFP, > > LOW_ORDER_GFP}; > > /* > > * The selection of the orders used for allocation (1MB, 64K, 4K) is > > designed > > * to match with the sizes often found in IOMMUs. Using order 4 pages > > instead > > -- > > 2.25.1 > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch Best, Sumit.