Loading arch/s390/include/asm/ctl_reg.h +1 −0 Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ #include <linux/bits.h> #define CR0_CLOCK_COMPARATOR_SIGN BIT(63 - 10) #define CR0_LOW_ADDRESS_PROTECTION BIT(63 - 35) #define CR0_EMERGENCY_SIGNAL_SUBMASK BIT(63 - 49) #define CR0_EXTERNAL_CALL_SUBMASK BIT(63 - 50) #define CR0_CLOCK_COMPARATOR_SUBMASK BIT(63 - 52) Loading arch/s390/kernel/early.c +12 −0 Original line number Diff line number Diff line Loading @@ -260,6 +260,17 @@ static inline void save_vector_registers(void) #endif } static inline void setup_control_registers(void) { unsigned long reg; __ctl_store(reg, 0, 0); reg |= CR0_LOW_ADDRESS_PROTECTION; reg |= CR0_EMERGENCY_SIGNAL_SUBMASK; reg |= CR0_EXTERNAL_CALL_SUBMASK; __ctl_load(reg, 0, 0); } static int __init disable_vector_extension(char *str) { S390_lowcore.machine_flags &= ~MACHINE_FLAG_VX; Loading Loading @@ -317,5 +328,6 @@ void __init startup_init(void) save_vector_registers(); setup_topology(); sclp_early_detect(); setup_control_registers(); lockdep_on(); } arch/s390/kernel/head64.S +0 −6 Original line number Diff line number Diff line Loading @@ -42,12 +42,6 @@ ENTRY(startup_continue) # brasl %r14,startup_init # check control registers stctg %c0,%c15,0(%r15) oi 6(%r15),0x60 # enable sigp emergency & external call oi 4(%r15),0x10 # switch on low address proctection lctlg %c0,%c15,0(%r15) lam 0,15,.Laregs-.LPG1(%r13) # load acrs needed by uaccess brasl %r14,start_kernel # go to C code # Loading Loading
arch/s390/include/asm/ctl_reg.h +1 −0 Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ #include <linux/bits.h> #define CR0_CLOCK_COMPARATOR_SIGN BIT(63 - 10) #define CR0_LOW_ADDRESS_PROTECTION BIT(63 - 35) #define CR0_EMERGENCY_SIGNAL_SUBMASK BIT(63 - 49) #define CR0_EXTERNAL_CALL_SUBMASK BIT(63 - 50) #define CR0_CLOCK_COMPARATOR_SUBMASK BIT(63 - 52) Loading
arch/s390/kernel/early.c +12 −0 Original line number Diff line number Diff line Loading @@ -260,6 +260,17 @@ static inline void save_vector_registers(void) #endif } static inline void setup_control_registers(void) { unsigned long reg; __ctl_store(reg, 0, 0); reg |= CR0_LOW_ADDRESS_PROTECTION; reg |= CR0_EMERGENCY_SIGNAL_SUBMASK; reg |= CR0_EXTERNAL_CALL_SUBMASK; __ctl_load(reg, 0, 0); } static int __init disable_vector_extension(char *str) { S390_lowcore.machine_flags &= ~MACHINE_FLAG_VX; Loading Loading @@ -317,5 +328,6 @@ void __init startup_init(void) save_vector_registers(); setup_topology(); sclp_early_detect(); setup_control_registers(); lockdep_on(); }
arch/s390/kernel/head64.S +0 −6 Original line number Diff line number Diff line Loading @@ -42,12 +42,6 @@ ENTRY(startup_continue) # brasl %r14,startup_init # check control registers stctg %c0,%c15,0(%r15) oi 6(%r15),0x60 # enable sigp emergency & external call oi 4(%r15),0x10 # switch on low address proctection lctlg %c0,%c15,0(%r15) lam 0,15,.Laregs-.LPG1(%r13) # load acrs needed by uaccess brasl %r14,start_kernel # go to C code # Loading