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] [thread-next>] [day] [month] [year] [list]
Message-ID: <20061011194301.GA2084@mailshack.com>
Date:	Wed, 11 Oct 2006 21:43:01 +0200
From:	Alexander van Heukelum <heukelum@...lshack.com>
To:	"H. Peter Anvin" <hpa@...or.com>
Cc:	linux-kernel@...r.kernel.org, Andrew Morton <akpm@...l.org>,
	Venkatesh Pallipadi <venkatesh.pallipadi@...el.com>,
	Linus Torvalds <torvalds@...l.org>,
	"Eric W. Biederman" <ebiederm@...ssion.com>,
	John Coffman <johninsd@....rr.com>
Subject: Re: [PATCH] Remove lilo-loads-only-five-sectors-of-zImage-fixup from setup.S

On Wed, Oct 11, 2006 at 11:38:09AM -0700, H. Peter Anvin wrote:
> Alexander van Heukelum wrote:
> >Hi!
> >
> >The real-mode kernel (on i386 and x86_64) checks if the bootloader
> >loaded it correctly. Apparantly, very old versions of LILO disregarded
> >the setupsects field in the bootsector and always just loaded the first
> >five sectors. If the kernel is compiled as a zImage, the real-mode
> >kernel is able to rectify the situation. At least it was, until the code
> >to do so was moved to the eighth sector in order to make space for more
> >E820 entries (commit: f9ba70535dc12d9eb57d466a2ecd749e16eca866). This
> >occured on 1 May 2005 and as far as I know, noone has complained yet.
> >This patch removes the checks for the signature and the fixup code
> >completely.
> >
> >Comments? Which bootloaders are still in use? Kill zImage?
> >
> 
> Andrew asked me to comment on this...
> 
> This removes support for boot loaders that did not understand boot 
> loader protocol version 2.00 or later.  This probably includes very 
> early versions of LILO as well as the long-since obsolete Bootlin and 
> Shoelace.  Those loaders were unable to load bzImages as well.
> 
> I have been urging that we kill zImage for a long time.  It is virtually 
> impossible to build a kernel today that will fit inside the zImage 512K 
> compressed limitation.
> 
> It would be useful for setup.S to halt with a message if such an early 
> bootloader is detected, however.  This would have to be parked in the 
> first 2K of the setup area, and can simply be detected by looking for 
> zero in type_of_loader.

Hi!

The patch should not alter behaviour for any bootloader that takes
setupsects into account. It just removes 'support' for bootloaders that
have the size of the setup code hardcoded to 4 sectors.

The current version of setup.S already checks if the bootloader
understands boot protocol 2.00+ in the case of a big kernel, but that
code is also after the 2k-mark. The zero-page still has some unused
space between offsets 0x230 and 0x28f. Shall I put/move some code there
to check unconditionally if the type_of_loader has been set?

I'll do that if no objections are put forward.

Thanks,
    Alexander

> 
> 	-hpa
> 
-
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