[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#701656: initramfs rescue shell doesn't recognize USB keyboard



On 2/25/2013 4:54 PM, Ben Hutchings wrote:
[...] But my keyboard was present at
time of install, so one would expect it to work.

Yes, I understand this.  Unfortunately this is still going to
randomly go wrong if you upgrade the kernel (or any other package that
contributes to the initramfs) without a keyboard plugged in.  (I don't
know what kind of computer you are installing on, but this would be
entirely normal for a server.)

Agreed, that situation can occur, although the server might at least be connected to a KVM and perhaps newer USB-based KVMs present a "keyboard presence" even when the KVM focus isn't currently pointing at that particular server.

The topic isn't perhaps so much about keyboards specifically as it is about whether a targeted build should support hot pluggable hardware (of any kind) present at time of build?

For example, I might "permanently" attach a flash drive to a USB port to boot the system or for other purposes. In fact, some servers have an *internal* USB port for just that purpose. So even though in principle the USB device might not be present at the time I happen to randomly upgrade the kernel or an initramfs-related package, in fact I would always have it present, and would want it to work.

The existence of hot pluggable hardware certainly presents a conundrum: do you include all possible drivers? Of course not, it's a "targeted" build that is supposed to be as small as possible. Do you instead include none of the drivers? That too won't work.

It seems the correct compromise is to include precisely those drivers for the hardware (hot pluggable or not) that is present at time of build. If someone subsequently shoots themselves in the foot because they disconnected something temporarily during the time they did a kernel upgrade, well, they'll eventually learn that a targeted build can't handle that situation.


Perhaps we should also rename 'targetted' to
'what-could-possibly-go-wrong'...

:)

Alex


Reply to: