On Fri, Oct 20, 2017 at 5:12 AM, Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> wrote: > Since the commit de3ee99b097d ("mmc: Delete bounce buffer handling") > deletes the bounce buffer handling, a request data size will be referred > to max_{req,seg}_size instead of MMC_QUEUE_BOUNCESZ (64k bytes). > > In other hand, renesas_sdhi_internal_dmac.c will set very big value of > max_{req,seg}_size because the max_blk_count is set to 0xffffffff. > And then, "swiotlb buffer is full" happens because swiotlb can handle > a memory size up to 256k bytes only (IO_TLB_SEGSIZE = 128 and > IO_TLB_SHIFT = 11). > > So, as a workaround, this patch avoids the issue by setting > the max_{req,seg}_size up to 256k bytes if swiotlb is running. > > Reported-by: Dirk Behme <dirk.behme@xxxxxxxxxxxx> > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds