~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/arch/powerpc/dawr-power9.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/arch/powerpc/dawr-power9.rst (Architecture i386) and /Documentation/arch/ppc/dawr-power9.rst (Architecture ppc)


  1 =====================                             
  2 DAWR issues on POWER9                             
  3 =====================                             
  4                                                   
  5 On older POWER9 processors, the Data Address W    
  6 cause a checkstop if it points to cache inhibi    
  7 has no way to distinguish CI memory when confi    
  8 systems, the DAWR is disabled.                    
  9                                                   
 10 Affected processor revisions                      
 11 ============================                      
 12                                                   
 13 This issue is only present on processors prior    
 14 found in /proc/cpuinfo::                          
 15                                                   
 16     processor       : 0                           
 17     cpu             : POWER9, altivec supporte    
 18     clock           : 3800.000000MHz              
 19     revision        : 2.3 (pvr 004e 1203)         
 20                                                   
 21 On a system with the issue, the DAWR is disabl    
 22                                                   
 23 Technical Details:                                
 24 ==================                                
 25                                                   
 26 DAWR has 6 different ways of being set.           
 27 1) ptrace                                         
 28 2) h_set_mode(DAWR)                               
 29 3) h_set_dabr()                                   
 30 4) kvmppc_set_one_reg()                           
 31 5) xmon                                           
 32                                                   
 33 For ptrace, we now advertise zero breakpoints     
 34 PPC_PTRACE_GETHWDBGINFO call. This results in     
 35 software emulation of the watchpoint (which is    
 36                                                   
 37 h_set_mode(DAWR) and h_set_dabr() will now ret    
 38 guest on a POWER9 host. Current Linux guests i    
 39 they will silently not get the DAWR.              
 40                                                   
 41 kvmppc_set_one_reg() will store the value in t    
 42 actually set it on POWER9 hardware. This is do    
 43 migration from POWER8 to POWER9, at the cost o    
 44 DAWR on the migration.                            
 45                                                   
 46 For xmon, the 'bd' command will return an erro    
 47                                                   
 48 Consequences for users                            
 49 ======================                            
 50                                                   
 51 For GDB watchpoints (ie 'watch' command) on PO    
 52 will accept the command. Unfortunately since t    
 53 support for the watchpoint, GDB will software     
 54 making it run very slowly.                        
 55                                                   
 56 The same will also be true for any guests star    
 57 host. The watchpoint will fail and GDB will fa    
 58 emulation.                                        
 59                                                   
 60 If a guest is started on a POWER8 host, GDB wi    
 61 and configure the hardware to use the DAWR. Th    
 62 speed since it can use the hardware emulation.    
 63 guest is migrated to a POWER9 host, the watchp    
 64 POWER9. Loads and stores to the watchpoint loc    
 65 trapped in GDB. The watchpoint is remembered,     
 66 migrated back to the POWER8 host, it will star    
 67                                                   
 68 Force enabling the DAWR                           
 69 =======================                           
 70 Kernels (since ~v5.2) have an option to force     
 71                                                   
 72   echo Y > /sys/kernel/debug/powerpc/dawr_enab    
 73                                                   
 74 This enables the DAWR even on POWER9.             
 75                                                   
 76 This is a dangerous setting, USE AT YOUR OWN R    
 77                                                   
 78 Some users may not care about a bad user crash    
 79 (ie. single user/desktop systems) and really w    
 80 allows them to force enable DAWR.                 
 81                                                   
 82 This flag can also be used to disable DAWR acc    
 83 cleared, all DAWR access should be cleared imm    
 84 machine once again safe from crashing.            
 85                                                   
 86 Userspace may get confused by toggling this. I    
 87 enabled/disabled between getting the number of    
 88 PTRACE_GETHWDBGINFO) and setting the breakpoin    
 89 inconsistent view of what's available. Similar    
 90                                                   
 91 For the DAWR to be enabled in a KVM guest, the    
 92 enabled in the host AND the guest. For this re    
 93 POWERVM as it doesn't allow the HCALL to work.    
 94 dawr_enable_dangerous file will fail if the hy    
 95 writing the DAWR.                                 
 96                                                   
 97 To double check the DAWR is working, run this     
 98                                                   
 99   tools/testing/selftests/powerpc/ptrace/ptrac    
100                                                   
101 Any errors/failures/skips mean something is wr    
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php