#!/usr/bin/bash
# SPDX-License-Identifier: GPL-2.0-or-later

on_rt () {
    if [ -f /sys/kernel/realtime ]; then
        return 0
    fi
    return 1
}

prog="realtime-setup"

[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog

# if we're using cgroupsv1 make sure that cpusets are mounted
if ! grep cgroup2 /proc/mounts > /dev/null 2>&1; then
    if ! grep cpuset /proc/mounts >/dev/null 2>&1; then
	echo "cpusets not mounted!"
	exit 2
    fi
fi

# is this a rhel-rt kernel?
if ! on_rt; then
    echo "$prog: Not running on a RHEL-RT kernel, skipping rt-specific tunings."
    exit 0
fi

# if not running, start it up here, usually something like "daemon $exec"
if [ "$SLUB_CPU_PARTIAL" == "off" ]; then
    slub_cpu_partial_off
    slub_retval=$?
else
    slub_retval=0
fi

exit $slub_retval
