Hartmut Birr wrote:
Hi,
I think your patch will never work. There are used some offsets which based on the '/3GB' switch and other ones are hard coded by KERNEL_BASE.
Never? :( Some offsets have to use KERNEL_BASE, and some based on the 3GB switch. I carefully reviewed which were necessary at each point, tho I may have overlooked something. If you like I can go into detail why this is necessary, and why I'm sure it will work.
IMHO, the boot code should not search for the '/3GB' option. The kernel base address must be send by freeldr. The boot code must not contain any KERNEL_BASE value. I've add your patch to my source tree. On the smp machine, ros reboots in the very early boot phase. It is before the call to _main.
Can you shed some light on how exactly app cpus actually get initialized? This will help me to understand more fully what I'm doing.