blob: 8c03e161610da531d9505cb1b4ab6456d8941d6d [file] [log] [blame]
# Copyright 2022 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
description "Start the disc control daemon"
author "chromium-os-dev@chromium.org"
oom score -100
start on started boot-services
stop on stopping boot-services
respawn
pre-start script
setup_sysfs_acls() {
local root_drive="$(rootdev -s -d)"
local drive_name="$(basename ${root_drive})"
local device_node="$(readlink -f /sys/block/${drive_name})"
if [ ! -d "${device_node}/device/unit_descriptor" ]; then
exit 0
fi
# Device node is <controller_node>/host*/target*/*/block/<drive_name>
local controller_node=${device_node}/../../../../../
wb_node=${controller_node}/wb_on
chown disco:disco ${wb_node} # croslint: disable
}
setup_sysfs_acls
end script
exec minijail0 --config /usr/share/minijail/discod.conf \
-- /usr/sbin/discod --log_level=-1
post-start exec minijail0 -u disco -g disco /usr/bin/gdbus \
wait --system --timeout 15 org.chromium.Discod