mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 07:02:06 +00:00 
			
		
		
		
	 b6dff3ec5e
			
		
	
	
		b6dff3ec5e
		
	
	
	
	
		
			
			Separate the task security context from task_struct. At this point, the security data is temporarily embedded in the task_struct with two pointers pointing to it. Note that the Alpha arch is altered as it refers to (E)UID and (E)GID in entry.S via asm-offsets. With comment fixes Signed-off-by: Marc Dionne <marc.c.dionne@gmail.com> Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: James Morris <jmorris@namei.org> Acked-by: Serge Hallyn <serue@us.ibm.com> Signed-off-by: James Morris <jmorris@namei.org>
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Generate definitions needed by assembly language modules.
 | |
|  * This code generates raw asm output which is post-processed to extract
 | |
|  * and format the required data.
 | |
|  */
 | |
| 
 | |
| #include <linux/types.h>
 | |
| #include <linux/stddef.h>
 | |
| #include <linux/sched.h>
 | |
| #include <linux/ptrace.h>
 | |
| #include <linux/kbuild.h>
 | |
| #include <asm/io.h>
 | |
| 
 | |
| void foo(void)
 | |
| {
 | |
| 	DEFINE(TI_TASK, offsetof(struct thread_info, task));
 | |
| 	DEFINE(TI_FLAGS, offsetof(struct thread_info, flags));
 | |
| 	DEFINE(TI_CPU, offsetof(struct thread_info, cpu));
 | |
| 	BLANK();
 | |
| 
 | |
|         DEFINE(TASK_BLOCKED, offsetof(struct task_struct, blocked));
 | |
|         DEFINE(TASK_CRED, offsetof(struct task_struct, cred));
 | |
|         DEFINE(TASK_REAL_PARENT, offsetof(struct task_struct, real_parent));
 | |
|         DEFINE(TASK_GROUP_LEADER, offsetof(struct task_struct, group_leader));
 | |
|         DEFINE(TASK_TGID, offsetof(struct task_struct, tgid));
 | |
|         BLANK();
 | |
| 
 | |
|         DEFINE(CRED_UID,  offsetof(struct cred, uid));
 | |
|         DEFINE(CRED_EUID, offsetof(struct cred, euid));
 | |
|         DEFINE(CRED_GID,  offsetof(struct cred, gid));
 | |
|         DEFINE(CRED_EGID, offsetof(struct cred, egid));
 | |
|         BLANK();
 | |
| 
 | |
| 	DEFINE(SIZEOF_PT_REGS, sizeof(struct pt_regs));
 | |
| 	DEFINE(PT_PTRACED, PT_PTRACED);
 | |
| 	DEFINE(CLONE_VM, CLONE_VM);
 | |
| 	DEFINE(CLONE_UNTRACED, CLONE_UNTRACED);
 | |
| 	DEFINE(SIGCHLD, SIGCHLD);
 | |
| 	BLANK();
 | |
| 
 | |
| 	DEFINE(HAE_CACHE, offsetof(struct alpha_machine_vector, hae_cache));
 | |
| 	DEFINE(HAE_REG, offsetof(struct alpha_machine_vector, hae_register));
 | |
| }
 |