1

Is it possible to install multiple drivers for a single device (say, a touchpad), and then switch between them on the fly? (I.e., without a reboot.)
I'm having some trouble with the Synaptics driver of my touchpad, and like to be able to switch to a generic mouse driver on the fly with a keyboard shortcut (or something like that), so I can enjoy Synaptics' multi-touch tomfoolery one moment and a no hassle touchpad driver without oddities the next.

Edit - If What Frank Thomas said is correct, and it isn't possible to straight out swap drivers, wouldn't it be possible to write a driver that acts as a wrapper for other drivers, additionally giving the user the option to swap them through that?

7
  • 1
    I mean, post the problem you actually face instead of looking for some dubious fix.
    – Baarn
    Commented Nov 30, 2012 at 14:52
  • 1
    What @Informaficker is referring to is you are asking a XY Problem. Please let us know what X is. Commented Nov 30, 2012 at 15:03
  • 1
    I've already posted X on several other sites and fora. (E.g.: superuser.com/questions/504571/use-touchpad-while-typing.) This is something of a last resort effort to deal with the problem. Commented Nov 30, 2012 at 15:44
  • 1
    Note that much of the issue with kernel module modification at runtime comes from concurrency and synchronization issues. your theoretical wrapper would need to prevent changes to the driver state while any existing activity still exists on it (from other users/processes) and block (pulse/wait) while the underlying driver state is in flux. Usermode drivers would allow more flexibility and reliability on this front, but usermode drivers by their very nature must interact with systemspace rather carefully. either way, I don;t believe your query is moving you in a practical direction. Commented Nov 12, 2014 at 12:40
  • 1
    @Karan, that functionality lead to widespread rootkit deployments, that once installed were invisible to almost any on-line security analysis. Kernel drivers are below the level that a security scanner running on that particular kernel can verify. It's like a philosophical existential question "How do I know I exist, if the only thing that can tell me is my impression of my own existence?". When the kernel itself is exploited, there’s just no way to tell (from within that OS) that the modules loaded are safe. Vista performs kernel integrity checks, which prevent hot-swapping drivers at login. Commented Nov 18, 2014 at 12:54

1 Answer 1

1

as a rule, no, since drivers are loaded into the kernel and are "dangerous" to unload without a shutdown in that they may cause a kernel panic once the driver is unloaded. It is possible to load drivers on the fly (USB devices for instance) but they can't be swapped out without a reboot.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .