cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

prio.h (1119B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _LINUX_SCHED_PRIO_H
      3#define _LINUX_SCHED_PRIO_H
      4
      5#define MAX_NICE	19
      6#define MIN_NICE	-20
      7#define NICE_WIDTH	(MAX_NICE - MIN_NICE + 1)
      8
      9/*
     10 * Priority of a process goes from 0..MAX_PRIO-1, valid RT
     11 * priority is 0..MAX_RT_PRIO-1, and SCHED_NORMAL/SCHED_BATCH
     12 * tasks are in the range MAX_RT_PRIO..MAX_PRIO-1. Priority
     13 * values are inverted: lower p->prio value means higher priority.
     14 */
     15
     16#define MAX_RT_PRIO		100
     17
     18#define MAX_PRIO		(MAX_RT_PRIO + NICE_WIDTH)
     19#define DEFAULT_PRIO		(MAX_RT_PRIO + NICE_WIDTH / 2)
     20
     21/*
     22 * Convert user-nice values [ -20 ... 0 ... 19 ]
     23 * to static priority [ MAX_RT_PRIO..MAX_PRIO-1 ],
     24 * and back.
     25 */
     26#define NICE_TO_PRIO(nice)	((nice) + DEFAULT_PRIO)
     27#define PRIO_TO_NICE(prio)	((prio) - DEFAULT_PRIO)
     28
     29/*
     30 * Convert nice value [19,-20] to rlimit style value [1,40].
     31 */
     32static inline long nice_to_rlimit(long nice)
     33{
     34	return (MAX_NICE - nice + 1);
     35}
     36
     37/*
     38 * Convert rlimit style value [1,40] to nice value [-20, 19].
     39 */
     40static inline long rlimit_to_nice(long prio)
     41{
     42	return (MAX_NICE - prio + 1);
     43}
     44
     45#endif /* _LINUX_SCHED_PRIO_H */