? sbin/mount_efs
? sbin/svhlabel
? sys/arch/i386/compile/EFSTEST
? sys/arch/i386/conf/EFSTEST
? sys/arch/sgimips/compile/GENERIC32_IP12
? sys/fs/efs
? sys/lkm/vfs/efs
Index: distrib/sets/comments
===================================================================
RCS file: /cvsroot/src/distrib/sets/comments,v
retrieving revision 1.11
diff -u -r1.11 comments
--- distrib/sets/comments       16 Mar 2007 00:55:43 -0000      1.11
+++ distrib/sets/comments       26 Jun 2007 22:47:38 -0000
@@ -24,6 +24,8 @@
base-dhclient-root root file system support for DHCP client software
base-dhcpd-bin DHCP server
base-dhcpd-examples example configuration files for DHCP server
+base-efs-lkm loadable kernel module for efs file system
+base-efs-root root file system support for efs file system
base-ext2fs-lkm loadable kernel module for ext2fs file system
base-ext2fs-root root file system support for ext2fs file system
base-filecorefs-root root file system support for the Acorn FILECORE file system
@@ -346,6 +348,8 @@
man-dhclient-man manual pages source for DHCP (dynamic host configuration protocol) client utilities
man-dhcpd-catman formatted manual pages for DHCP (dynamic host configuration protocol) server utilities
man-dhcpd-man manual pages source for DHCP (dynamic host configuration protocol) server utilities
+man-efs-catman formatted manual pages for the Silicon Graphics efs file system support
+man-efs-man manual pages source for the Silicon Graphics efs file system support
man-ext2fs-catman formatted manual pages for the Linux ext2fx file system support
man-ext2fs-man manual pages source for the Linux ext2fx file system support
man-filecorefs-catman formatted manual pages Acorn FileCore file system support
Index: distrib/sets/deps
===================================================================
RCS file: /cvsroot/src/distrib/sets/deps,v
retrieving revision 1.8
diff -u -r1.8 deps
--- distrib/sets/deps   20 Jan 2007 16:50:29 -0000      1.8
+++ distrib/sets/deps   26 Jun 2007 22:47:38 -0000
@@ -23,6 +23,7 @@
base-dhcpd-bin base-sys-share
base-dhcpd-bin base-sys-usr
base-dhcpd-examples base-sys-share
+base-efs-root base-sys-root
base-ext2fs-root base-sys-root
base-filecorefs-root base-sys-root
base-fstab-examples base-sys-share
@@ -367,6 +368,8 @@
man-dhclient-man base-man-share
man-dhcpd-catman base-man-share
man-dhcpd-man base-man-share
+man-efs-catman base-man-share
+man-efs-man base-man-share
man-ext2fs-catman base-man-share
man-ext2fs-man base-man-share
man-filecorefs-catman base-man-share
Index: distrib/sets/descrs
===================================================================
RCS file: /cvsroot/src/distrib/sets/descrs,v
retrieving revision 1.12
diff -u -r1.12 descrs
--- distrib/sets/descrs 9 May 2007 20:58:06 -0000       1.12
+++ distrib/sets/descrs 26 Jun 2007 22:47:38 -0000
@@ -24,6 +24,8 @@
base-dhclient-root     root file system support for DHCP client software
base-dhcpd-bin DHCP server
base-dhcpd-examples    example configuration files for DHCP server
+base-efs-lkm           loadable kernel module for efs file system
+base-efs-root          root file system support for efs file system
base-ext2fs-lkm        loadable kernel module for ext2fs file system
base-ext2fs-root       root file system support for ext2fs file system
base-filecorefs-root   root file system support for the Acorn FILECORE file system
@@ -600,6 +602,8 @@
man-dhclient-man       manual pages source for DHCP (dynamic host configuration protocol) client utilities
man-dhcpd-catman       formatted manual pages for DHCP (dynamic host configuration protocol) server utilities
man-dhcpd-man  manual pages source for DHCP (dynamic host configuration protocol) server utilities
+man-efs-catman         formatted manual pages for the Silicon Graphics EFS file system support
+man-efs-man            manual pages source for the Silicon Graphics EFS file system support
man-ext2fs-catman      formatted manual pages for the Linux ext2fx file system support
man-ext2fs-man manual pages source for the Linux ext2fx file system support
man-filecorefs-catman  formatted manual pages Acorn FileCore file system support
Index: distrib/sets/lists/base/lkm.mi
===================================================================
RCS file: /cvsroot/src/distrib/sets/lists/base/lkm.mi,v
retrieving revision 1.18
diff -u -r1.18 lkm.mi
--- distrib/sets/lists/base/lkm.mi      6 Mar 2007 11:28:44 -0000       1.18
+++ distrib/sets/lists/base/lkm.mi      26 Jun 2007 22:47:39 -0000
@@ -5,6 +5,7 @@
./usr/lkm/coda.o                               base-vfs-lkm
./usr/lkm/coda5.o                              base-vfs-lkm
./usr/lkm/deflate.o                            base-ppp-lkm
+./usr/lkm/efs.o                                        base-vfs-lkm
./usr/lkm/ext2fs.o                             base-vfs-lkm
./usr/lkm/fdesc.o                              base-vfs-lkm
./usr/lkm/filecorefs.o                         base-vfs-lkm
Index: distrib/sets/lists/base/mi
===================================================================
RCS file: /cvsroot/src/distrib/sets/lists/base/mi,v
retrieving revision 1.712
diff -u -r1.712 mi
--- distrib/sets/lists/base/mi  25 Jun 2007 23:38:57 -0000      1.712
+++ distrib/sets/lists/base/mi  26 Jun 2007 22:47:42 -0000
@@ -173,6 +173,7 @@
./sbin/mount_ados                              base-adosfs-root
./sbin/mount_cd9660                            base-sysutil-root
./sbin/mount_ext2fs                            base-ext2fs-root
+./sbin/mount_efs                               base-efs-root
./sbin/mount_fdesc                             base-miscfs-root
./sbin/mount_ffs                               base-sysutil-root
./sbin/mount_filecore                          base-filecorefs-root
@@ -232,6 +233,7 @@
./sbin/setkey                                  base-netutil-root
./sbin/shutdown                                        base-sysutil-root
./sbin/slattach                                        base-slip-root
+./sbin/svhlabel                                        base-sysutil-root
./sbin/swapctl                                 base-sysutil-root
./sbin/swapon                                  base-sysutil-root
./sbin/sysctl                                  base-sysutil-root
@@ -779,6 +781,7 @@
./usr/include/dev/wscons                       base-c-usr
./usr/include/filecorefs                       base-c-usr
./usr/include/fs                               base-c-usr
+./usr/include/fs/efs                           base-c-usr
./usr/include/fs/hfs                           base-c-usr
./usr/include/fs/hfsp                          base-obsolete           obsolete
./usr/include/fs/puffs                         base-c-usr
Index: distrib/sets/lists/comp/mi
===================================================================
RCS file: /cvsroot/src/distrib/sets/lists/comp/mi,v
retrieving revision 1.1036
diff -u -r1.1036 mi
--- distrib/sets/lists/comp/mi  26 Jun 2007 22:45:36 -0000      1.1036
+++ distrib/sets/lists/comp/mi  26 Jun 2007 22:47:52 -0000
@@ -1,4 +1,4 @@
-#      $NetBSD: mi,v 1.1036 2007/06/26 22:45:36 rumble Exp $
+#      $NetBSD: mi,v 1.1035 2007/06/25 23:38:57 christos Exp $
./etc/mtree/set.comp                           comp-sys-root
./usr/bin/addr2line                            comp-debug-bin          bfd
./usr/bin/ar                                   comp-util-bin           bfd
@@ -537,6 +537,9 @@
./usr/include/fnmatch.h                                comp-c-include
./usr/include/form.h                           comp-c-include
./usr/include/frame.h                          comp-obsolete           obsolete
+./usr/include/fs/efs/efs.h                     comp-c-include
+./usr/include/fs/efs/efs_sb.h                  comp-c-include
+./usr/include/fs/efs/efs_mount.h               comp-c-include
./usr/include/fs/hfs/hfs.h                     comp-c-include
./usr/include/fs/hfs/libhfs.h                  comp-c-include
./usr/include/fs/hfsp/hfsp.h                   comp-obsolete           obsolete
@@ -2286,6 +2289,7 @@
./usr/libdata/debug/sbin/mount.debug           comp-sysutil-debug      debug
./usr/libdata/debug/sbin/mount_ados.debug      comp-adosfs-debug       debug
./usr/libdata/debug/sbin/mount_cd9660.debug    comp-sysutil-debug      debug
+./usr/libdata/debug/sbin/mount_efs.debug       comp-efs-debug          debug
./usr/libdata/debug/sbin/mount_ext2fs.debug    comp-ext2fs-debug       debug
./usr/libdata/debug/sbin/mount_fdesc.debug     comp-miscfs-debug       debug
./usr/libdata/debug/sbin/mount_ffs.debug       comp-sysutil-debug      debug
Index: distrib/sets/lists/man/mi
===================================================================
RCS file: /cvsroot/src/distrib/sets/lists/man/mi,v
retrieving revision 1.1010
diff -u -r1.1010 mi
--- distrib/sets/lists/man/mi   25 Jun 2007 23:38:58 -0000      1.1010
+++ distrib/sets/lists/man/mi   26 Jun 2007 22:47:56 -0000
@@ -2106,6 +2106,7 @@
./usr/share/man/cat8/mount_9p.0                        man-sysutil-catman      puffs,.cat
./usr/share/man/cat8/mount_ados.0              man-adosfs-catman       .cat
./usr/share/man/cat8/mount_cd9660.0            man-sysutil-catman      .cat
+./usr/share/man/cat8/mount_efs.0               man-efs-catman          .cat
./usr/share/man/cat8/mount_ext2fs.0            man-ext2fs-catman       .cat
./usr/share/man/cat8/mount_fdesc.0             man-miscfs-catman       .cat
./usr/share/man/cat8/mount_ffs.0               man-sysutil-catman      .cat
@@ -4576,6 +4577,7 @@
./usr/share/man/man8/mount_9p.8                        man-sysutil-man         puffs,.man
./usr/share/man/man8/mount_ados.8              man-adosfs-man          .man
./usr/share/man/man8/mount_cd9660.8            man-sysutil-man         .man
+./usr/share/man/man8/mount_efs.8               man-efs-man             .man
./usr/share/man/man8/mount_ext2fs.8            man-ext2fs-man          .man
./usr/share/man/man8/mount_fdesc.8             man-miscfs-man          .man
./usr/share/man/man8/mount_ffs.8               man-sysutil-man         .man
Index: doc/CHANGES
===================================================================
RCS file: /cvsroot/src/doc/CHANGES,v
retrieving revision 1.880
diff -u -r1.880 CHANGES
--- doc/CHANGES 25 Jun 2007 23:40:22 -0000      1.880
+++ doc/CHANGES 26 Jun 2007 22:47:58 -0000
@@ -143,3 +143,4 @@
       ntp: Updated to version 4.2.4p2. [kardel 20070624]
       tcpdrop(8): Ported by anon ymous (from FreeBSD/OpenBSD)
               [christos 20070625]
+       efs: Added read-only Silicon Graphics EFS file system. [rumble 20070626]
Index: doc/RESPONSIBLE
===================================================================
RCS file: /cvsroot/src/doc/RESPONSIBLE,v
retrieving revision 1.79
diff -u -r1.79 RESPONSIBLE
--- doc/RESPONSIBLE     9 May 2007 19:36:58 -0000       1.79
+++ doc/RESPONSIBLE     26 Jun 2007 22:47:58 -0000
@@ -157,6 +157,7 @@
file systems:

coda           gdt
+efs            rumble
hfs            dillo
lfs            perseant
msdosfs                jdolecek
Index: sbin/Makefile
===================================================================
RCS file: /cvsroot/src/sbin/Makefile,v
retrieving revision 1.105
diff -u -r1.105 Makefile
--- sbin/Makefile       1 May 2007 17:18:53 -0000       1.105
+++ sbin/Makefile       26 Jun 2007 22:48:36 -0000
@@ -11,8 +11,8 @@
       drvctl edlabel fastboot fdisk fsck fsirand gpt ifconfig init ldconfig \
       mbrlabel mknod modload modunload mount newbtconf nologin \
       pdisk ping pppoectl raidctl reboot rcorder rndctl route routed \
-       savecore scan_ffs scsictl shutdown slattach swapctl sysctl ttyflags \
-       umount veriexecctl wdogctl wsconsctl
+       savecore scan_ffs scsictl shutdown slattach svhlabel swapctl sysctl \
+       ttyflags umount veriexecctl wdogctl wsconsctl

# support for various file systems
SUBDIR+= fsck_ext2fs
@@ -22,6 +22,7 @@
SUBDIR+= newfs_sysvbfs
SUBDIR+= mount_ados
SUBDIR+= mount_cd9660
+SBUDIR+= mount_efs
SUBDIR+= mount_ext2fs
SUBDIR+= mount_fdesc
SUBDIR+= mount_filecore
Index: sys/arch/i386/conf/ALL
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/conf/ALL,v
retrieving revision 1.105
diff -u -r1.105 ALL
--- sys/arch/i386/conf/ALL      16 Jun 2007 12:35:55 -0000      1.105
+++ sys/arch/i386/conf/ALL      26 Jun 2007 22:48:45 -0000
@@ -178,6 +178,7 @@
file-system    UDF             # experimental - OSTA UDF CD/DVD file-system
file-system    PUFFS           # experimental - Userspace file system support
file-system    HFS             # experimental - Apple HFS+ file system
+file-system    EFS             # Silicon Graphics Extent File System

# File system options
options        QUOTA           # UFS quotas
Index: sys/arch/sgimips/conf/GENERIC32_IP2x
===================================================================
RCS file: /cvsroot/src/sys/arch/sgimips/conf/GENERIC32_IP2x,v
retrieving revision 1.66
diff -u -r1.66 GENERIC32_IP2x
--- sys/arch/sgimips/conf/GENERIC32_IP2x        6 Jun 2007 08:19:10 -0000       1.66
+++ sys/arch/sgimips/conf/GENERIC32_IP2x        26 Jun 2007 22:48:48 -0000
@@ -117,6 +117,7 @@
file-system    PTYFS           # /dev/pts/N support
#file-system   TMPFS           # Efficient memory file-system
#file-system   UDF             # experimental - OSTA UDF CD/DVD file-system
+file-system    EFS             # Silicon Graphics Extent File System

# File system options
options        QUOTA           # UFS quotas
Index: sys/arch/sgimips/conf/GENERIC32_IP3x
===================================================================
RCS file: /cvsroot/src/sys/arch/sgimips/conf/GENERIC32_IP3x,v
retrieving revision 1.63
diff -u -r1.63 GENERIC32_IP3x
--- sys/arch/sgimips/conf/GENERIC32_IP3x        6 Jun 2007 08:19:10 -0000       1.63
+++ sys/arch/sgimips/conf/GENERIC32_IP3x        26 Jun 2007 22:48:48 -0000
@@ -109,6 +109,7 @@
file-system    PTYFS           # /dev/pts/N support
#file-system   TMPFS           # Efficient memory file-system
#file-system   UDF             # experimental - OSTA UDF CD/DVD file-system
+file-system    EFS             # Silicon Graphics Extent File System

# File system options
options        QUOTA           # UFS quotas
Index: sys/conf/files
===================================================================
RCS file: /cvsroot/src/sys/conf/files,v
retrieving revision 1.847
diff -u -r1.847 files
--- sys/conf/files      29 May 2007 21:32:29 -0000      1.847
+++ sys/conf/files      26 Jun 2007 22:48:51 -0000
@@ -1224,6 +1224,7 @@
include "coda/files.coda"
include "fs/adosfs/files.adosfs"
include "fs/cd9660/files.cd9660"
+include "fs/efs/files.efs"
include "fs/filecorefs/files.filecorefs"
include "fs/hfs/files.hfs"
include "fs/msdosfs/files.msdosfs"
Index: sys/fs/Makefile
===================================================================
RCS file: /cvsroot/src/sys/fs/Makefile,v
retrieving revision 1.15
diff -u -r1.15 Makefile
--- sys/fs/Makefile     6 Mar 2007 11:28:45 -0000       1.15
+++ sys/fs/Makefile     26 Jun 2007 22:48:53 -0000
@@ -1,5 +1,6 @@
#      $NetBSD: Makefile,v 1.15 2007/03/06 11:28:45 dillo Exp $

-SUBDIR=        adosfs cd9660 filecorefs hfs msdosfs ntfs puffs smbfs sysvbfs udf union
+SUBDIR=        adosfs cd9660 efs filecorefs hfs msdosfs ntfs puffs smbfs sysvbfs udf \
+       union

.include <bsd.kinc.mk>
Index: sys/sys/bootblock.h
===================================================================
RCS file: /cvsroot/src/sys/sys/bootblock.h,v
retrieving revision 1.41
diff -u -r1.41 bootblock.h
--- sys/sys/bootblock.h 1 Jan 2007 22:13:18 -0000       1.41
+++ sys/sys/bootblock.h 26 Jun 2007 22:48:55 -0000
@@ -1268,6 +1268,7 @@
#define SGI_BOOT_BLOCK_SIZE_VOLHDR     3135
#define SGI_BOOT_BLOCK_MAGIC           0xbe5a941
#define SGI_BOOT_BLOCK_MAXPARTITIONS   16
+#define SGI_BOOT_BLOCK_MAXVOLDIRS      15
#define SGI_BOOT_BLOCK_BLOCKSIZE       512

/*
@@ -1317,7 +1318,7 @@
               char            name[8];
               int32_t         block;
               int32_t         bytes;
-       }               voldir[15];
+       }               voldir[SGI_BOOT_BLOCK_MAXVOLDIRS];
       struct {
               int32_t         blocks;
               int32_t         first;
@@ -1328,8 +1329,11 @@
} __packed;

#define SGI_PTYPE_VOLHDR       0
+#define SGI_PTYPE_TRKREPL      1
+#define SGI_PTYPE_SECREPL      2
#define SGI_PTYPE_RAW          3
#define SGI_PTYPE_BSD          4
+#define SGI_PTYPE_SYSV         5
#define SGI_PTYPE_VOLUME       6
#define SGI_PTYPE_EFS          7
#define SGI_PTYPE_LVOL         8
Index: sys/sys/disklabel.h
===================================================================
RCS file: /cvsroot/src/sys/sys/disklabel.h,v
retrieving revision 1.100
diff -u -r1.100 disklabel.h
--- sys/sys/disklabel.h 24 Jun 2007 01:43:35 -0000      1.100
+++ sys/sys/disklabel.h 26 Jun 2007 22:48:55 -0000
@@ -349,6 +349,7 @@
x(VINUM,   23, "vinum",      NULL,    NULL)   /* Vinum */ \
x(UDF,     24, "UDF",        NULL,   "udf")  /* UDF */ \
x(SYSVBFS, 25, "SysVBFS",    NULL,  "sysvbfs")/* System V boot file system */ \
+x(EFS,     26, "EFS",        NULL,   "efs")   /* SGI's Extent Filesystem */

#ifndef _LOCORE
#define        FS_TYPENUMS(tag, number, name, fsck, mount) __CONCAT(FS_,tag=number),
Index: sys/sys/mount.h
===================================================================
RCS file: /cvsroot/src/sys/sys/mount.h,v
retrieving revision 1.158
diff -u -r1.158 mount.h
--- sys/sys/mount.h     23 Jun 2007 09:08:37 -0000      1.158
+++ sys/sys/mount.h     26 Jun 2007 22:48:56 -0000
@@ -86,6 +86,7 @@
#define        MOUNT_SYSVBFS   "sysvbfs"       /* System V Boot Filesystem */
#define MOUNT_PUFFS    "puffs"         /* Pass-to-Userspace filesystem */
#define MOUNT_HFS      "hfs"           /* Apple HFS+ Filesystem */
+#define MOUNT_EFS      "efs"           /* SGI's Extent Filesystem */

/*
 * Structure per mounted file system.  Each mounted file system has an
Index: sys/sys/vnode.h
===================================================================
RCS file: /cvsroot/src/sys/sys/vnode.h,v
retrieving revision 1.169
diff -u -r1.169 vnode.h
--- sys/sys/vnode.h     5 Jun 2007 12:31:33 -0000       1.169
+++ sys/sys/vnode.h     26 Jun 2007 22:48:56 -0000
@@ -71,7 +71,7 @@
       VT_FDESC, VT_PORTAL, VT_NULL, VT_UMAP, VT_KERNFS, VT_PROCFS,
       VT_AFS, VT_ISOFS, VT_UNION, VT_ADOSFS, VT_EXT2FS, VT_CODA,
       VT_FILECORE, VT_NTFS, VT_VFS, VT_OVERLAY, VT_SMBFS, VT_PTYFS,
-       VT_TMPFS, VT_UDF, VT_SYSVBFS, VT_PUFFS, VT_HFS
+       VT_TMPFS, VT_UDF, VT_SYSVBFS, VT_PUFFS, VT_HFS, VT_EFS
};

#define        VNODE_TAGS \
@@ -79,7 +79,7 @@
    "VT_FDESC", "VT_PORTAL", "VT_NULL", "VT_UMAP", "VT_KERNFS", "VT_PROCFS", \
    "VT_AFS", "VT_ISOFS", "VT_UNION", "VT_ADOSFS", "VT_EXT2FS", "VT_CODA", \
    "VT_FILECORE", "VT_NTFS", "VT_VFS", "VT_OVERLAY", "VT_SMBFS", "VT_PTYFS", \
-    "VT_TMPFS", "VT_UDF", "VT_SYSVBFS", "VT_PUFFS", "VT_HFS"
+    "VT_TMPFS", "VT_UDF", "VT_SYSVBFS", "VT_PUFFS", "VT_HFS", "VT_EFS"

LIST_HEAD(buflists, buf);

Index: usr.bin/pmap/pmap.c
===================================================================
RCS file: /cvsroot/src/usr.bin/pmap/pmap.c,v
retrieving revision 1.35
diff -u -r1.35 pmap.c
--- usr.bin/pmap/pmap.c 6 Mar 2007 11:28:46 -0000       1.35
+++ usr.bin/pmap/pmap.c 26 Jun 2007 22:48:57 -0000
@@ -419,6 +419,7 @@
               case VT_SYSVBFS:
               case VT_PUFFS:
               case VT_HFS:
+               case VT_EFS:
                       break;
               }
       }