Re: [PATCH 06/10] s390/cio: add basic protected virtualization support

Sebastian Ott
2019-05-08T13:46:42Z

On Fri, 26 Apr 2019, Halil Pasic wrote:
> static struct ccw_device * io_subchannel_allocate_dev(struct subchannel *sch)
> {
[..]
> + cdev->private = kzalloc(sizeof(struct ccw_device_private),
> + GFP_KERNEL | GFP_DMA);

Do we still need GFP_DMA here (since we now have cdev->private->dma_area)?

> @@ -1062,6 +1082,14 @@ static int io_subchannel_probe(struct subchannel *sch)
> if (!io_priv)
> goto out_schedule;
>
> + io_priv->dma_area = dma_alloc_coherent(&sch->dev,
> + sizeof(*io_priv->dma_area),
> + &io_priv->dma_area_dma, GFP_KERNEL);

This needs GFP_DMA.
You use a genpool for ccw_private->dma and not for iopriv->dma - looks
kinda inconsistent.