mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 06:34:12 +08:00
tomoyo: avoid get+put of task_struct
Use task_cred_xxx(task, security) in tomoyo_real_domain() to avoid a get+put of the target cred. Signed-off-by: Serge E. Hallyn <serue@us.ibm.com> Acked-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Signed-off-by: James Morris <jmorris@namei.org>
This commit is contained in:
parent
13b297d943
commit
fbeb4a9c20
@ -90,17 +90,10 @@ static inline struct tomoyo_domain_info *tomoyo_domain(void)
|
|||||||
return current_cred()->security;
|
return current_cred()->security;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Caller holds tasklist_lock spinlock. */
|
|
||||||
static inline struct tomoyo_domain_info *tomoyo_real_domain(struct task_struct
|
static inline struct tomoyo_domain_info *tomoyo_real_domain(struct task_struct
|
||||||
*task)
|
*task)
|
||||||
{
|
{
|
||||||
/***** CRITICAL SECTION START *****/
|
return task_cred_xxx(task, security);
|
||||||
const struct cred *cred = get_task_cred(task);
|
|
||||||
struct tomoyo_domain_info *domain = cred->security;
|
|
||||||
|
|
||||||
put_cred(cred);
|
|
||||||
return domain;
|
|
||||||
/***** CRITICAL SECTION END *****/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* !defined(_SECURITY_TOMOYO_TOMOYO_H) */
|
#endif /* !defined(_SECURITY_TOMOYO_TOMOYO_H) */
|
||||||
|
Loading…
Reference in New Issue
Block a user