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

TOMOYO Linux Cross Reference
Linux/arch/parisc/include/asm/unwind.h

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 /arch/parisc/include/asm/unwind.h (Architecture sparc64) and /arch/mips/include/asm-mips/unwind.h (Architecture mips)


  1 /* SPDX-License-Identifier: GPL-2.0 */              1 
  2 #ifndef _UNWIND_H_                                
  3 #define _UNWIND_H_                                
  4                                                   
  5 #include <linux/list.h>                           
  6                                                   
  7 /* Max number of levels to backtrace */           
  8 #define MAX_UNWIND_ENTRIES      30                
  9                                                   
 10 /* From ABI specifications */                     
 11 struct unwind_table_entry {                       
 12         unsigned int region_start;                
 13         unsigned int region_end;                  
 14         unsigned int Cannot_unwind:1; /* 0 */     
 15         unsigned int Millicode:1;       /* 1 *    
 16         unsigned int Millicode_save_sr0:1;        
 17         unsigned int Region_description:2;        
 18         unsigned int reserved1:1;       /* 5 *    
 19         unsigned int Entry_SR:1;        /* 6 *    
 20         unsigned int Entry_FR:4;        /* num    
 21         unsigned int Entry_GR:5;        /* num    
 22         unsigned int Args_stored:1;     /* 16     
 23         unsigned int Variable_Frame:1;  /* 17     
 24         unsigned int Separate_Package_Body:1;     
 25         unsigned int Frame_Extension_Millicode    
 26         unsigned int Stack_Overflow_Check:1;      
 27         unsigned int Two_Instruction_SP_Increm    
 28         unsigned int Ada_Region:1;      /* 22     
 29         unsigned int cxx_info:1;        /* 23     
 30         unsigned int cxx_try_catch:1;   /* 24     
 31         unsigned int sched_entry_seq:1; /* 25     
 32         unsigned int reserved2:1;       /* 26     
 33         unsigned int Save_SP:1; /* 27 */          
 34         unsigned int Save_RP:1; /* 28 */          
 35         unsigned int Save_MRP_in_frame:1;         
 36         unsigned int extn_ptr_defined:1;          
 37         unsigned int Cleanup_defined:1; /* 31     
 38                                                   
 39         unsigned int MPE_XL_interrupt_marker:1    
 40         unsigned int HP_UX_interrupt_marker:1;    
 41         unsigned int Large_frame:1;     /* 2 *    
 42         unsigned int Pseudo_SP_Set:1;   /* 3 *    
 43         unsigned int reserved4:1;       /* 4 *    
 44         unsigned int Total_frame_size:27;         
 45 };                                                
 46                                                   
 47 struct unwind_table {                             
 48         struct list_head list;                    
 49         const char *name;                         
 50         unsigned long gp;                         
 51         unsigned long base_addr;                  
 52         unsigned long start;                      
 53         unsigned long end;                        
 54         const struct unwind_table_entry *table    
 55         unsigned long length;                     
 56 };                                                
 57                                                   
 58 struct unwind_frame_info {                        
 59         struct task_struct *t;                    
 60         /* Eventually we would like to be able    
 61            available; but for now we only try     
 62            frame */                               
 63         /* struct pt_regs regs; */                
 64         unsigned long sp, ip, rp, r31;            
 65         unsigned long prev_sp, prev_ip;           
 66 };                                                
 67                                                   
 68 struct unwind_table *                             
 69 unwind_table_add(const char *name, unsigned lo    
 70                  unsigned long gp, void *start    
 71 void                                              
 72 unwind_table_remove(struct unwind_table *table    
 73                                                   
 74 void unwind_frame_init(struct unwind_frame_inf    
 75                        struct pt_regs *regs);     
 76 void unwind_frame_init_from_blocked_task(struc    
 77                         struct task_struct *t)    
 78 void unwind_frame_init_task(struct unwind_fram    
 79                         struct task_struct *ta    
 80 int unwind_once(struct unwind_frame_info *info    
 81 int unwind_to_user(struct unwind_frame_info *i    
 82                                                   
 83 int unwind_init(void);                            
 84                                                   
 85 #endif                                            
 86                                                   

~ [ 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