Comment 76 for bug 553745

Revision history for this message
Tero Mononen (tmo-iki) wrote :

Folks,

I'm back on this old issue again.

FSCK with progress indicator (-C switch) produces a very large number of progress messages, which all are read, and forwarded to plymouth on function fsck_reader(), file mountall.c. Plymouthd can't keep up with hundreds of thousands, perhaps millions, of messages, especially if it needs to display them. Please limit the number of messages sent (for example check whether last progress percentage was the same as the one to be sent). [this is actually for #559761]

Also there is something hairy in the libply/ply-event-loop.c, as indicated on the attached stack traces. Function ply_event_loop_handle_timeouts() tried dereference a null pointer 'watch'. Possible workaround is to check whether 'watch' is NULL, and in that case simply remove it from the list.

Additionally, I propose removal of the O(N^2) behaviour causing assertion from the end of function ply_list_unlink_node(), file ply-list.c.

BR
--
tmo