Andrew Morton wrote:Not quite so fast. The entry value of SS:SP is actually part of the protocol (an upper memory boundary), although for 2.01+ one could argue it is redundant with the heap_end field in the header. I'm rather confused which particular LILO this would possibly be, especially given the oddball version number. The boot protocol was pretty much formalized by Werner Amsberger (sp?), the original LILO author, with contributions from Hans Lermen and myself. It hasn't changed in this area. If this was a LILO that someone "cleverly broke" I'd like to understand the nature of it, so we can work around it properly. I see a couple of options: - If protocol >= 2.01, force (e)sp to match the heap_end field of the setup structure. For < 2.01, what to do? - Pray and hope the value of SP is sane to start out with in the correct SS. - Declare the "cleverly broken" version of LILO not so cleverly broken. For what it's worth, the old code, for protocol < 2.02, the boot code would simply overwrite %ss, leaving %sp unchanged (alternative #2.) So this configuration was always buggy. There is a comment in the old code (setup.S, line 655) that "after this the stack should not be used", but we then go right into the A20 code which does a bunch of subroutine calls. I think at this point that if protocol >= 2.01 and CAN_USE_HEAP, we should set %ss:%sp to that, otherwise fall back to simply setting %ss and hope that %sp is set to something sane. I don't like it, but I don't see any better alternative. -hpa -hpa -
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
| Linus Torvalds | Linux 2.6.27-rc5 |
| Jared Hulbert | [PATCH 00/10] AXFS: Advanced XIP filesystem |
| Linus Torvalds | Linux 2.6.27-rc8 |
git: | |
| David Miller | [GIT]: Networking |
| Antonio Almeida | HTB accuracy for high speed |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
