Re: [PATCH] staging: vc04_services: call sg_init_table to init scatterlist

From: Eric Anholt
Date: Mon Oct 31 2016 - 14:33:28 EST


Michael Zoran <mzoran@xxxxxxxxxxxx> writes:

> Call the sg_init_table function to correctly initialze
> the DMA scatterlist. This function is required to completely
> initialize the list and is mandatory if DMA debugging is
> enabled in the build configuration.
>
> One of the purposes of sg_init_table is to set
> the magic "cookie" on each list element and ensure
> the chain end is marked.
>
> Signed-off-by: Michael Zoran <mzoran@xxxxxxxxxxxx>
> ---
> drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c
> index 6fa2b5a..21b26e5 100644
> --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c
> +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c
> @@ -464,6 +464,12 @@ create_pagelist(char __user *buf, size_t count, unsigned short type,
> pagelist->type = type;
> pagelist->offset = offset;
>
> + /*
> + * Initialize the scatterlist so that the magic cookie
> + * is filled if debugging is enabled
> + */
> + sg_init_table(scatterlist, num_pages);
> + /* Now set the pages for each scatterlist */

I feel like the comments don't add much, but either way:

Acked-by: Eric Anholt <eric@xxxxxxxxxx>

> for (i = 0; i < num_pages; i++)
> sg_set_page(scatterlist + i, pages[i], PAGE_SIZE, 0);
>
> --
> 2.10.1

Attachment: signature.asc
Description: PGP signature