On Tue, 3 Feb 2015 15:34, Anton Aylward <opensuse@...> wrote:
I've just had an update 3.18.5-1.gf378da4 from kernel_stable http://download.opensuse.org/repositories/Kernel:/stable/standard/
In there I find $ sudo lsinitrd /boot/initrd-3.18.5-1.gf378da4-default | grep hid lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-cherry.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-roccat-isku.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-roccat-arvo.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-belkin.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-roccat-common.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-samsung.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/usbhid lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/usbhid/usbhid.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-roccat.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-ortek.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-logitech-dj.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-microsoft.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-apple.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-generic.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-holtek-kbd.ko lib/modules/3.18.5-1.gf378da4-default/kernel/drivers/hid/hid-ezkey.ko see
What's with this "hid" stuff? When I run "lsmod" on the currently running kernel I don't see any of them. Have they somehow disappeared in the pivot?
I've googled and read some stuff about Human Interface Devices, but its clear that they are not actually in my running kernel. So why do I need them in my (already bloated) initrd?
A keyboard or a mouse is a HID device. You NEED at least some of these drivers to use ANY keyboard or mouse at all: 1. the "hid/usbhid/usbhid.ko" to use a USB device, and 2. one of the "hid/hid-*.ko", accordingly to the model you have. But which one? At boot the kernel loads the ones it needs, and only these. During some point after the 2.6.x -> 3.x.x change the HID code was fully reorganised. What earlier was hidden else where in the code was now moved into one location and then extended. So, the main diff to earlier times is that you can now SEE what is loaded. But, how would the kernel / initrd know what you have? No, it goes the most secure way, and packs them all into the initrd. How big? Attention, "Backticks"! [code] du /lib/modules/`uname -r`/kernel/drivers/hid [/code] There you have it, most likely in Kilobytes. You want to reduce that? Have fun. Either you delete the un-used modules from your /lib/modules/`uname -r`/kernel/drivers/hid directory, or try to blacklist them (see /etc/modprobe.d/*blacklist.conf) Will that help? May be a 100th of a second, and a Megabyte at most. Look for more efficient methodes to reduce initrd, this one is more or less a "windmill". e.g. replaceing bash, mv, cp, rm, ln, ls, ... with busybox? sudo lsinitrd -l /boot/initrd-3.18.5-1.gf378da4-default |\ sort -k5 -n | grep -E ' (bin|usr/bin)/' - Yamaban. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org