#!/bin/sh /etc/rc.common
# Copyright (c) 2022-2023 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.

START=22
STOP=77

USE_PROCD=1
SERVICE_DAEMONIZE=1

start_service() {
    mkdir -p /dev/socket/data/
    chmod 755 /dev/socket/data
    chown radio:radio /dev/socket/data
    sed -n -e '/VENDOR_PROFILE/ s/.*= *//p' '/build.prop' > '/etc/data/Variant.txt'
    procd_open_instance
    procd_set_param command /usr/bin/netmgrd
    [ -x /sbin/ujail -a -e /etc/capabilities/netmgrd.json ] && {
        procd_add_jail netmgrd
        procd_set_param capabilities /etc/capabilities/netmgrd.json
        procd_set_param user radio
        procd_set_param group radio
        procd_set_param no_new_privs 1
    }
    procd_close_instance
}

stop_service() {
        echo "Stopping netmgrd Instance"
}

reload_service() {
    echo 8 > /sys/class/net/rmnet_ipa0/queues/rx-0/rps_cpus
    for FILE in /sys/class/net/rmnet_data*/queues/rx-0/rps_cpus; do
        echo 6 > $FILE
    done
    if [ -d /sys/class/net/rmnet_eth0 ]; then
        for FILE in /sys/class/net/rmnet_eth[0-9]/queues/rx-0/rps_cpus; do
            echo 6 > $FILE
        done
    fi
}

service_triggers() {
    procd_add_reload_trigger "netmgrd_reload"
}
