Re: [RFC PATCH v2] lib: scatterlist: add sg splitting function

From: Andrew Morton
Date: Mon Aug 03 2015 - 19:19:46 EST


On Sat, 1 Aug 2015 15:17:13 +0200 Robert Jarzmik <robert.jarzmik@xxxxxxx> wrote:

> Sometimes a scatter-gather has to be split into several chunks, or sub scatter
> lists. This happens for example if a scatter list will be handled by multiple
> DMA channels, each one filling a part of it.
>
> A concrete example comes with the media V4L2 API, where the scatter list is
> allocated from userspace to hold an image, regardless of the knowledge of how
> many DMAs will fill it :
> - in a simple RGB565 case, one DMA will pump data from the camera ISP to memory
> - in the trickier YUV422 case, 3 DMAs will pump data from the camera ISP pipes,
> one for pipe Y, one for pipe U and one for pipe V
>
> For these cases, it is necessary to split the original scatter list into
> multiple scatter lists, which is the purpose of this patch.
>
> ...
>
> include/linux/scatterlist.h | 5 ++
> lib/scatterlist.c | 189 ++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 194 insertions(+)

It's quite a bit of code for a fairly specialised thing. How ugly
would it be to put this in a new .c file and have subsystems select it
in Kconfig?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/