diff options
author | Jason Downs <downsj@cvs.openbsd.org> | 1996-06-24 10:23:23 +0000 |
---|---|---|
committer | Jason Downs <downsj@cvs.openbsd.org> | 1996-06-24 10:23:23 +0000 |
commit | 11d9c9c55da5d8a24c55810a84816b0233b36e15 (patch) | |
tree | 64bd206f402e1558fbfc956ce4d0adc4550d02b9 | |
parent | b0da6d46ce9cdb2877c41fbbfbfb2471130e1101 (diff) |
ufs: sorry, one more pointer in struct inode.
THREADWAY: good example of a really tweaked PeeCee.
-rw-r--r-- | sys/arch/i386/conf/THREADWAY | 126 | ||||
-rw-r--r-- | sys/gnu/ext2fs/ext2_fs.h | 12 | ||||
-rw-r--r-- | sys/gnu/ext2fs/ext2_fs_sb.h | 4 | ||||
-rw-r--r-- | sys/gnu/ext2fs/ext2_vfsops.c | 10 | ||||
-rw-r--r-- | sys/ufs/ufs/inode.h | 6 |
5 files changed, 147 insertions, 11 deletions
diff --git a/sys/arch/i386/conf/THREADWAY b/sys/arch/i386/conf/THREADWAY new file mode 100644 index 00000000000..81ff8d23139 --- /dev/null +++ b/sys/arch/i386/conf/THREADWAY @@ -0,0 +1,126 @@ +# +# THREADWAY: threadway.teeny.org +# +# $OpenBSD: THREADWAY,v 1.1 1996/06/24 10:23:16 downsj Exp $ +# + +machine i386 +options I586_CPU + +options XSERVER,UCONSOLE +options EXTMEM_SIZE=39936 +options PCVT_USL_VT_COMPAT=1,PCVT_SCREENSAVER=1,PCVT_PRETTYSCRNS=0 + +maxusers 32 +options TIMEZONE=480 +options DST=0 + +options SWAPPAGER +options VNODEPAGER +options DEVPAGER + +#options DDB +#makeoptions DEBUG="-g" +#options DIAGNOSTIC +options KTRACE + +options SYSVMSG +options SYSVSEM +options SYSVSHM +#options SHMMAXPGS=1024 + +options COMPAT_NOMID +options COMPAT_09 +options COMPAT_10 +options COMPAT_11 +options COMPAT_43 +options TCP_COMPAT_42 + +options COMPAT_SVR4 +options COMPAT_IBCS2 +options COMPAT_LINUX +options COMPAT_FREEBSD + +options VM86 +options USER_LDT +options LKM + +options FFS +options QUOTA +options MFS +options EXT2FS + +options PPP_BSDCOMP,PPP_DEFLATE +options IPFILTER + +options NFSCLIENT +options NFSSERVER + +options CD9660 +options MSDOSFS +options FDESC +options FIFO +options KERNFS +options NULLFS +options PROCFS +options UMAPFS +options UNION + +options GATEWAY +options INET + +config bsd root on wd0 swap on wd0 and wd2 + +mainbus0 at root + +isa0 at mainbus0 +eisa0 at mainbus0 +pci0 at mainbus0 bus ? + +ppb* at pci? dev ? function ? # PCI-PCI bridges +pci* at ppb? bus ? + +npx0 at isa? port 0xf0 irq 13 +isadma0 at isa? + +#pc0 at isa? port 0x60 irq 1 +vt0 at isa? port 0x60 irq 1 + +com0 at isa? port 0x3f8 irq 4 +com1 at isa? port 0x3e8 irq 2 +com2 at isa? port 0x2f8 irq 3 + +lpt0 at isa? port 0x378 irq 7 + +pms0 at pckbd? irq 12 # PS/2 auxiliary port mouse + +ed0 at isa? port 0x300 irq 10 + +de0 at pci? dev ? function ? + +ncr* at pci? dev ? function ? # NCR 538XX SCSI controllers +scsibus* at ncr? + +sd* at scsibus? target ? lun ? # SCSI disk drives +st* at scsibus? target ? lun ? # SCSI tape drives +cd* at scsibus? target ? lun ? # SCSI CD-ROM drives +ch* at scsibus? target ? lun ? # SCSI autochangers + +fdc0 at isa? port 0x3f0 irq 6 drq 2 +fd* at fdc? drive ? + +wdc0 at isa? port 0x1f0 irq 14 +wdc1 at isa? port 0x170 irq 15 +wd* at wdc? drive ? + +atapibus* at wdc? +acd* at atapibus? drive? + + +pseudo-device loop 1 +pseudo-device bpfilter 8 +pseudo-device ppp 4 +pseudo-device tun 2 + +pseudo-device pty 64 +pseudo-device vnd 8 diff --git a/sys/gnu/ext2fs/ext2_fs.h b/sys/gnu/ext2fs/ext2_fs.h index 0563603dba3..7f186587cf1 100644 --- a/sys/gnu/ext2fs/ext2_fs.h +++ b/sys/gnu/ext2fs/ext2_fs.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ext2_fs.h,v 1.1 1996/06/24 03:34:54 downsj Exp $ */ +/* $OpenBSD: ext2_fs.h,v 1.2 1996/06/24 10:23:19 downsj Exp $ */ /* * modified for EXT2FS support in Lites 1.1 @@ -50,11 +50,11 @@ struct ext2_inode_info { int32_t info_prealloc_count; }; -#define i_block_group i_e2fs->i_info.info_block_group -#define i_next_alloc_block i_e2fs->i_info.info_next_alloc_block -#define i_next_alloc_goal i_e2fs->i_info.info_next_alloc_goal -#define i_prealloc_block i_e2fs->i_info.info_prealloc_block -#define i_prealloc_count i_e2fs->i_info.info_prealloc_count +#define i_block_group i_e2ext->info_block_group +#define i_next_alloc_block i_e2ext->info_next_alloc_block +#define i_next_alloc_goal i_e2ext->info_next_alloc_goal +#define i_prealloc_block i_e2ext->info_prealloc_block +#define i_prealloc_count i_e2ext->info_prealloc_count /* * The second extended filesystem constants/structures diff --git a/sys/gnu/ext2fs/ext2_fs_sb.h b/sys/gnu/ext2fs/ext2_fs_sb.h index b725d245e4f..fe094ab70bb 100644 --- a/sys/gnu/ext2fs/ext2_fs_sb.h +++ b/sys/gnu/ext2fs/ext2_fs_sb.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ext2_fs_sb.h,v 1.1 1996/06/24 03:34:55 downsj Exp $ */ +/* $OpenBSD: ext2_fs_sb.h,v 1.2 1996/06/24 10:23:20 downsj Exp $ */ /* * modified for EXT2FS support in Lites 1.1 @@ -83,8 +83,6 @@ struct ext2_sb_info { char s_dirt; /* fs modified flag */ char fs_fsmnt[MAXMNTLEN]; /* name mounted on */ - - struct ext2_inode_info i_info; /* HACK! */ }; #endif /* _LINUX_EXT2_FS_SB */ diff --git a/sys/gnu/ext2fs/ext2_vfsops.c b/sys/gnu/ext2fs/ext2_vfsops.c index 46c4d780b6d..825e70e0446 100644 --- a/sys/gnu/ext2fs/ext2_vfsops.c +++ b/sys/gnu/ext2fs/ext2_vfsops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ext2_vfsops.c,v 1.1 1996/06/24 03:34:58 downsj Exp $ */ +/* $OpenBSD: ext2_vfsops.c,v 1.2 1996/06/24 10:23:21 downsj Exp $ */ /* * modified for EXT2FS support in Lites 1.1 @@ -886,6 +886,7 @@ ext2_vget(mp, ino, vpp) { register struct ext2_sb_info *fs; register struct inode *ip; + register struct ext2_inode_info *e2ip; struct ufsmount *ump; struct buf *bp; struct vnode *vp; @@ -925,12 +926,17 @@ restart: type = ump->um_devvp->v_tag == VT_MFS ? M_MFSNODE : M_FFSNODE; /* XXX */ MALLOC(ip, struct inode *, sizeof(struct inode), type, M_WAITOK); bzero((caddr_t)ip, sizeof(struct inode)); + MALLOC(e2ip, struct ext2_inode_info *, sizeof(struct ext2_inode_info), + type, M_WAITOK); + bzero((caddr_t)e2ip, sizeof(struct ext2_inode_info)); + vp->v_data = ip; ip->i_vnode = vp; ip->i_e2fs = fs = ump->um_e2fs; ip->i_dev = dev; ip->i_number = ino; ip->i_dirops = &ext2fs_dirops; + ip->i_e2ext = e2ip; #if QUOTA for (i = 0; i < MAXQUOTAS; i++) ip->i_dquot[i] = NODQUOT; @@ -969,10 +975,12 @@ printf("ext2_vget(%d) dbn= %d ", ino, fsbtodb(fs, ino_to_fsba(fs, ino))); ext2_ei2di((struct ext2_inode *) ((char *)bp->b_data + EXT2_INODE_SIZE * ino_to_fsbo(fs, ino)), &ip->i_din); ip->i_block_group = ino_to_cg(fs, ino); +#if 0 ip->i_next_alloc_block = 0; ip->i_next_alloc_goal = 0; ip->i_prealloc_count = 0; ip->i_prealloc_block = 0; +#endif /* now we want to make sure that block pointers for unused blocks are zeroed out - ext2_balloc depends on this although for regular files and directories only diff --git a/sys/ufs/ufs/inode.h b/sys/ufs/ufs/inode.h index 121f045925a..ef294ff55a3 100644 --- a/sys/ufs/ufs/inode.h +++ b/sys/ufs/ufs/inode.h @@ -1,4 +1,4 @@ -/* $OpenBSD: inode.h,v 1.2 1996/06/24 03:35:03 downsj Exp $ */ +/* $OpenBSD: inode.h,v 1.3 1996/06/24 10:23:22 downsj Exp $ */ /* $NetBSD: inode.h,v 1.8 1995/06/15 23:22:50 cgd Exp $ */ /* @@ -90,6 +90,10 @@ struct inode { */ struct ufs_dirops *i_dirops; /* + * Ext2fs inode extensions. + */ + struct ext2_inode_info *i_e2ext; + /* * The on-disk dinode itself. */ struct dinode i_din; /* 128 bytes of the on-disk dinode. */ |