Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: gcc48, drmkms issues with i386

In article <>,
David Laight  <> wrote:
>On Wed, Apr 09, 2014 at 09:10:42AM -0500, John D. Baker wrote:
>> On Wed, 9 Apr 2014, John D. Baker wrote:
>> > disk, the last part of the display actually looked like:
>> > 
>> > prot_to_real: can't return to 0001296DFn: Diskn
>> Should have been:
>> prot_to_real: can't return to 000129CD Fn: Diskn
>> The amd64-built version behaves the same.  The only difference was the
>> address reported in the message above: 00012D19
>All the calls to 'prot_to_real' have to reside in the first 64k of
>the code area.
>The code them bombs out back to the outer loader.
>The linker used to manage that, but it might have been relying
>on the linker putting object files into a section in the order they
>were specified on the command line.
>Plausibly prot_to_real could set the real mode $cs value to one
>appropriate for the return address.
>The calls are all from assembler and are followed by a bios call
>and then a call to real_to_prot.
>If that were done the /boot code itself could probably be linked with a
>virtual base address of 1MB and run with virtual == physical removing
>the confusing offset.

Do you want to take a stab at fixing it? It would take me an order
of magnitude longer to do the same.


Home | Main Index | Thread Index | Old Index