Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR. Learn more →
Top 8 C Init Projects
-
Project mention: C stdlib isn't threadsafe and even safe Rust didn't save us | news.ycombinator.com | 2025-01-22
On Linux, a privileged process can change the memory address which the kernel (/proc filesystem) reads argv/etc from... prctl(PR_SET_MM) with the PR_SET_MM_ARG_START/PR_SET_MM_ARG_END arguments. Likewise, with PR_SET_MM_ENV_START/PR_SET_MM_ENV_END.
The API is ugly, and since it needs CAP_SYS_RESOURCE many programs can't use it... but systemd does: https://github.com/systemd/systemd/blob/2635b5dc4a96157c2575...
This shouldn't cause the kind of race conditions we are talking about here, since it isn't changing a single arg, it is changing the whole argv all at once. However, the fact that PR_SET_MM_ARG_START/PR_SET_MM_ARG_END are two separate prctl syscalls potentially introduces a different race condition. If Linux would only provide a prctl to set both at once, that would fix that. The reason it was done this way, is the API was originally designed for checkpoint-restore, in which case the process will be effectively suspended while these calls are made.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
FROM cimg/ruby:2.7.1 ARG TINI_VERSION=v0.19.0 RUN sudo apt-get update -qq \ && sudo apt-get install -yq --no-install-recommends \ libxml2-dev libxslt-dev libtool pkg-config \ libbz2-dev libglib2.0-dev libxml2-dev libxslt-dev cmake \ && sudo apt-get clean \ && sudo rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ && sudo truncate -s 0 /var/log/*log ENV BUNDLE_JOBS=4 BUNDLE_RETRY=3 RUN gem update --system && gem install rake bundler --no-document ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /usr/local/bin/tini RUN sudo chmod a+x /usr/local/bin/tini ENTRYPOINT ["/usr/local/bin/tini", "--"]
-
Project mention: Way too many ways to wait on a child process with a timeout | news.ycombinator.com | 2024-11-11
-
-
-
-
InitWare
The InitWare Suite of Middleware allows you to manage services and system resources as logical entities called units. Its main component is a service management ("init") system.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
C Init discussion
C Init related posts
-
The Motivation Behind Systemd
-
Systemd unit activation via dbus
-
Way too many ways to wait on a child process with a timeout
-
Why systemd is a problem for embedded Linux
-
A Word about Systemd
-
S6 – skarnet's small supervision suite
-
Systemd: The Modern System and Service Manager for Linux
-
A note from our sponsor - CodeRabbit
coderabbit.ai | 9 Feb 2025