@@ -176,7 +176,7 @@ static void dump_fault_info(struct pt_regs *regs)
176176 unsigned long asce ;
177177
178178 pr_alert ("Failing address: %016lx TEID: %016lx\n" ,
179- regs -> int_parm_long & __FAIL_ADDR_MASK , regs -> int_parm_long );
179+ get_fault_address ( regs ) , regs -> int_parm_long );
180180 pr_alert ("Fault in " );
181181 switch (regs -> int_parm_long & 3 ) {
182182 case 3 :
@@ -210,7 +210,7 @@ static void dump_fault_info(struct pt_regs *regs)
210210 unreachable ();
211211 }
212212 pr_cont ("ASCE.\n" );
213- dump_pagetable (asce , regs -> int_parm_long & __FAIL_ADDR_MASK );
213+ dump_pagetable (asce , get_fault_address ( regs ) );
214214}
215215
216216int show_unhandled_signals = 1 ;
@@ -237,8 +237,7 @@ void report_user_fault(struct pt_regs *regs, long signr, int is_mm_fault)
237237static void do_sigsegv (struct pt_regs * regs , int si_code )
238238{
239239 report_user_fault (regs , SIGSEGV , 1 );
240- force_sig_fault (SIGSEGV , si_code ,
241- (void __user * )(regs -> int_parm_long & __FAIL_ADDR_MASK ));
240+ force_sig_fault (SIGSEGV , si_code , (void __user * )get_fault_address (regs ));
242241}
243242
244243static void do_no_context (struct pt_regs * regs , vm_fault_t fault )
@@ -280,8 +279,7 @@ static void do_low_address(struct pt_regs *regs)
280279
281280static void do_sigbus (struct pt_regs * regs )
282281{
283- force_sig_fault (SIGBUS , BUS_ADRERR ,
284- (void __user * )(regs -> int_parm_long & __FAIL_ADDR_MASK ));
282+ force_sig_fault (SIGBUS , BUS_ADRERR , (void __user * )get_fault_address (regs ));
285283}
286284
287285static void do_fault_error (struct pt_regs * regs , vm_fault_t fault )
@@ -547,7 +545,7 @@ NOKPROBE_SYMBOL(do_dat_exception);
547545
548546void do_secure_storage_access (struct pt_regs * regs )
549547{
550- unsigned long addr = regs -> int_parm_long & __FAIL_ADDR_MASK ;
548+ unsigned long addr = get_fault_address ( regs ) ;
551549 struct vm_area_struct * vma ;
552550 struct mm_struct * mm ;
553551 struct page * page ;
@@ -625,8 +623,8 @@ NOKPROBE_SYMBOL(do_secure_storage_access);
625623
626624void do_non_secure_storage_access (struct pt_regs * regs )
627625{
628- unsigned long gaddr = regs -> int_parm_long & __FAIL_ADDR_MASK ;
629626 struct gmap * gmap = (struct gmap * )S390_lowcore .gmap ;
627+ unsigned long gaddr = get_fault_address (regs );
630628
631629 if (get_fault_type (regs ) != GMAP_FAULT ) {
632630 do_fault_error (regs , VM_FAULT_BADMAP );
@@ -640,8 +638,8 @@ NOKPROBE_SYMBOL(do_non_secure_storage_access);
640638
641639void do_secure_storage_violation (struct pt_regs * regs )
642640{
643- unsigned long gaddr = regs -> int_parm_long & __FAIL_ADDR_MASK ;
644641 struct gmap * gmap = (struct gmap * )S390_lowcore .gmap ;
642+ unsigned long gaddr = get_fault_address (regs );
645643
646644 /*
647645 * If the VM has been rebooted, its address space might still contain
0 commit comments