UBIFS with dma on 4.6 kernel is not working

From: Naga Sureshkumar Relli
Date: Fri Oct 21 2016 - 05:53:57 EST


Hi,

This is regarding UBIFS on 4.6 kernel.
We have tested UBIFS on our ZynqMP SOC QSPI Controller, the UBIFS is not working with dma on this kernel.
Controller driver: https://github.com/torvalds/linux/commits/master/drivers/spi/spi-zynqmp-gqspi.c
If I replace all vmalloc allocations in fs/ubifs/ to kmalloc then UBIFS with dma is working fine.
But whereas kernel before 4.6 without changing vmalloc to kmalloc, UBIFS is working fine with dma.
So is there any change in UBIFS in 4.6 kernel that to dma related?

May I know some info regarding this?
Why UBIFS on kernels before 4.6 is working with dma but not with 4.6?
Now a days, most of QSPI controllers have internal dmas.

Could you please provide some info regrading this dma issue?
We can change our controller driver to operate in IO mode (doesn't use dma) but performance wise it's not a preferred one.

Thanks,
Naga Sureshkumar Relli