1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _ASM_PARISC_CURRENT_H
3#define _ASM_PARISC_CURRENT_H
4
5#ifndef __ASSEMBLY__
6struct task_struct;
7
8static __always_inline struct task_struct *get_current(void)
9{
10	struct task_struct *ts;
11
12	/* do not use mfctl() macro as it is marked volatile */
13	asm( "mfctl %%cr30,%0" : "=r" (ts) );
14	return ts;
15}
16
17#define current get_current()
18
19#endif /* __ASSEMBLY__ */
20
21#endif /* _ASM_PARISC_CURRENT_H */
22