lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20110322085638.GA14035@linux.vnet.ibm.com>
Date:	Tue, 22 Mar 2011 14:26:38 +0530
From:	Kamalesh Babulal <kamalesh@...ux.vnet.ibm.com>
To:	Greg KH <greg@...ah.com>
Cc:	mananth@...ibm.com, benh@...nel.crashing.org, stable@...nel.org,
	anton@...ba.org, linux-kernel@...r.kernel.org
Subject: Re: [stable] [3/3] powerpc: rtas_flash needs to use rtas_data_buf

* Greg KH <greg@...ah.com> [2011-03-21 14:45:01]:

> 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@...ba.org>
> >     Signed-off-by: Milton Miller <miltonm@....com
> >     Tested-By: Anton Blanchard <anton@...ba.org>
> >     Signed-off-by: Benjamin Herrenschmidt <benh@...nel.crashing.org>
> > 	Signed-off-by: Kamalesh Babulal <kamalesh@...ux.vnet.ibm.com>
> > ---
> > 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?
>

Sorry, my bad the mismatch was due to the indentation difference in the hunk

@@ -592,8 +589,8 @@ static void rtas_flash_firmware(int reboot_type)
    unsigned long rtas_block_list;
	 int i, status, update_token;
		 
-   if (rtas_firmware_flash_list.next == NULL)
-       return;     /* nothing to do */
+   if (rtas_firmware_flash_list == NULL)
+       return; /* nothing to do */
		  
will make sure, it does not happens again.

> Why are you diverging from the original?
> 
> thanks,
> 
> greg k-h
			
			Kamalesh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ