first bootable version
authorBill Joy <wnj@ucbvax.Berkeley.EDU>
Mon, 12 Oct 1981 05:02:39 +0000 (21:02 -0800)
committerBill Joy <wnj@ucbvax.Berkeley.EDU>
Mon, 12 Oct 1981 05:02:39 +0000 (21:02 -0800)
SCCS-vsn: sys/kern/vfs_vnops.c 4.13
SCCS-vsn: sys/ufs/ffs/ffs_inode.c 4.6
SCCS-vsn: sys/ufs/ffs/ufs_inode.c 4.6
SCCS-vsn: sys/ufs/lfs/lfs_inode.c 4.6
SCCS-vsn: sys/ufs/ufs/ufs_inode.c 4.6
SCCS-vsn: sys/kern/tty_subr.c 4.12
SCCS-vsn: sys/kern/tty_tty.c 4.4

usr/src/sys/kern/tty_subr.c
usr/src/sys/kern/tty_tty.c
usr/src/sys/kern/vfs_vnops.c
usr/src/sys/ufs/ffs/ffs_inode.c
usr/src/sys/ufs/ffs/ufs_inode.c
usr/src/sys/ufs/lfs/lfs_inode.c
usr/src/sys/ufs/ufs/ufs_inode.c

index 7558bf6..0048d0e 100644 (file)
@@ -1,4 +1,4 @@
-/*     tty_subr.c      4.11    81/04/17        */
+/*     tty_subr.c      4.12    81/10/11        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
index 06a2503..6219079 100644 (file)
@@ -1,7 +1,9 @@
-/*     tty_tty.c       4.3     81/03/09        */
+/*     tty_tty.c       4.4     81/10/11        */
 
 /*
  * Indirect driver for controlling tty.
 
 /*
  * Indirect driver for controlling tty.
+ *
+ * THIS IS GARBAGE: MUST SOON BE DONE WITH struct inode * IN PROC TABLE.
  */
 #include "../h/param.h"
 #include "../h/systm.h"
  */
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -55,3 +57,13 @@ caddr_t addr;
        }
        (*cdevsw[major(u.u_ttyd)].d_ioctl)(u.u_ttyd, cmd, addr, flag);
 }
        }
        (*cdevsw[major(u.u_ttyd)].d_ioctl)(u.u_ttyd, cmd, addr, flag);
 }
+
+syselect(dev, flag)
+{
+
+       if (u.u_procp->p_flag&SDETACH) {
+               u.u_error = ENXIO;
+               return;
+       }
+       (*cdevsw[major(u.u_ttyd)].d_select)(dev, flag);
+}
index e9ba349..19077a0 100644 (file)
@@ -1,4 +1,4 @@
-/*     vfs_vnops.c     4.12    81/08/12        */
+/*     vfs_vnops.c     4.13    81/10/11        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -80,7 +80,6 @@ register struct file *fp;
        switch (mode) {
 
        case IFCHR:
        switch (mode) {
 
        case IFCHR:
-       case IFMPC:
                cfunc = cdevsw[major(dev)].d_close;
                break;
 
                cfunc = cdevsw[major(dev)].d_close;
                break;
 
@@ -91,32 +90,29 @@ register struct file *fp;
                for (mp = mount; mp < &mount[NMOUNT]; mp++)
                        if (mp->m_bufp != NULL && mp->m_dev == dev)
                                return;
                for (mp = mount; mp < &mount[NMOUNT]; mp++)
                        if (mp->m_bufp != NULL && mp->m_dev == dev)
                                return;
-       case IFMPB:
                cfunc = bdevsw[major(dev)].d_close;
                break;
        default:
                return;
        }
 
                cfunc = bdevsw[major(dev)].d_close;
                break;
        default:
                return;
        }
 
-       if ((flag & FMP) == 0) {
-               for(fp=file; fp < fileNFILE; fp++) {
+       for(fp=file; fp < fileNFILE; fp++) {
 #ifdef BBNNET
                        if (fp->f_flag & FNET)
                                continue;
 #endif
 #ifdef BBNNET
                        if (fp->f_flag & FNET)
                                continue;
 #endif
-                       if (fp->f_count && (ip = fp->f_inode) &&
-                           ip->i_un.i_rdev == dev &&
-                           (ip->i_mode&IFMT) == mode)
-                               return;
-               }
-               if (mode == IFBLK) {
-                       /*
-                        * on last close of a block device (that isn't mounted)
-                        * we must invalidate any in core blocks
-                        */
-                       bflush(dev);
-                       binval(dev);
-               }
+               if (fp->f_count && (ip = fp->f_inode) &&
+                   ip->i_un.i_rdev == dev &&
+                   (ip->i_mode&IFMT) == mode)
+                       return;
+       }
+       if (mode == IFBLK) {
+               /*
+                * on last close of a block device (that isn't mounted)
+                * we must invalidate any in core blocks
+                */
+               bflush(dev);
+               binval(dev);
        }
        (*cfunc)(dev, flag, fp);
 }
        }
        (*cfunc)(dev, flag, fp);
 }
@@ -137,14 +133,12 @@ register struct inode *ip;
        switch(ip->i_mode&IFMT) {
 
        case IFCHR:
        switch(ip->i_mode&IFMT) {
 
        case IFCHR:
-       case IFMPC:
                if(maj >= nchrdev)
                        goto bad;
                (*cdevsw[maj].d_open)(dev, rw);
                break;
 
        case IFBLK:
                if(maj >= nchrdev)
                        goto bad;
                (*cdevsw[maj].d_open)(dev, rw);
                break;
 
        case IFBLK:
-       case IFMPB:
                if(maj >= nblkdev)
                        goto bad;
                (*bdevsw[maj].d_open)(dev, rw);
                if(maj >= nblkdev)
                        goto bad;
                (*bdevsw[maj].d_open)(dev, rw);
index da63f02..a432843 100644 (file)
@@ -1,4 +1,4 @@
-/*     ffs_inode.c     4.5     81/04/28        */
+/*     ffs_inode.c     4.6     81/10/11        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -241,8 +241,7 @@ int waitfor;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
-                       if(*p2++ != 0 && (ip->i_mode&IFMT)!=IFMPC
-                          && (ip->i_mode&IFMT)!=IFMPB)
+                       if(*p2++ != 0)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
index 0c1b119..ad25c5a 100644 (file)
@@ -1,4 +1,4 @@
-/*     ufs_inode.c     4.5     81/04/28        */
+/*     ufs_inode.c     4.6     81/10/11        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -241,8 +241,7 @@ int waitfor;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
-                       if(*p2++ != 0 && (ip->i_mode&IFMT)!=IFMPC
-                          && (ip->i_mode&IFMT)!=IFMPB)
+                       if(*p2++ != 0)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
index 18d152b..21e64cf 100644 (file)
@@ -1,4 +1,4 @@
-/*     lfs_inode.c     4.5     81/04/28        */
+/*     lfs_inode.c     4.6     81/10/11        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -241,8 +241,7 @@ int waitfor;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
-                       if(*p2++ != 0 && (ip->i_mode&IFMT)!=IFMPC
-                          && (ip->i_mode&IFMT)!=IFMPB)
+                       if(*p2++ != 0)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
index 0c1b119..ad25c5a 100644 (file)
@@ -1,4 +1,4 @@
-/*     ufs_inode.c     4.5     81/04/28        */
+/*     ufs_inode.c     4.6     81/10/11        */
 
 #include "../h/param.h"
 #include "../h/systm.h"
 
 #include "../h/param.h"
 #include "../h/systm.h"
@@ -241,8 +241,7 @@ int waitfor;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
                        *p1++ = *p2++;
-                       if(*p2++ != 0 && (ip->i_mode&IFMT)!=IFMPC
-                          && (ip->i_mode&IFMT)!=IFMPB)
+                       if(*p2++ != 0)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)
                                printf("iaddress > 2^24\n");
                }
                if(ip->i_flag&IACC)