Re: [PATCH 0/4] IB: decrease large contigous allocation

From: Jason Gunthorpe
Date: Wed Sep 26 2018 - 13:07:01 EST


On Wed, Sep 26, 2018 at 06:48:09PM +0300, Jan Dakinevich wrote:
> On Tue, 18 Sep 2018 08:46:23 -0600
> Jason Gunthorpe <jgg@xxxxxxxx> wrote:
>
> > On Tue, Sep 18, 2018 at 04:03:42PM +0300, Jan Dakinevich wrote:
> > > The size of mlx4_ib_device became too large to be allocated as
> > > whole contigous block of memory. Currently it takes about 55K. On
> > > architecture with 4K page it means 3rd order.
> > >
> > > This patch series makes an attempt to split mlx4_ib_device into
> > > several parts and allocate them with less expensive kvzalloc
> >
> > Why split it up? Any reason not to just allocate the whole thing with
> > kvzalloc?
> >
>
> To allocate whole ib_device with kvmalloc I will need replace kzalloc()
> by kvzalloc() in ib_alloc_device() and then review allocation, to make
> sure that no one uses this memory for DMA.

I would be shocked if some driver was DMA'ing out of struct ib_device
memory..

Jason