root/include/linux/proc_fs.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 #ifndef _LINUX_PROC_FS_H
   2 #define _LINUX_PROC_FS_H
   3 
   4 #include <linux/config.h>
   5 #include <linux/fs.h>
   6 
   7 /*
   8  * The proc filesystem constants/structures
   9  */
  10 
  11 /*
  12  * We always define these enumerators
  13  */
  14 
  15 enum root_directory_inos {
  16         PROC_ROOT_INO = 1,
  17         PROC_LOADAVG,
  18         PROC_UPTIME,
  19         PROC_MEMINFO,
  20         PROC_KMSG,
  21         PROC_VERSION,
  22         PROC_CPUINFO,
  23         PROC_PCI,
  24         PROC_SELF,      /* will change inode # */
  25         PROC_NET,
  26         PROC_SCSI,
  27         PROC_MALLOC,
  28         PROC_KCORE,
  29         PROC_MODULES,
  30         PROC_STAT,
  31         PROC_DEVICES,
  32         PROC_INTERRUPTS,
  33         PROC_FILESYSTEMS,
  34         PROC_KSYMS,
  35         PROC_DMA,       
  36         PROC_IOPORTS,
  37         PROC_PROFILE /* whether enabled or not */
  38 };
  39 
  40 enum pid_directory_inos {
  41         PROC_PID_INO = 2,
  42         PROC_PID_MEM,
  43         PROC_PID_CWD,
  44         PROC_PID_ROOT,
  45         PROC_PID_EXE,
  46         PROC_PID_FD,
  47         PROC_PID_ENVIRON,
  48         PROC_PID_CMDLINE,
  49         PROC_PID_STAT,
  50         PROC_PID_STATM,
  51         PROC_PID_MAPS
  52 };
  53 
  54 enum pid_subdirectory_inos {
  55         PROC_PID_FD_DIR = 1
  56 };
  57 
  58 enum net_directory_inos {
  59         PROC_NET_UNIX = 128,
  60         PROC_NET_ARP,
  61         PROC_NET_ROUTE,
  62         PROC_NET_DEV,
  63         PROC_NET_RAW,
  64         PROC_NET_TCP,
  65         PROC_NET_UDP,
  66         PROC_NET_SNMP,
  67         PROC_NET_RARP,
  68         PROC_NET_IGMP,
  69         PROC_NET_IPFWFWD,
  70         PROC_NET_IPFWBLK,
  71         PROC_NET_IPACCT,
  72         PROC_NET_IPMSQHST,
  73         PROC_NET_WAVELAN,
  74         PROC_NET_IPX_INTERFACE,
  75         PROC_NET_IPX_ROUTE,
  76         PROC_NET_IPX,
  77         PROC_NET_ATALK,
  78         PROC_NET_AT_ROUTE,
  79         PROC_NET_ATIF,
  80         PROC_NET_AX25_ROUTE,
  81         PROC_NET_AX25,
  82         PROC_NET_AX25_CALLS,
  83         PROC_NET_NR_NODES,
  84         PROC_NET_NR_NEIGH,
  85         PROC_NET_NR,
  86         PROC_NET_SOCKSTAT,
  87         PROC_NET_LAST
  88 };
  89 
  90 enum scsi_directory_inos {
  91         PROC_SCSI_SCSI = 256,
  92         PROC_SCSI_EATA,
  93         PROC_SCSI_EATA_PIO,
  94         PROC_SCSI_AHA152X,
  95         PROC_SCSI_AHA1542,
  96         PROC_SCSI_AHA1740,
  97         PROC_SCSI_AIC7XXX,
  98         PROC_SCSI_BUSLOGIC,
  99         PROC_SCSI_U14_34F,
 100         PROC_SCSI_FUTURE_DOMAIN,
 101         PROC_SCSI_GENERIC_NCR5380,
 102         PROC_SCSI_IN2000,
 103         PROC_SCSI_PAS16,
 104         PROC_SCSI_QLOGIC,
 105         PROC_SCSI_SEAGATE,
 106         PROC_SCSI_T128,
 107         PROC_SCSI_NCR53C7xx,
 108         PROC_SCSI_ULTRASTOR,
 109         PROC_SCSI_7000FASST,
 110         PROC_SCSI_EATA2X,
 111         PROC_SCSI_SCSI_DEBUG,   
 112         PROC_SCSI_NOT_PRESENT,
 113         PROC_SCSI_FILE,                        /* I'm asuming here that we */
 114         PROC_SCSI_LAST = (PROC_SCSI_FILE + 16) /* won't ever see more than */
 115 };                                             /* 16 HBAs in one machine   */
 116 
 117 #define PROC_SUPER_MAGIC 0x9fa0
 118 
 119 struct proc_dir_entry {
 120         unsigned short low_ino;
 121         int (*get_info)(char *, char **, off_t, int, int);
 122         unsigned short namelen;
 123         const char * name;
 124 };
 125 
 126 extern struct super_block *proc_read_super(struct super_block *,void *,int);
 127 extern void proc_put_inode(struct inode *);
 128 extern void proc_put_super(struct super_block *);
 129 extern void proc_statfs(struct super_block *, struct statfs *, int);
 130 extern void proc_read_inode(struct inode *);
 131 extern void proc_write_inode(struct inode *);
 132 extern int proc_match(int, const char *, struct proc_dir_entry *);
 133 extern int proc_net_register(struct proc_dir_entry *);
 134 extern int proc_net_unregister(int);
 135 
 136 extern struct inode_operations proc_root_inode_operations;
 137 extern struct inode_operations proc_base_inode_operations;
 138 extern struct inode_operations proc_net_inode_operations;
 139 extern struct inode_operations proc_scsi_inode_operations;
 140 extern struct inode_operations proc_mem_inode_operations;
 141 extern struct inode_operations proc_array_inode_operations;
 142 extern struct inode_operations proc_arraylong_inode_operations;
 143 extern struct inode_operations proc_kcore_inode_operations;
 144 extern struct inode_operations proc_profile_inode_operations;
 145 extern struct inode_operations proc_kmsg_inode_operations;
 146 extern struct inode_operations proc_link_inode_operations;
 147 extern struct inode_operations proc_fd_inode_operations;
 148 
 149 #endif

/* [previous][next][first][last][top][bottom][index][help] */