Thread (3 messages) 3 messages, 3 authors, 2008-01-06

Re: wistron_btns-add-support-for-x86_64-systems.patch in -mm

From: Rémi Hérilier <hidden>
Date: 2008-01-05 17:52:27
Also in: linux-input

Andi Kleen wrote:
While looking for something else I stumbled over

wistron_btns-add-support-for-x86_64-systems.patch

in -mm. The patch looks very dubious to me. It basically
calls a BIOS function in long mode. To work like implemented
the BIOS would need to know magically what it was called
from (32bit or 64bit) and then execute different code paths.

It's very unlikely that this works. Most likely 
it will crash and if it happens to currently work 
it will be extremly fragile and crash at some future
point.

If anything you would need to set up a compat mode segment
and call the BIOS from that, but there are other problems
like interrupts not working etc (compat mode is somewhat
limited). Early in the x86-64 port there was a decision
to not call any BIOS calls from long mode because of these
problems. 

The only sane way to call that code would be to do so
from user space using some kind of emulator (e.g. like
the x server does) 

So I think the patch should be dropped.

-Andi
Thanks you for your reply and these informations.

What about finding what does this BIOS function and writing
an equivalent in C? There would be no BIOS call anymore and
this module could be used in the x86-64 port.

But, is it a sane solution?


Remi



Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help