Contributors: 19
Author Tokens Token Proportion Commits Commit Proportion
David Howells 32 21.19% 3 10.71%
Peter Zijlstra 23 15.23% 2 7.14%
Nico Pitre 20 13.25% 1 3.57%
Ingo Molnar 15 9.93% 5 17.86%
Linus Torvalds 12 7.95% 1 3.57%
Al Viro 10 6.62% 2 7.14%
Cédric Le Goater 6 3.97% 2 7.14%
Carsten Emde 4 2.65% 1 3.57%
Steven Rostedt 3 1.99% 1 3.57%
Serge E. Hallyn 3 1.99% 1 3.57%
Frédéric Weisbecker 3 1.99% 1 3.57%
Andrew G. Morgan 3 1.99% 1 3.57%
Eric W. Biedermann 3 1.99% 1 3.57%
Josh Poimboeuf 3 1.99% 1 3.57%
Tim Abbott 3 1.99% 1 3.57%
Kirill Korotaev 3 1.99% 1 3.57%
Andrew Lutomirski 3 1.99% 1 3.57%
Dipankar Sarma 1 0.66% 1 3.57%
Greg Kroah-Hartman 1 0.66% 1 3.57%
Total 151 28


/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _LINUX__INIT_TASK_H
#define _LINUX__INIT_TASK_H

#include <linux/rcupdate.h>
#include <linux/irqflags.h>
#include <linux/utsname.h>
#include <linux/lockdep.h>
#include <linux/ftrace.h>
#include <linux/ipc.h>
#include <linux/pid_namespace.h>
#include <linux/user_namespace.h>
#include <linux/securebits.h>
#include <linux/seqlock.h>
#include <linux/rbtree.h>
#include <linux/sched/autogroup.h>
#include <net/net_namespace.h>
#include <linux/sched/rt.h>
#include <linux/livepatch.h>
#include <linux/mm_types.h>

#include <asm/thread_info.h>

extern struct files_struct init_files;
extern struct fs_struct init_fs;
extern struct nsproxy init_nsproxy;
extern struct group_info init_groups;
extern struct cred init_cred;

#ifndef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
#define INIT_PREV_CPUTIME(x)	.prev_cputime = {			\
	.lock = __RAW_SPIN_LOCK_UNLOCKED(x.prev_cputime.lock),		\
},
#else
#define INIT_PREV_CPUTIME(x)
#endif

#ifdef CONFIG_POSIX_TIMERS
#define INIT_CPU_TIMERS(s)						\
	.cpu_timers = {							\
		LIST_HEAD_INIT(s.cpu_timers[0]),			\
		LIST_HEAD_INIT(s.cpu_timers[1]),			\
		LIST_HEAD_INIT(s.cpu_timers[2]),			\
	},
#else
#define INIT_CPU_TIMERS(s)
#endif

#define INIT_TASK_COMM "swapper"

/* Attach to the init_task data structure for proper alignment */
#ifdef CONFIG_ARCH_TASK_STRUCT_ON_STACK
#define __init_task_data __attribute__((__section__(".data..init_task")))
#else
#define __init_task_data /**/
#endif

/* Attach to the thread_info data structure for proper alignment */
#define __init_thread_info __attribute__((__section__(".data..init_thread_info")))

#endif