Re: [PATCH 05/10] s390/cio: introduce DMA pools to cio

Halil Pasic
2019-05-08T21:22:10Z

On Wed, 8 May 2019 15:18:10 +0200 (CEST)
Sebastian Ott <sebott@linux.ibm.com> wrote:

> > +void cio_gp_dma_free(struct gen_pool *gp_dma, void *cpu_addr, size_t size)
> > +{
> > + if (!cpu_addr)
> > + return;
> > + memset(cpu_addr, 0, size);
>
> Hm, normally I'd do the memset during alloc not during free - but maybe
> this makes more sense here with your usecase in mind.

I allocate the backing as zeroed, and zero the memory before putting it
back to the pool. So the stuff in the pool is always zeroed.

>
> > @@ -1063,6 +1163,7 @@ static int __init css_bus_init(void)
> > unregister_reboot_notifier(&css_reboot_notifier);
> > goto out_unregister;
> > }
> > + cio_dma_pool_init();
>
> This is too late for early devices (ccw console!).

You have already raised concern about this last time (thanks). I think,
I've addressed this issue: tje cio_dma_pool is only used by the airq
stuff. I don't think the ccw console needs it. Please have an other look
at patch #6, and explain your concern in more detail if it persists.

(@Mimu: What do you think, am I wrong here?)

Thanks for having a look!

Regards,
Halil