Comment 10 for bug 1104156

Revision history for this message
Steve Langasek (vorlon) wrote : Re: [Bug 1104156] Re: "Continue to wait, or Press S to skip mounting or M for manual recovery" when waiting for LUKS passphrase

On Fri, Mar 01, 2013 at 01:15:04PM -0000, Cédric Dufour wrote:
> Unfortunately, I'm wondering whether this can be achieved.

> Plymouth seems to be totally agnostic of where client requests come from
> (except to know where to send replies back) and to what purpose (and
> thus can not know anything of the logic which may bind some requests to
> others). Am I right in this regard?

> This means that one could improve the handling of "interactive" requests
> that depend on keyboard input (password prompt, question, waiting for
> keystroke) and avoid to display the corresponding prompt message as long
> a preceding "interactive" request is still unanswered (or not canceled).
> This is possible (and already dealt with at some level) because keyboard
> input can only match the latest pending request.

> BUT I don't see how one could filter out messages to be displayed based on
> other "interactive" requests.

> While plymouth should not display mountall "boredom" messages while
> cryptsetup is waiting for password input, I'm sure there are existing use
> cases where messages from one client must be displayed regardless of the
> "interactive" request(s) of other(s). How can plymouth tell the
> difference?

In the case in question, the message we want to suppress uses the 'keys:'
prefix, which we know is associated with a watch-keystroke command. So in
the case of the Ubuntu plymouth themes that support 'keys:', we can hide
those messages when there's a higher-priority prompt being displayed.

It won't work with other themes, but then the behavior you get with
mountall's text display is buggy with those other themes already.