On Thu, Mar 04, 2021 at 07:50:11PM +0100, Hans de Goede wrote: > > I am not sure about this. What services are you seeing which are extraneous? I do see ps aux is going on miles and miles, but of the 218 processes I see from startup time on my workstation, I see 165 of them are kernel processes versus user space ones. Of the remaining 53, most of them seem hardware oriented (irqbalance, bluetooth, modemmanager, smartd, udisksd, upowerd, etc). Looking at the rest we have about 20 processes which seem outside of 'I don't want my laptop to work with modern hardware' and that would be abrt, atd/crond/cupsd, packagekitd, colord, and the sssd processes. So while ps auxww has a lot more going on in it, I actually see a lot fewer extraneous processes than I remember from my Fedora 18 days. > > 20 processes is still a lot when e.g. booting from an eMMC or a sdcard those add a significant amount of time to the startupo time. I agree, we really have too many things starting, to many things running, and too many things generating errors. Instead of 'ps aux', 'systemctl -t service --state running' is easier to interpret: UNIT LOAD ACTIVE SUB DESCRIPTION accounts-daemon.service loaded active running Accounts Service alsa-state.service loaded active running Manage Sound Card State (restore and store) ^ do we really need this avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack bluetooth.service loaded active running Bluetooth service colord.service loaded active running Manage, Install and Generate Color Profiles cups.service loaded active running CUPS Scheduler ^ this should be socket activated, I haven't printed *anything* on this machine ever dbus-:1.2-org.freedesktop.problems@0.service loaded active running dbus-:1.2-org.freedesktop.problems@0.service dbus-broker.service loaded active running D-Bus System Message Bus firewalld.service loaded active running firewalld - dynamic firewall daemon gdm.service loaded active running GNOME Display Manager geoclue.service loaded active running Location Lookup Service gpm.service loaded active running Console Mouse manager iio-sensor-proxy.service loaded active running IIO Sensor Proxy service libvirtd.service loaded active running Virtualization daemon low-memory-monitor.service loaded active running Low Memory Monitor ^ this is interesting. gnome-shell.rpm requires lower-memory-monitor.rpm, and the default preset is on. Do we still want this with systemd-oomd being on by default? mcelog.service loaded active running Machine Check Exception Logging Daemon ModemManager.service loaded active running Modem Manager NetworkManager.service loaded active running Network Manager pcscd.service loaded active running PC/SC Smart Card Daemon pmcd.service loaded active running Performance Metrics Collector Daemon pmie.service loaded active running Performance Metrics Inference Engine pmlogger.service loaded active running Performance Metrics Archive Logger polkit.service loaded active running polkit.service sssd-kcm.service loaded active running SSSD Kerberos Cache Manager sssd.service loaded active running System Security Services Daemon switcheroo-control.service loaded active running Switcheroo Control Proxy service systemd-homed.service loaded active running Home Area Manager ^ hmm, I would think this would be go away on its own. Maybe something to fix upstream. systemd-journald.service loaded active running Journal Service systemd-logind.service loaded active running User Login Management systemd-machined.service loaded active running Virtual Machine and Container Registration Service systemd-networkd.service loaded active running Network Service systemd-resolved.service loaded active running Network Name Resolution systemd-timesyncd.service loaded active running Network Time Synchronization systemd-udevd.service loaded active running Rule-based Manager for Device Events and Files systemd-userdbd.service loaded active running User Database Manager udisks2.service loaded active running Disk Manager upower.service loaded active running Daemon for power management user@1000.service loaded active running User Manager for UID 1000 user@6.service loaded active running User Manager for UID 6 wpa_supplicant.service loaded active running WPA supplicant Then there's 'systemctl --user -t service --state running' which is even longer :( E.g. at-spi-dbus-bus.service has it's own dbus-broker instance. That's better than in the past, at least it's not a different implementation of dbus than the session bus ;) But we should consider if we can use the session bus again. (In the past, dbus-daemon wasn't efficient enough, so a separate bus was created. But dbus-broker is supposed to be more efficient.) > Note I'm not trying to blame anyone here; and especially not the authors/maintainers of the mentioned packages As one of those, I would say that the authors/maintainers of those packages are the people best positioned to fix things. For example, systemd-homed probably shouldn't be running, but this is something to figure out upstream. (BTW, one thing which has improved a lot in this list is the pcp stack. It's still 3 services with ~10 processes altogether, but the total memory usage is <50MB, and CPU usage which was excessive last year is reasonable. The maintainers put in the work here.) > but I do wish that we (the Fedora project) could make some time to > go over this list and try to stop a whole bunch of programs / > daemons from always starting when that is (IMHO) not really > necessary. I would really like to see Fedora to become somewhat more > lean / go on a diet here, which is something which I think would > benefit everyone. Yes. > Given that I can halve the base processes RAM set with some hacks I > think that it is fair to say that there are still way too much > things starting by default. I have actually been considering doing > a Fedora workstation light spin for budget x86 machines with 1G / 2G > of RAM and an eMMC. I think there's still plenty of stuff to improve that will apply everywhere. homed, alsactl, geoclue, colord just shouldn't need to be there all the time. Zbyszek _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure