cregit-Linux how code gets into the kernel

Release 4.16 include/linux/init_task.h

Directory: include/linux
/* 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_PID_LINK(type) 					\
{                                                               \
        .node = {                                               \
                .next = NULL,                                   \
                .pprev = NULL,                                  \
        },                                                      \
        .pid = &init_struct_pid,                                \
}


#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

Overall Contributors

PersonTokensPropCommitsCommitProp
David Howells3220.13%310.00%
Peter Zijlstra2314.47%26.67%
Nico Pitre2012.58%13.33%
Ingo Molnar159.43%516.67%
Linus Torvalds127.55%13.33%
Al Viro106.29%26.67%
Sukadev Bhattiprolu74.40%13.33%
Cédric Le Goater63.77%26.67%
Carsten Emde42.52%13.33%
Steven Rostedt31.89%13.33%
Andrew G. Morgan31.89%13.33%
Frédéric Weisbecker31.89%13.33%
Serge E. Hallyn31.89%13.33%
Tim Abbott31.89%13.33%
Josh Poimboeuf31.89%13.33%
Eric W. Biedermann31.89%13.33%
Andrew Lutomirski31.89%13.33%
Kirill Korotaev31.89%13.33%
Greg Kroah-Hartman10.63%13.33%
Dipankar Sarma10.63%13.33%
Oleg Nesterov10.63%13.33%
Total159100.00%30100.00%
Directory: include/linux
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.