diff options
author | Damien Zammit <damien@zamaudio.com> | 2023-02-14 00:06:54 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2023-02-14 00:06:54 +0100 |
commit | 544071f200124fafd4fe7628c54f124e8577ca82 (patch) | |
tree | f0e0ef8a706126c3d6a65e21ee3f5dcd40759e26 /linux/dev/include | |
parent | f9ebee5589f8056ef52c6ecfdf7d6e10f4d34d1c (diff) | |
download | gnumach-544071f200124fafd4fe7628c54f124e8577ca82.tar.gz gnumach-544071f200124fafd4fe7628c54f124e8577ca82.tar.bz2 gnumach-544071f200124fafd4fe7628c54f124e8577ca82.zip |
Make curr_ipl[] per cpu
Diffstat (limited to 'linux/dev/include')
-rw-r--r-- | linux/dev/include/asm-i386/system.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/linux/dev/include/asm-i386/system.h b/linux/dev/include/asm-i386/system.h index 41eb65a4..ac091e27 100644 --- a/linux/dev/include/asm-i386/system.h +++ b/linux/dev/include/asm-i386/system.h @@ -1,7 +1,8 @@ #ifndef __ASM_SYSTEM_H #define __ASM_SYSTEM_H -#include <i386/ipl.h> /* curr_ipl, splx */ +#include <i386/ipl.h> /* curr_ipl[], splx */ +#include <i386/cpu_number.h> #include <asm/segment.h> @@ -225,7 +226,7 @@ static inline unsigned long __xchg(unsigned long x, void * ptr, int size) #define mb() __asm__ __volatile__ ("" : : :"memory") #define __sti() __asm__ __volatile__ ("sti": : :"memory") #define __cli() __asm__ __volatile__ ("cli": : :"memory") -#define __save_flags(x) (x = ((curr_ipl > 0) ? 0 : (1 << 9))) +#define __save_flags(x) (x = ((curr_ipl[cpu_number()] > 0) ? 0 : (1 << 9))) #define __restore_flags(x) splx((x & (1 << 9)) ? 0 : 7) #ifdef __SMP__ |