It's not to hard for me to guess what happened. It cautions right in /linux/fd.h that those particular ioctl numbers, affect the LEDS, not the flags. So once you meddled with the LED flags by turning them on/off without the correct keypress, it probably assumes you want manual control of them, and leaves them in a "manual state", totally disconnected from the CapsLock key. If I toggle the led on with the script, it dosn't mean that I'm typing with caps, and vice/versa for off. I can still use the CapsLock key, but the light dosn't toggle anymore.

Like the other reply by Fletch said, those low-level ioctl calls don't do exactly what you would think they should do, they do what the system designed for them. And that brings us back to your node title, "do they actually work"..... yeah ioctl's work, but they don't always do what you think, because they are performing fuctions at the lowest system level. I'm sure a keyboard driver engineer would say that is the way they are supposed to work, in order to support normal keyboard operation.

There probably is a way to re-establish the proper link between the key and the LED, after being on manual, but it isn't obvious how to do it in the headers, so it was easier for me to reboot. :-) There are a few gimmick c programs out there for flashing the keyboard leds, maybe you could find one, and see what they do to reset normal operation when the program exits.


I'm not really a human, but I play one on earth. Cogito ergo sum a bum

In reply to Re^5: ioctl - does it actually work? replaced or preferred by something else? by zentara
in thread ioctl - does it actually work? replaced or preferred by something else? by Jack B. Nymbol

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.