Re: [PATCH 1/2] staging/vc04_services: initialize cache line size properly

From: Michael Zoran
Date: Wed Mar 01 2017 - 20:59:50 EST


Hi Arnd,

I submitted a change which is in Linux-next now that makes the whole
CACHE_LINE_SIZE macro meaningless. It now always reads the size from
the DT and errors out with -ENODEV if the property is missing.

I was going to submit a change to delete the macro completely, just
never got to it.

https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit
/drivers/staging/vc04_services/interface?id=6cf1bf636a067eb308cb3a8322b
9d6b1844a075d

On Wed, 2017-03-01 at 23:50 +0100, Arnd Bergmann wrote:
> While debugging another problem I noticed that g_cache_line_size gets
> set
> to sizeof(CACHE_LINE_SIZE), which is sizeof(int) or 4, while
> presumably
> CACHE_LINE_SIZE (e.g. 32) was meant.
>
> This initializes it the way it was meant.
>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> ---
> Âdrivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c |
> 2 +-
> Â1 file changed, 1 insertion(+), 1 deletion(-)
>
> 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 3aeffcb9c87e..b0e9eb6ff73f 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
> @@ -78,7 +78,7 @@ struct vchiq_pagelist_info {
> Â};
> Â
> Âstatic void __iomem *g_regs;
> -static unsigned int g_cache_line_size = sizeof(CACHE_LINE_SIZE);
> +static unsigned int g_cache_line_size = CACHE_LINE_SIZE;
> Âstatic unsigned int g_fragments_size;
> Âstatic char *g_fragments_base;
> Âstatic char *g_free_fragments;