aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r--arch/powerpc/include/asm/hw_irq.h3
-rw-r--r--arch/powerpc/include/asm/posix_types.h3
-rw-r--r--arch/powerpc/include/asm/stat.h4
-rw-r--r--arch/powerpc/include/asm/thread_info.h18
4 files changed, 22 insertions, 6 deletions
diff --git a/arch/powerpc/include/asm/hw_irq.h b/arch/powerpc/include/asm/hw_irq.h
index c9aac24b02e2..32b394f3b854 100644
--- a/arch/powerpc/include/asm/hw_irq.h
+++ b/arch/powerpc/include/asm/hw_irq.h
@@ -100,6 +100,9 @@ static inline void hard_irq_disable(void)
100 get_paca()->irq_happened |= PACA_IRQ_HARD_DIS; 100 get_paca()->irq_happened |= PACA_IRQ_HARD_DIS;
101} 101}
102 102
103/* include/linux/interrupt.h needs hard_irq_disable to be a macro */
104#define hard_irq_disable hard_irq_disable
105
103/* 106/*
104 * This is called by asynchronous interrupts to conditionally 107 * This is called by asynchronous interrupts to conditionally
105 * re-enable hard interrupts when soft-disabled after having 108 * re-enable hard interrupts when soft-disabled after having
diff --git a/arch/powerpc/include/asm/posix_types.h b/arch/powerpc/include/asm/posix_types.h
index f1393252bbda..2958c5b97b2d 100644
--- a/arch/powerpc/include/asm/posix_types.h
+++ b/arch/powerpc/include/asm/posix_types.h
@@ -16,9 +16,6 @@ typedef int __kernel_ssize_t;
16typedef long __kernel_ptrdiff_t; 16typedef long __kernel_ptrdiff_t;
17#define __kernel_size_t __kernel_size_t 17#define __kernel_size_t __kernel_size_t
18 18
19typedef unsigned short __kernel_nlink_t;
20#define __kernel_nlink_t __kernel_nlink_t
21
22typedef short __kernel_ipc_pid_t; 19typedef short __kernel_ipc_pid_t;
23#define __kernel_ipc_pid_t __kernel_ipc_pid_t 20#define __kernel_ipc_pid_t __kernel_ipc_pid_t
24#endif 21#endif
diff --git a/arch/powerpc/include/asm/stat.h b/arch/powerpc/include/asm/stat.h
index e4edc510b530..84880b80cc1c 100644
--- a/arch/powerpc/include/asm/stat.h
+++ b/arch/powerpc/include/asm/stat.h
@@ -30,11 +30,11 @@ struct stat {
30 unsigned long st_dev; 30 unsigned long st_dev;
31 ino_t st_ino; 31 ino_t st_ino;
32#ifdef __powerpc64__ 32#ifdef __powerpc64__
33 nlink_t st_nlink; 33 unsigned long st_nlink;
34 mode_t st_mode; 34 mode_t st_mode;
35#else 35#else
36 mode_t st_mode; 36 mode_t st_mode;
37 nlink_t st_nlink; 37 unsigned short st_nlink;
38#endif 38#endif
39 uid_t st_uid; 39 uid_t st_uid;
40 gid_t st_gid; 40 gid_t st_gid;
diff --git a/arch/powerpc/include/asm/thread_info.h b/arch/powerpc/include/asm/thread_info.h
index a556ccc16b58..68831e9cf82f 100644
--- a/arch/powerpc/include/asm/thread_info.h
+++ b/arch/powerpc/include/asm/thread_info.h
@@ -140,7 +140,23 @@ static inline void set_restore_sigmask(void)
140{ 140{
141 struct thread_info *ti = current_thread_info(); 141 struct thread_info *ti = current_thread_info();
142 ti->local_flags |= _TLF_RESTORE_SIGMASK; 142 ti->local_flags |= _TLF_RESTORE_SIGMASK;
143 set_bit(TIF_SIGPENDING, &ti->flags); 143 WARN_ON(!test_bit(TIF_SIGPENDING, &ti->flags));
144}
145static inline void clear_restore_sigmask(void)
146{
147 current_thread_info()->local_flags &= ~_TLF_RESTORE_SIGMASK;
148}
149static inline bool test_restore_sigmask(void)
150{
151 return current_thread_info()->local_flags & _TLF_RESTORE_SIGMASK;
152}
153static inline bool test_and_clear_restore_sigmask(void)
154{
155 struct thread_info *ti = current_thread_info();
156 if (!(ti->local_flags & _TLF_RESTORE_SIGMASK))
157 return false;
158 ti->local_flags &= ~_TLF_RESTORE_SIGMASK;
159 return true;
144} 160}
145 161
146static inline bool test_thread_local_flags(unsigned int flags) 162static inline bool test_thread_local_flags(unsigned int flags)