|
|
1.1 ! root 1: /* ! 2: * Declaration of block device ! 3: * switch. Each entry (row) is ! 4: * the only link between the ! 5: * main unix code and the driver. ! 6: * The initialization of the ! 7: * device switches is in the ! 8: * file conf.c. ! 9: */ ! 10: struct bdevsw ! 11: { ! 12: int (*d_open)(); ! 13: int (*d_close)(); ! 14: int (*d_strategy)(); ! 15: int (*d_dump)(); ! 16: int d_flags; ! 17: }; ! 18: #ifdef KERNEL ! 19: struct bdevsw bdevsw[]; ! 20: #endif ! 21: ! 22: /* ! 23: * Character device switch. ! 24: */ ! 25: extern struct cdevsw ! 26: { ! 27: int (*d_open)(); ! 28: int (*d_close)(); ! 29: int (*d_read)(); ! 30: int (*d_write)(); ! 31: int (*d_ioctl)(); ! 32: int (*d_reset)(); ! 33: struct streamtab *qinfo; ! 34: }; ! 35: #ifdef KERNEL ! 36: struct cdevsw cdevsw[]; ! 37: #endif ! 38: ! 39: /* file system types */ ! 40: struct fstypsw { ! 41: int (*t_put)(); ! 42: struct inode *(*t_get)(); ! 43: int (*t_free)(); ! 44: int (*t_updat)(); ! 45: int (*t_read)(); ! 46: int (*t_write)(); ! 47: int (*t_trunc)(); ! 48: int (*t_stat)(); ! 49: int (*t_nami)(); ! 50: int (*t_mount)(); ! 51: int (*t_ioctl)(); ! 52: struct inode * (*t_open)(); ! 53: }; ! 54: #ifdef KERNEL ! 55: extern struct fstypsw fstypsw[]; ! 56: extern nfstyp; ! 57: /* defaults for fstypsw */ ! 58: extern struct inode *nullget(); ! 59: extern int nullnami(); ! 60: extern struct inode *nullopen(); ! 61: #endif ! 62: ! 63: /* ! 64: * stream processor table ! 65: */ ! 66: extern struct streamtab { ! 67: struct qinit *rdinit; ! 68: struct qinit *wrinit; ! 69: } *streamtab[]; ! 70: ! 71: /* ! 72: * Swap device information ! 73: */ ! 74: struct swdevt ! 75: { ! 76: dev_t sw_dev; ! 77: int sw_freed; ! 78: }; ! 79: #ifdef KERNEL ! 80: struct swdevt swdevt[]; ! 81: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.