On Wed, 2011-09-28 at 18:58 -0400, Tom Horsley wrote:
Just for grins I installed a script in rc.local to furiously
run ps f -e in a loop until it sees a gnome-terminal process
in the list and record the results in a log file.
I got about 40 MB of ps listings (which is a lot to look at :-),
but the most interesting bit I did see was this:
454 ? Ss 0:00 /lib/systemd/systemd-kmsg-syslogd
463 ? Ss 0:00 /sbin/udevd
467 ? S 0:00 \_ /sbin/udevd
468 ? S 0:00 \_ /sbin/udevd
469 ? S 0:00 \_ /sbin/udevd
470 ? S 0:00 \_ /sbin/udevd
471 ? S 0:00 \_ /sbin/udevd
474 ? S 0:00 \_ /sbin/udevd
475 ? S 0:00 \_ /sbin/udevd
476 ? S 0:00 \_ /sbin/udevd
477 ? S 0:00 \_ /sbin/udevd
478 ? S 0:00 \_ /sbin/udevd
479 ? S 0:00 \_ /sbin/udevd
480 ? S 0:00 \_ /sbin/udevd
481 ? S 0:00 \_ /sbin/udevd
482 ? S 0:00 \_ /sbin/udevd
483 ? S 0:00 \_ /sbin/udevd
484 ? S 0:00 \_ /sbin/udevd
485 ? S 0:00 \_ /sbin/udevd
507 ? S 0:00 \_ /sbin/udevd
508 ? S 0:00 \_ /sbin/udevd
509 ? S 0:00 \_ /sbin/udevd
510 ? S 0:00 \_ /sbin/udevd
511 ? S 0:00 \_ /sbin/udevd
512 ? S 0:00 \_ /sbin/udevd
514 ? S 0:00 \_ /sbin/udevd
515 ? S 0:00 \_ /sbin/udevd
516 ? S 0:00 \_ /sbin/udevd
517 ? S 0:00 \_ /sbin/udevd
518 ? S 0:00 \_ /sbin/udevd
519 ? S 0:00 \_ /sbin/udevd
520 ? S 0:00 \_ /sbin/udevd
522 ? S 0:00 \_ /sbin/udevd
526 ? S 0:00 \_ /sbin/udevd
527 ? S 0:00 \_ /sbin/udevd
528 ? S 0:00 \_ /sbin/udevd
529 ? S 0:00 \_ /sbin/udevd
540 ? S 0:00 \_ /sbin/udevd
541 ? S 0:00 \_ /sbin/udevd
542 ? S 0:00 \_ /sbin/udevd
543 ? S 0:00 \_ /sbin/udevd
544 ? S 0:00 \_ /sbin/udevd
545 ? S 0:00 \_ /sbin/udevd
546 ? S 0:00 \_ /sbin/udevd
547 ? S 0:00 \_ /sbin/udevd
548 ? S 0:00 \_ /sbin/udevd
549 ? S 0:00 \_ /sbin/udevd
550 ? S 0:00 \_ /sbin/udevd
551 ? S 0:00 \_ /sbin/udevd
552 ? S 0:00 \_ /sbin/udevd
553 ? S 0:00 \_ /sbin/udevd
554 ? S 0:00 \_ /sbin/udevd
473 ? Ss 0:00 /lib/systemd/systemd-readahead-collect
Those udevd kids showed up for a long time during the ps loop.
What the heck is udevd doing with all those kids, and could
it be what is responsible for it taking 20 seconds to do
a login after the initial boot?
you might want to look more into bootchart and systemd-analyze
(particularly 'systemd-analyze blame' and 'systemd-analyze dot'). as to
what udev is doing, harald and lennart probably know more than anyone
else there, and it's been discussed to some extent on the devel list
recently. it's not *trivially* optimizable for the general case, but
lennart has some advice you can implement on your own specific installs
if you want to speed things up. see the thread with 'knoppix' in the
title, from the last few days. (yes, this is how I remember things.)
--
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | identi.ca: adamwfedora
http://www.happyassassin.net