89de370edd
Such microoptimization makes sense when the structure is used in many many copies, but here's it's not, and the few bytes we save are not worth the extra code the compiler has to generate: return ns_info->mount_apivfs || ns_info->protect_control_groups || ns_info->protect_kernel_tunables || ... before: 49b187: 48 8b 45 f8 mov -0x8(%rbp),%rax 49b18b: 0f b6 00 movzbl (%rax),%eax 49b18e: 83 e0 80 and $0xffffff80,%eax 49b191: 84 c0 test %al,%al 49b193: 75 32 jne 49b1c7 <namespace_info_mount_apivfs+0x80> 49b195: 48 8b 45 f8 mov -0x8(%rbp),%rax 49b199: 0f b6 00 movzbl (%rax),%eax 49b19c: 83 e0 08 and $0x8,%eax 49b19f: 84 c0 test %al,%al 49b1a1: 75 24 jne 49b1c7 <namespace_info_mount_apivfs+0x80> 49b1a3: 48 8b 45 f8 mov -0x8(%rbp),%rax 49b1a7: 0f b6 00 movzbl (%rax),%eax 49b1aa: 83 e0 10 and $0x10,%eax 49b1ad: 84 c0 test %al,%al 49b1af: 75 16 jne 49b1c7 <namespace_info_mount_apivfs+0x80> after: 49b024: 48 8b 45 f8 mov -0x8(%rbp),%rax 49b028: 0f b6 40 07 movzbl 0x7(%rax),%eax 49b02c: 84 c0 test %al,%al 49b02e: 75 2e jne 49b05e <namespace_info_mount_apivfs+0x7a> 49b030: 48 8b 45 f8 mov -0x8(%rbp),%rax 49b034: 0f b6 40 03 movzbl 0x3(%rax),%eax 49b038: 84 c0 test %al,%al 49b03a: 75 22 jne 49b05e <namespace_info_mount_apivfs+0x7a> 49b03c: 48 8b 45 f8 mov -0x8(%rbp),%rax 49b040: 0f b6 40 04 movzbl 0x4(%rax),%eax 49b044: 84 c0 test %al,%al 49b046: 75 16 jne 49b05e <namespace_info_mount_apivfs+0x7a> |
||
---|---|---|
.github | ||
.lgtm/cpp-queries | ||
.mkosi | ||
catalog | ||
coccinelle | ||
docs | ||
factory/etc | ||
hwdb.d | ||
man | ||
modprobe.d | ||
network | ||
po | ||
presets | ||
rules.d | ||
semaphoreci | ||
shell-completion | ||
src | ||
sysctl.d | ||
sysusers.d | ||
test | ||
tmpfiles.d | ||
tools | ||
travis-ci | ||
units | ||
xorg | ||
.clang-format | ||
.ctags | ||
.dir-locals.el | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.lgtm.yml | ||
.mailmap | ||
.travis.yml | ||
.vimrc | ||
.ycm_extra_conf.py | ||
LICENSE.GPL2 | ||
LICENSE.LGPL2.1 | ||
Makefile | ||
NEWS | ||
README | ||
README.md | ||
TODO | ||
azure-pipelines.yml | ||
configure | ||
meson.build | ||
meson_options.txt | ||
mkosi.build | ||
zanata.xml |
README.md
System and Service Manager
Details
Most documentation is available on systemd's web site.
Assorted, older, general information about systemd can be found in the systemd Wiki.
Information about build requirements is provided in the README file.
Consult our NEWS file for information about what's new in the most recent systemd versions.
Please see the Hacking guide for information on how to hack on systemd and test your modifications.
Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.
When preparing patches for systemd, please follow our Coding Style Guidelines.
If you are looking for support, please contact our mailing list or join our IRC channel.
Stable branches with backported patches are available in the stable repo.