kernel/trace/rv/monitors/deadline/deadline.h

Source file repositories/reference/linux-study-clean/kernel/trace/rv/monitors/deadline/deadline.h

File Facts

System
Linux kernel
Corpus path
kernel/trace/rv/monitors/deadline/deadline.h
Extension
.h
Size
5757 bytes
Lines
204
Domain
Core OS
Bucket
Scheduler, Processes, Timers, Sync, And Syscalls
Inferred role
Core OS: implementation source
Status
source implementation candidate

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

if (p->policy == SCHED_DEADLINE) {
			if (!da_create_storage(EXPAND_ID_TASK(p), NULL)) {
				read_unlock(&tasklist_lock);
				goto fail;
			}
		}
	}
	read_unlock(&tasklist_lock);
	return 0;

fail:
	da_monitor_destroy();
	return -ENOMEM;
}

static void __maybe_unused handle_newtask(void *data, struct task_struct *task, u64 flags)
{
	/* Might be superfluous as tasks are not started with this policy.. */
	if (task->policy == SCHED_DEADLINE)
		da_create_storage(EXPAND_ID_TASK(task), NULL);
}

static void __maybe_unused handle_exit(void *data, struct task_struct *p, bool group_dead)
{
	if (p->policy == SCHED_DEADLINE)
		da_destroy_storage(get_entity_id(&p->dl, DL_TASK, DL_TASK));
}

#endif

Annotation

Implementation Notes