numlock und dm-crypt

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

numlock und dm-crypt

Uwe Scholz
Hallo Gentoo-Nutzer,

ich habe seit dem Update auf Kernel 3.5.7 ein nerviges Problem mit der
Numlock-Taste: Diese ist nach dem vollständigen Laden des Kernels immer
aktiviert. Dadurch kann ich bei der Abfrage des dm-crypt Passwortes
meiner Home-Partition erst nach manuellen Deaktivieren dieser Taste das
richtige Passwort eingeben (ich besitze eine Tastatur ohne separaten
Nummernblock). Dadurch senden einige Tasten Ziffern anstatt Buchstaben
an den Rechner...

Starte ich meinen PC mit dem Kernel 3.4.9, so bleibt die numlock-Taste
wie gewünscht aus.

Frage: Wie kann ich mit Kernel 3.5.7 die Num-Lock-Taste nach dem Boot
       deaktiviert lassen?

Ich habe schon versucht, das numlock-skript (etc/init.d/numlock) in den
boot-runlevel zu schieben, und vor dm-crypt starten zu lassen. Dies
schlug jedoch mit der Fehlermeldung fehl, dass ein Start von numlock den
Start von fsck verhindern würde, und damit geblockt wurde.

Bin für jede Hilfe dankbar!

Viele Grüße,
Uwe

Reply | Threaded
Open this post in threaded view
|

Re: numlock und dm-crypt

Norman Rieß
Am 16.12.2012 19:59, schrieb Uwe Scholz:

> Hallo Gentoo-Nutzer,
>
> ich habe seit dem Update auf Kernel 3.5.7 ein nerviges Problem mit der
> Numlock-Taste: Diese ist nach dem vollständigen Laden des Kernels immer
> aktiviert. Dadurch kann ich bei der Abfrage des dm-crypt Passwortes
> meiner Home-Partition erst nach manuellen Deaktivieren dieser Taste das
> richtige Passwort eingeben (ich besitze eine Tastatur ohne separaten
> Nummernblock). Dadurch senden einige Tasten Ziffern anstatt Buchstaben
> an den Rechner...
>
> Starte ich meinen PC mit dem Kernel 3.4.9, so bleibt die numlock-Taste
> wie gewünscht aus.
>
> Frage: Wie kann ich mit Kernel 3.5.7 die Num-Lock-Taste nach dem Boot
>        deaktiviert lassen?
>
> Ich habe schon versucht, das numlock-skript (etc/init.d/numlock) in den
> boot-runlevel zu schieben, und vor dm-crypt starten zu lassen. Dies
> schlug jedoch mit der Fehlermeldung fehl, dass ein Start von numlock den
> Start von fsck verhindern würde, und damit geblockt wurde.
>
> Bin für jede Hilfe dankbar!
>
> Viele Grüße,
> Uwe
>

Hast du schon mal geschaut, ob das Problem in neueren Kernel Versionen
vielleicht schon behoben wurde?

Grüße
Norman

Reply | Threaded
Open this post in threaded view
|

Re: numlock und dm-crypt

Sven Eden
Am Montag, 17. Dezember 2012, 07:24:47 schrieb Norman Rieß:

> Am 16.12.2012 19:59, schrieb Uwe Scholz:
> > Hallo Gentoo-Nutzer,
> >
> > ich habe seit dem Update auf Kernel 3.5.7 ein nerviges Problem mit der
> > Numlock-Taste: Diese ist nach dem vollständigen Laden des Kernels immer
> > aktiviert. Dadurch kann ich bei der Abfrage des dm-crypt Passwortes
> > meiner Home-Partition erst nach manuellen Deaktivieren dieser Taste das
> > richtige Passwort eingeben (ich besitze eine Tastatur ohne separaten
> > Nummernblock). Dadurch senden einige Tasten Ziffern anstatt Buchstaben
> > an den Rechner...
> >
> > Viele Grüße,
> > Uwe
>
> Hast du schon mal geschaut, ob das Problem in neueren Kernel Versionen
> vielleicht schon behoben wurde?
>
> Grüße
> Norman
--

Hallo Uwe,

ich habe auch einen Laptop ohne separatem Nummernblock, und Numlock wurde bei
mir weder mit 3.5.7 noch mit 3.6.x aktiviert. Ich habe Numlock im BIOS
explizit abgeschaltet.

Es ist nämlich so, dass der Kernel Numlock explizit beim Hochfahren
_abschaltet_, damit die LEDs alle in einem bekannten Zustand sind. Es gab
schon so manche Beschwerde darüber, zum Beispiel hier:

http://www.pronix.de/comment/site-959/open-1456/site-1.html

Allerdings wurde bereits im Februar 2012 angeregt, den BIOS-Status zu nehmen.
Die Lösung könnte also schlicht sein, dass du Numlock im BIOS explizit
abschaltest.
Siehe: http://lkml.indiana.edu/hypermail/linux/kernel/1202.3/00697.html
(In der Mailing-Liste verläuft der Thread zwar im Sand, aber vielleicht wurde
es ja doch umgesetzt?)


Gruß

Sven


http://pwxlib.sourceforge.net

signature.asc (237 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: numlock und dm-crypt

Uwe Scholz
Sven Eden <[hidden email]> schrieb am [Mon, 17.12.2012 10:24]:

> Hallo Uwe,
>
> ich habe auch einen Laptop ohne separatem Nummernblock, und Numlock
> wurde bei mir weder mit 3.5.7 noch mit 3.6.x aktiviert. Ich habe
> Numlock im BIOS explizit abgeschaltet.
>
> Es ist nämlich so, dass der Kernel Numlock explizit beim Hochfahren
> _abschaltet_, damit die LEDs alle in einem bekannten Zustand sind. Es
> gab schon so manche Beschwerde darüber, zum Beispiel hier:
>
> http://www.pronix.de/comment/site-959/open-1456/site-1.html
>
> Allerdings wurde bereits im Februar 2012 angeregt, den BIOS-Status zu
> nehmen.  Die Lösung könnte also schlicht sein, dass du Numlock im BIOS
> explizit abschaltest.  Siehe:
> http://lkml.indiana.edu/hypermail/linux/kernel/1202.3/00697.html (In
> der Mailing-Liste verläuft der Thread zwar im Sand, aber vielleicht
> wurde es ja doch umgesetzt?)
Hallo Sven,

danke für deine Antwort. Das ist alles sehr mysteriös. Bei meinem
Notebook ist der NumLock-Status nach dem Booten wie gewünscht aus. Bei
meinem PC jedoch ist er an. Es mag sein, dass erstmal alle LEDs
ausgeschaltete werden. Ich sehe nämlich beim Booten des Kernels alle
LEDs kurz angehen, dann wieder aus und dann bleibt NumLock am Ende an.

Allerdings habe ich schon das BIOS des PCs erfolglos nach einer
NumLock-Option durchforstet. So etwas scheint es in meinem BIOS nicht zu
geben. :-/ Wie kann das sein? Bzw. wenn es keine Option dafür gibt,
warum holt sich dann der Kernel von dort die Info über den Bios-Status?

Dein erster Link hat mich zur Datei drivers/tty/vt/keyboard.c. In dieser
entspricht der Inhalt etwa dem geposteten Text auf der Web-Seite. Leider
reichen meine C-Kenntnisse auf die Schnelle nicht aus, um zu verstehen
an welcher Stelle ich rumspielen könnte, ohne etwas kaputt zu
machen. Aber ich habe jetzt schon mal eine Idee, wo ich werkeln
könnte. Danke dafür

Viele Grüße,
Uwe

PS: Dein Text steht unter dem Signatur-Marker "-- ". Ist das gewollt? So
    kann man auf deine Mails nur schwer antworten. :-)

attachment0 (205 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: numlock und dm-crypt

Sven Eden
Am Montag, 17. Dezember 2012, 15:23:46 schrieb Uwe Scholz:

> Sven Eden <[hidden email]> schrieb am [Mon, 17.12.2012 10:24]:
> > Hallo Uwe,
> >
> > ich habe auch einen Laptop ohne separatem Nummernblock, und Numlock
> > wurde bei mir weder mit 3.5.7 noch mit 3.6.x aktiviert. Ich habe
> > Numlock im BIOS explizit abgeschaltet.
> >
> > Es ist nämlich so, dass der Kernel Numlock explizit beim Hochfahren
> > _abschaltet_, damit die LEDs alle in einem bekannten Zustand sind. Es
> > gab schon so manche Beschwerde darüber, zum Beispiel hier:
> >
> > http://www.pronix.de/comment/site-959/open-1456/site-1.html
> >
> > Allerdings wurde bereits im Februar 2012 angeregt, den BIOS-Status zu
> > nehmen.  Die Lösung könnte also schlicht sein, dass du Numlock im BIOS
> > explizit abschaltest.  Siehe:
> > http://lkml.indiana.edu/hypermail/linux/kernel/1202.3/00697.html (In
> > der Mailing-Liste verläuft der Thread zwar im Sand, aber vielleicht
> > wurde es ja doch umgesetzt?)
>
> Hallo Sven,
>
> danke für deine Antwort. Das ist alles sehr mysteriös. Bei meinem
> Notebook ist der NumLock-Status nach dem Booten wie gewünscht aus. Bei
> meinem PC jedoch ist er an. Es mag sein, dass erstmal alle LEDs
> ausgeschaltete werden. Ich sehe nämlich beim Booten des Kernels alle
> LEDs kurz angehen, dann wieder aus und dann bleibt NumLock am Ende an.
>
> Allerdings habe ich schon das BIOS des PCs erfolglos nach einer
> NumLock-Option durchforstet. So etwas scheint es in meinem BIOS nicht zu
> geben. :-/ Wie kann das sein? Bzw. wenn es keine Option dafür gibt,
> warum holt sich dann der Kernel von dort die Info über den Bios-Status?
>
> Dein erster Link hat mich zur Datei drivers/tty/vt/keyboard.c. In dieser
> entspricht der Inhalt etwa dem geposteten Text auf der Web-Seite. Leider
> reichen meine C-Kenntnisse auf die Schnelle nicht aus, um zu verstehen
> an welcher Stelle ich rumspielen könnte, ohne etwas kaputt zu
> machen. Aber ich habe jetzt schon mal eine Idee, wo ich werkeln
> könnte. Danke dafür
>
> Viele Grüße,
> Uwe
>
> PS: Dein Text steht unter dem Signatur-Marker "-- ". Ist das gewollt? So
>     kann man auf deine Mails nur schwer antworten. :-)
Hallo Uwe,

ich habe mal in die Quellen vom Kernel 3.6.10 geschaut, und da steht in
kbd_init():

        for (i = 0; i < MAX_NR_CONSOLES; i++) {
                kbd_table[i].ledflagstate = kbd_defleds();
   (snip)

kbd_defleds() gibt auf nicht-x86 Systemen immer 0 zurück, also aus. Auf x86
Systemen gibt es die Datei asm/kbdleds.h.

Und hier, in arch/x86/include/asm/kbdleds.h, steht nunmehr

static inline int kbd_defleds(void)
{
        return boot_params.kbd_status & 0x20 ? (1 << VC_NUMLOCK) : 0;
}

boot_params wird exzessiv in arch/x86/kernel/setup.c verwendet, ich kann auf
die Schnelle aber nicht herausfinden, wo das initialisiert/befüllt wird.

Aus den Kommentaren heraus entnehme ich jedoch, dass es dabei um die EFI/BIOS-
Parameter handelt.

Wenn du den Numlock also nicht im BIOS einstellen kannst, dann bleibt dir
eigentlich nur die Zeile

                kbd_table[i].ledflagstate = kbd_defleds();

in kbd_init() durch

                kbd_table[i].ledflagstate = 0;

zu ersetzen.

Gruß

Sven


P.S: Nein, das war absolut _nicht_ gewollt und ein peinliches Versehen! danke
für den Hinweis!



--
http://pwxlib.sourceforge.net

signature.asc (237 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: numlock und dm-crypt

Mathias Rissler
In reply to this post by Uwe Scholz
Hallo Uwe,

US> Allerdings habe ich schon das BIOS des PCs erfolglos nach einer
NumLock-Option durchforstet. So etwas scheint es in meinem BIOS nicht zu
geben. :-/

Wenn bei Dir im BIOS die Moeglichkeit fehlt, den Numlock per default
ab/anzuschalten, probier mal STRG + F1 im BIOS-Hauptmenue. Das klappt bei
vielen Boards. Damit schaltest Du fuer die aktuelle BIOS-Sitzung einige
versteckte Optionen frei.
Falls STRG + F1 bei Dir nicht funktioniert, gibts hier noch mehr:
http://forum-de.msi.com/index.php?page=Thread&threadID=61549


US> Wenn es keine Option dafĂźr gibt, warum holt sich dann der Kernel von
dort die Info Ăźber den Bios-Status?

Ggf. laesst nur das Nutzerinterface im BIOS Dich diesen Wert nicht
einstellen. Der Wert ist garantiert dennoch im CMOS hinterlegt.
Probier doch mal das oben genannte mit STRG + F1 und Co im BIOS-Hauptmenue.
Da wirst Du bestimmt fuendig. :)

Mathias



Reply | Threaded
Open this post in threaded view
|

Re: Gelöst: numlock und dm-crypt

Uwe Scholz
In reply to this post by Sven Eden
Hallo Sven, hallo Mathias,

Danke! mit eurer Hilfe konnte ich das Problem lösen. Genial! :-)

Beide Ansätze haben funktioniert: Strg+F1 im BIOS drücken, und schwupps
erschien in einem Untermenü auch die NumLock-Option. War tatsächlich
auf "On". Nach Ausschalten blieb NumLock auch nach dem Laden des Kernels
aus.

Aber auch das Ersetzen von

                 kbd_table[i].ledflagstate = kbd_defleds();

durch

                 kbd_table[i].ledflagstate = 0;

bei gleichzeitigem "On" des NumLock-Status im BIOS hat bewirkt, dass es
wie gewünscht nach dem Booten des Kernels aus bleibt. Der Kernel liest
also explizit den NumLock-Status aus.

Sehr schön!

Danke für eure Hilfe und viele Grüße,
Uwe

PS: Warum sind so wichtige Einstellungsmöglichkeiten im BIOS versteckt?
    *grummel* *grummel*

--
Stilblüten aus Schreiben von Versicherungsnehmern:
Außerdem bin ich vor meinem ersten Unfall und nach meinem letzten
unfallfrei gefahren.

attachment0 (205 bytes) Download Attachment