diff options
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/init_main.c | 3 | ||||
-rw-r--r-- | sys/kern/kern_conf.c | 26 | ||||
-rw-r--r-- | sys/kern/kern_descrip.c | 51 | ||||
-rw-r--r-- | sys/kern/subr_diskslice.c | 6 | ||||
-rw-r--r-- | sys/kern/subr_log.c | 23 | ||||
-rw-r--r-- | sys/kern/tty_pty.c | 21 | ||||
-rw-r--r-- | sys/kern/tty_snoop.c | 29 | ||||
-rw-r--r-- | sys/kern/tty_tty.c | 22 |
8 files changed, 38 insertions, 143 deletions
diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c index bcc7c86..7791f7f 100644 --- a/sys/kern/init_main.c +++ b/sys/kern/init_main.c @@ -39,10 +39,9 @@ * SUCH DAMAGE. * * @(#)init_main.c 8.9 (Berkeley) 1/21/94 - * $Id: init_main.c,v 1.123 1999/06/30 15:33:32 peter Exp $ + * $Id: init_main.c,v 1.124 1999/07/01 13:21:36 peter Exp $ */ -#include "opt_devfs.h" #include "opt_init_path.h" #include <sys/param.h> diff --git a/sys/kern/kern_conf.c b/sys/kern/kern_conf.c index 4da89a7..2f86534 100644 --- a/sys/kern/kern_conf.c +++ b/sys/kern/kern_conf.c @@ -30,11 +30,9 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kern_conf.c,v 1.58 1999/08/17 20:25:50 billf Exp $ + * $Id: kern_conf.c,v 1.59 1999/08/20 20:24:59 julian Exp $ */ -#include "opt_devfs.h" - #include <sys/param.h> #include <sys/kernel.h> #include <sys/systm.h> @@ -44,10 +42,6 @@ #include <sys/vnode.h> #include <sys/queue.h> #include <machine/stdarg.h> -#ifdef DEVFS -#include <sys/devfsext.h> -#endif /* DEVFS */ - #define cdevsw_ALLOCSTART (NUMCDEVSW/2) @@ -64,6 +58,8 @@ static struct specinfo devt_stash[DEVT_STASH]; static SLIST_HEAD(devt_hash_head, specinfo) dev_hash[DEVT_HASH]; +devfs_create_t *devfs_create_hook; + /* * Routine to convert from character to block device number. * @@ -239,9 +235,6 @@ makedev(int x, int y) } bzero(si, sizeof(*si)); si->si_udev = udev; - si->si_bsize_phys = DEV_BSIZE; - si->si_bsize_best = BLKDEV_IOSIZE; - si->si_bsize_max = MAXBSIZE; if (y > 256) sprintf(si->si_name, "#%d/0x%x", x, y); else @@ -313,17 +306,8 @@ make_dev(struct cdevsw *devsw, int minor, uid_t uid, gid_t gid, int perms, char va_end(ap); dev->si_devsw = devsw; -#ifdef DEVFS - dev->si_devfs = devfs_add_devswf(devsw, minor, DV_CHR, - uid, gid, perms, dev->si_name); - /* XXX HACK .. name may not start in 'r' */ - if ((devsw->d_bmaj != -1) - && (*dev->si_name == 'r') - && ((devsw->d_flags & D_TYPEMASK) == D_DISK)) { - dev->si_devfs = devfs_add_devswf(devsw, minor, DV_BLK, - uid, gid, perms, dev->si_name + 1); - } -#endif /* DEVFS */ + if (devfs_create_hook) + devfs_create_hook(dev, uid, gid, perms); return (dev); } diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index c90ce11..6532596 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -36,12 +36,10 @@ * SUCH DAMAGE. * * @(#)kern_descrip.c 8.6 (Berkeley) 4/19/94 - * $Id: kern_descrip.c,v 1.64 1999/06/07 20:37:27 msmith Exp $ + * $Id: kern_descrip.c,v 1.65 1999/08/04 18:53:44 green Exp $ */ #include "opt_compat.h" -#include "opt_devfs.h" - #include <sys/param.h> #include <sys/systm.h> #include <sys/sysproto.h> @@ -65,10 +63,6 @@ #include <vm/vm.h> #include <vm/vm_extern.h> -#ifdef DEVFS -#include <sys/devfsext.h> -#endif /*DEVFS*/ - static MALLOC_DEFINE(M_FILEDESC, "file desc", "Open file descriptor table"); MALLOC_DEFINE(M_FILE, "file", "Open file structure"); static MALLOC_DEFINE(M_SIGIO, "sigio", "sigio structures"); @@ -1292,43 +1286,18 @@ SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, CTLFLAG_RW, SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RW, &maxfiles, 0, "Maximum number of files"); -static int fildesc_devsw_installed; -#ifdef DEVFS -static void *devfs_token_stdin; -static void *devfs_token_stdout; -static void *devfs_token_stderr; -static void *devfs_token_fildesc[NUMFDESC]; -#endif - -static void fildesc_drvinit(void *unused) +static void +fildesc_drvinit(void *unused) { -#ifdef DEVFS int fd; -#endif - if( ! fildesc_devsw_installed ) { - cdevsw_add(&fildesc_cdevsw); - fildesc_devsw_installed = 1; -#ifdef DEVFS - for (fd = 0; fd < NUMFDESC; fd++) - devfs_token_fildesc[fd] = - devfs_add_devswf(&fildesc_cdevsw, fd, DV_CHR, - UID_BIN, GID_BIN, 0666, - "fd/%d", fd); - devfs_token_stdin = - devfs_add_devswf(&fildesc_cdevsw, 0, DV_CHR, - UID_ROOT, GID_WHEEL, 0666, - "stdin"); - devfs_token_stdout = - devfs_add_devswf(&fildesc_cdevsw, 1, DV_CHR, - UID_ROOT, GID_WHEEL, 0666, - "stdout"); - devfs_token_stderr = - devfs_add_devswf(&fildesc_cdevsw, 2, DV_CHR, - UID_ROOT, GID_WHEEL, 0666, - "stderr"); -#endif - } + cdevsw_add(&fildesc_cdevsw); + for (fd = 0; fd < NUMFDESC; fd++) + make_dev(&fildesc_cdevsw, fd, + UID_BIN, GID_BIN, 0666, "fd/%d", fd); + make_dev(&fildesc_cdevsw, 0, UID_ROOT, GID_WHEEL, 0666, "stdin"); + make_dev(&fildesc_cdevsw, 1, UID_ROOT, GID_WHEEL, 0666, "stdout"); + make_dev(&fildesc_cdevsw, 2, UID_ROOT, GID_WHEEL, 0666, "stderr"); } struct fileops badfileops = { diff --git a/sys/kern/subr_diskslice.c b/sys/kern/subr_diskslice.c index 5f8ef71..d72940e 100644 --- a/sys/kern/subr_diskslice.c +++ b/sys/kern/subr_diskslice.c @@ -43,7 +43,7 @@ * from: wd.c,v 1.55 1994/10/22 01:57:12 phk Exp $ * from: @(#)ufs_disksubr.c 7.16 (Berkeley) 5/4/91 * from: ufs_disksubr.c,v 1.8 1994/06/07 01:21:39 phk Exp $ - * $Id: subr_diskslice.c,v 1.65 1999/06/21 03:48:16 grog Exp $ + * $Id: subr_diskslice.c,v 1.66 1999/08/14 11:40:43 phk Exp $ */ #include "opt_devfs.h" @@ -715,6 +715,10 @@ dsopen(dname, dev, mode, flags, sspp, lp) struct diskslices *ssp; int unit; + dev->si_bsize_phys = DEV_BSIZE; + dev->si_bsize_best = BLKDEV_IOSIZE; + dev->si_bsize_max = MAXBSIZE; + unit = dkunit(dev); if (lp->d_secsize % DEV_BSIZE) { printf("%s%d: invalid sector size %lu\n", dname, unit, diff --git a/sys/kern/subr_log.c b/sys/kern/subr_log.c index 9f6b84f..7272789 100644 --- a/sys/kern/subr_log.c +++ b/sys/kern/subr_log.c @@ -31,15 +31,13 @@ * SUCH DAMAGE. * * @(#)subr_log.c 8.1 (Berkeley) 6/10/93 - * $Id: subr_log.c,v 1.35 1999/05/30 16:52:56 phk Exp $ + * $Id: subr_log.c,v 1.36 1999/05/31 11:27:35 phk Exp $ */ /* * Error log buffer for kernel printf's. */ -#include "opt_devfs.h" - #include <sys/param.h> #include <sys/systm.h> #include <sys/conf.h> @@ -52,9 +50,6 @@ #include <sys/kernel.h> #include <sys/poll.h> #include <sys/filedesc.h> -#ifdef DEVFS -#include <sys/devfsext.h> -#endif /*DEVFS*/ #define LOG_RDPRI (PZERO + 1) @@ -264,26 +259,14 @@ logioctl(dev, com, data, flag, p) return (0); } -static int log_devsw_installed; -#ifdef DEVFS -static void *log_devfs_token; -#endif static void log_drvinit __P((void *unused)); + static void log_drvinit(unused) void *unused; { - - if( ! log_devsw_installed ) { - cdevsw_add(&log_cdevsw); - log_devsw_installed = 1; -#ifdef DEVFS - log_devfs_token = devfs_add_devswf(&log_cdevsw, 0, DV_CHR, - UID_ROOT, GID_WHEEL, 0600, - "klog"); -#endif - } + make_dev(&log_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, "klog"); } SYSINIT(logdev,SI_SUB_DRIVERS,SI_ORDER_MIDDLE+CDEV_MAJOR,log_drvinit,NULL) diff --git a/sys/kern/tty_pty.c b/sys/kern/tty_pty.c index 0309b1e..47b7df9 100644 --- a/sys/kern/tty_pty.c +++ b/sys/kern/tty_pty.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tty_pty.c 8.4 (Berkeley) 2/20/95 - * $Id: tty_pty.c,v 1.64 1999/08/17 23:08:51 julian Exp $ + * $Id: tty_pty.c,v 1.65 1999/08/20 20:25:00 julian Exp $ */ /* @@ -40,8 +40,6 @@ */ #include "pty.h" /* XXX */ #include "opt_compat.h" -#include "opt_devfs.h" - #include <sys/param.h> #include <sys/systm.h> #if defined(COMPAT_43) || defined(COMPAT_SUNOS) @@ -185,10 +183,9 @@ ptsopen(dev, flag, devtype, p) dev_t nextdev; /* + * XXX: Gross hack for DEVFS: * If we openned this device, ensure we have the - * next ready in the DEVFS (up to 256 of them). - * XXX probably a more efficient way of know if the next one has - * been made already would be to just keep track.. + * next one too, so people can open it. */ minr = lminor(dev); if (minr < 255) { @@ -837,14 +834,10 @@ static void ptc_drvinit(unused) void *unused; { - static int ptc_devsw_installed; - - if( ! ptc_devsw_installed ) { - cdevsw_add(&pts_cdevsw); - cdevsw_add(&ptc_cdevsw); - ptc_devsw_installed = 1; - } - ptyinit(0); /* Add the first pty into the system.. prime the pump */ + cdevsw_add(&pts_cdevsw); + cdevsw_add(&ptc_cdevsw); + /* XXX: Gross hack for DEVFS */ + ptyinit(0); } SYSINIT(ptcdev,SI_SUB_DRIVERS,SI_ORDER_MIDDLE+CDEV_MAJOR_C,ptc_drvinit,NULL) diff --git a/sys/kern/tty_snoop.c b/sys/kern/tty_snoop.c index 936ce92..0e7bf1a 100644 --- a/sys/kern/tty_snoop.c +++ b/sys/kern/tty_snoop.c @@ -12,7 +12,7 @@ * * Snoop stuff. * - * $Id$ + * $Id: tty_snoop.c,v 1.40 1999/06/17 23:42:44 gpalmer Exp $ */ #include "snp.h" @@ -20,8 +20,6 @@ #if NSNP > 0 #include "opt_compat.h" -#include "opt_devfs.h" - #include <sys/param.h> #include <sys/systm.h> #include <sys/filio.h> @@ -34,9 +32,6 @@ #include <sys/conf.h> #include <sys/poll.h> #include <sys/kernel.h> -#ifdef DEVFS -#include <sys/devfsext.h> -#endif /*DEVFS*/ #include <sys/snoop.h> #include <sys/vnode.h> @@ -521,31 +516,17 @@ snppoll(dev, events, p) return (revents); } -#ifdef DEVFS -static void *snp_devfs_token[NSNP]; -#endif -static int snp_devsw_installed; - static void snp_drvinit __P((void *unused)); + static void snp_drvinit(unused) void *unused; { -#ifdef DEVFS int i; -#endif - if( ! snp_devsw_installed ) { - cdevsw_add(&snp_cdevsw); - snp_devsw_installed = 1; -#ifdef DEVFS - for ( i = 0 ; i < NSNP ; i++) { - snp_devfs_token[i] = - devfs_add_devswf(&snp_cdevsw, i, DV_CHR, 0, 0, - 0600, "snp%d", i); - } -#endif - } + cdevsw_add(&snp_cdevsw); + for ( i = 0 ; i < NSNP ; i++) + make_dev(&snp_cdevsw, i, 0, 0, 0600, "snp%d", i); } SYSINIT(snpdev,SI_SUB_DRIVERS,SI_ORDER_MIDDLE+CDEV_MAJOR,snp_drvinit,NULL) diff --git a/sys/kern/tty_tty.c b/sys/kern/tty_tty.c index fd88fcd..1109c07 100644 --- a/sys/kern/tty_tty.c +++ b/sys/kern/tty_tty.c @@ -31,15 +31,13 @@ * SUCH DAMAGE. * * @(#)tty_tty.c 8.2 (Berkeley) 9/23/93 - * $Id: tty_tty.c,v 1.26 1999/05/30 16:53:00 phk Exp $ + * $Id: tty_tty.c,v 1.27 1999/05/31 11:27:41 phk Exp $ */ /* * Indirect driver for controlling tty. */ -#include "opt_devfs.h" - #include <sys/param.h> #include <sys/systm.h> #include <sys/conf.h> @@ -48,9 +46,6 @@ #include <sys/ttycom.h> #include <sys/vnode.h> #include <sys/kernel.h> -#ifdef DEVFS -#include <sys/devfsext.h> -#endif /*DEVFS*/ static d_open_t cttyopen; static d_read_t cttyread; @@ -193,26 +188,13 @@ cttypoll(dev, events, p) return (VOP_POLL(ttyvp, events, p->p_ucred, p)); } -static int ctty_devsw_installed; -#ifdef DEVFS -static void *ctty_devfs_token; -#endif - static void ctty_drvinit __P((void *unused)); static void ctty_drvinit(unused) void *unused; { - if( ! ctty_devsw_installed ) { - cdevsw_add(&ctty_cdevsw); - ctty_devsw_installed = 1; -#ifdef DEVFS - ctty_devfs_token = - devfs_add_devswf(&ctty_cdevsw, 0, DV_CHR, 0, 0, - 0666, "tty"); -#endif - } + make_dev(&ctty_cdevsw, 0, 0, 0, 0666, "tty"); } SYSINIT(cttydev,SI_SUB_DRIVERS,SI_ORDER_MIDDLE+CDEV_MAJOR,ctty_drvinit,NULL) |