Re: [stable] [3/3] powerpc: rtas_flash needs to use rtas_data_buf

From: Greg KH
Date: Mon Mar 21 2011 - 18:02:30 EST


On Sat, Mar 19, 2011 at 11:46:58PM +0530, Kamalesh Babulal wrote:
> powerpc: rtas_flash needs to use rtas_data_buf
>
> Commit: bd2b64a12bf55bec0d1b949e3dca3f8863409646 upstream
>
> When trying to flash a machine via the update_flash command, Anton received the
> following error:
>
> Restarting system.
> FLASH: kernel bug...flash list header addr above 4GB
>
> The code in question has a comment that the flash list should be in
> the kernel data and therefore under 4GB:
>
> /* NOTE: the "first" block list is a global var with no data
> * blocks in the kernel data segment. We do this because
> * we want to ensure this block_list addr is under 4GB.
> */
>
> Unfortunately the Kconfig option is marked tristate which means the variable
> may not be in the kernel data and could be above 4GB.
>
> Instead of relying on the data segment being below 4GB, use the static
> data buffer allocated by the kernel for use by rtas. Since we don't
> use the header struct directly anymore, convert it to a simple pointer.
>
> Reported-By: Anton Blanchard <anton@xxxxxxxxx>
> Signed-off-by: Milton Miller <miltonm@xxxxxxx
> Tested-By: Anton Blanchard <anton@xxxxxxxxx>
> Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Kamalesh Babulal <kamalesh@xxxxxxxxxxxxxxxxxx>
> ---
> arch/powerpc/kernel/rtas_flash.c | 41 ++++++++++++++++++++-----------------
> 1 files changed, 22 insertions(+), 19 deletions(-)

This diffstat differs from what the original commit had:
arch/powerpc/kernel/rtas_flash.c | 39 +++++++++++++++++++++------------------
1 file changed, 21 insertions(+), 18 deletions(-)

So I went with the original commit, ok?

Why are you diverging from the original?

thanks,

greg k-h
--
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/