summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/init_main.c3
-rw-r--r--sys/kern/kern_conf.c26
-rw-r--r--sys/kern/kern_descrip.c51
-rw-r--r--sys/kern/subr_diskslice.c6
-rw-r--r--sys/kern/subr_log.c23
-rw-r--r--sys/kern/tty_pty.c21
-rw-r--r--sys/kern/tty_snoop.c29
-rw-r--r--sys/kern/tty_tty.c22
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)
OpenPOWER on IntegriCloud