svn commit: r192271 - in user/kmacy/releng_7_2_zfs/sys: amd64/conf amd64/include boot/i386/zfsboot boot/zfs cddl/boot cddl/boot/zfs cddl/compat/opensolaris/kern cddl/compat/opensolaris/rpc cddl/com...

Kip Macy kmacy at FreeBSD.org
Sun May 17 23:30:14 UTC 2009


Author: kmacy
Date: Sun May 17 23:30:13 2009
New Revision: 192271
URL: http://svn.freebsd.org/changeset/base/192271

Log:
  MFC sys portion of update v13

Added:
  user/kmacy/releng_7_2_zfs/sys/amd64/conf/GENERIC_MINUS
  user/kmacy/releng_7_2_zfs/sys/boot/i386/zfsboot/
  user/kmacy/releng_7_2_zfs/sys/boot/i386/zfsboot/zfsboot.c
  user/kmacy/releng_7_2_zfs/sys/boot/zfs/
  user/kmacy/releng_7_2_zfs/sys/boot/zfs/zfsimpl.c
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/README
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/fletcher.c
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/lzjb.c
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/sha256.c
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/zfsimpl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/boot/zfs/zfssubr.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_lookup.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/file.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/kidmap.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/pathname.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/refstr.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/sid.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/sig.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/amd64/opensolaris_atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/ia64/opensolaris_atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/sparc64/opensolaris_atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/unicode/
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/unicode/u8_textprep.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_comutil.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_comutil.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_deleg.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_deleg.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zpool_prop.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zprop_common.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/vnode.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deleg.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deleg2.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scrub.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scrub2.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/rrwlock.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_deleg.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/rrwlock.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_boot.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_fuid.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid2.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr_array.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr_mem.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/acl_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/extdirent.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/idmap.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/eventdefs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/u8_textprep.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/u8_textprep_data.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/vnode.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/zmod/opensolaris_crc32.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_osd.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_rmlock.c
  user/kmacy/releng_7_2_zfs/sys/libkern/memmove.c
  user/kmacy/releng_7_2_zfs/sys/sys/_rmlock.h
  user/kmacy/releng_7_2_zfs/sys/sys/osd.h
  user/kmacy/releng_7_2_zfs/sys/sys/rmlock.h
Deleted:
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/acl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/amd64/atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/i386/atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/ia64/atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/atomic/sparc64/atomic.S
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr_array.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr_mem.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/vfs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/zmod/crc32.c
Modified:
  user/kmacy/releng_7_2_zfs/sys/amd64/include/vmparam.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_misc.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/kern/opensolaris_zone.c
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/rpc/xdr.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/atomic.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/cpuvar.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/cred.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/dnlc.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/kmem.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/lock.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/misc.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/mntent.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/mutex.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/param.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/policy.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/proc.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/rwlock.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/sunddi.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/sysmacros.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/time.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/types.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/uio.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/vfs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/vnode.h
  user/kmacy/releng_7_2_zfs/sys/cddl/compat/opensolaris/sys/zone.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/acl/acl_common.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/acl/acl_common.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/avl/avl.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/nvpair/nvpair.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_namecheck.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_namecheck.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/Makefile.files
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/bplist.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_traverse.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode_sync.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_synctask.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sha256.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_errlog.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_history.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/bplist.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_traverse.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_tx.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_synctask.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/txg.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/txg_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/uberblock_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/unique.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_disk.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap_leaf.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_acl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_context.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ctldir.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_dir.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_vfsops.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_znode.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_checksum.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zvol.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/unique.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_disk.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_missing.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_root.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_micro.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_dir.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fm.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_rlock.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_checksum.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/os/callb.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/os/list.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/os/taskq.c
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/avl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/byteorder.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/callb.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/cred.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/dkio.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/dklabel.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/fm/fs/zfs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/fm/protocol.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/fm/util.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/gfs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/isa_defs.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/list.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/nvpair.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/synch.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/sys/sysmacros.h
  user/kmacy/releng_7_2_zfs/sys/cddl/contrib/opensolaris/uts/common/zmod/zmod.c
  user/kmacy/releng_7_2_zfs/sys/compat/linprocfs/linprocfs.c
  user/kmacy/releng_7_2_zfs/sys/compat/pecoff/imgact_pecoff.c
  user/kmacy/releng_7_2_zfs/sys/conf/files
  user/kmacy/releng_7_2_zfs/sys/fs/coda/coda_vfsops.c
  user/kmacy/releng_7_2_zfs/sys/fs/msdosfs/msdosfs_vfsops.c
  user/kmacy/releng_7_2_zfs/sys/fs/nullfs/null_vfsops.c
  user/kmacy/releng_7_2_zfs/sys/fs/unionfs/union_vfsops.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_environment.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_fork.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_jail.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_kse.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_malloc.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_proc.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_thr.c
  user/kmacy/releng_7_2_zfs/sys/kern/kern_thread.c
  user/kmacy/releng_7_2_zfs/sys/kern/subr_lock.c
  user/kmacy/releng_7_2_zfs/sys/kern/subr_pcpu.c
  user/kmacy/releng_7_2_zfs/sys/kern/subr_witness.c
  user/kmacy/releng_7_2_zfs/sys/kern/vfs_acl.c
  user/kmacy/releng_7_2_zfs/sys/kern/vfs_extattr.c
  user/kmacy/releng_7_2_zfs/sys/kern/vfs_lookup.c
  user/kmacy/releng_7_2_zfs/sys/kern/vfs_mount.c
  user/kmacy/releng_7_2_zfs/sys/kern/vfs_subr.c
  user/kmacy/releng_7_2_zfs/sys/modules/opensolaris/Makefile
  user/kmacy/releng_7_2_zfs/sys/modules/zfs/Makefile
  user/kmacy/releng_7_2_zfs/sys/security/mac/mac_syscalls.c
  user/kmacy/releng_7_2_zfs/sys/sys/_types.h
  user/kmacy/releng_7_2_zfs/sys/sys/conf.h
  user/kmacy/releng_7_2_zfs/sys/sys/fcntl.h
  user/kmacy/releng_7_2_zfs/sys/sys/jail.h
  user/kmacy/releng_7_2_zfs/sys/sys/kernel.h
  user/kmacy/releng_7_2_zfs/sys/sys/lock.h
  user/kmacy/releng_7_2_zfs/sys/sys/mount.h
  user/kmacy/releng_7_2_zfs/sys/sys/namei.h
  user/kmacy/releng_7_2_zfs/sys/sys/pcpu.h
  user/kmacy/releng_7_2_zfs/sys/sys/proc.h
  user/kmacy/releng_7_2_zfs/sys/sys/sysctl.h
  user/kmacy/releng_7_2_zfs/sys/sys/systm.h
  user/kmacy/releng_7_2_zfs/sys/sys/types.h
  user/kmacy/releng_7_2_zfs/sys/sys/vnode.h
  user/kmacy/releng_7_2_zfs/sys/ufs/ffs/ffs_snapshot.c
  user/kmacy/releng_7_2_zfs/sys/vm/vm_kern.h

Added: user/kmacy/releng_7_2_zfs/sys/amd64/conf/GENERIC_MINUS
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ user/kmacy/releng_7_2_zfs/sys/amd64/conf/GENERIC_MINUS	Sun May 17 23:30:13 2009	(r192271)
@@ -0,0 +1,322 @@
+#
+# GENERIC -- Generic kernel configuration file for FreeBSD/amd64
+#
+# For more information on this file, please read the handbook section on
+# Kernel Configuration Files:
+#
+#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
+#
+# The handbook is also available locally in /usr/share/doc/handbook
+# if you've installed the doc distribution, otherwise always see the
+# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
+# latest information.
+#
+# An exhaustive list of options and more detailed explanations of the
+# device lines is also present in the ../../conf/NOTES and NOTES files.
+# If you are in doubt as to the purpose or necessity of a line, check first
+# in NOTES.
+#
+# $FreeBSD: user/kmacy/ZFS_MFC/sys/amd64/conf/GENERIC 191034 2009-04-14 00:35:56Z jfv $
+
+cpu		HAMMER
+ident		GENERIC
+
+# To statically compile in device wiring instead of /boot/device.hints
+#hints		"GENERIC.hints"		# Default places to look for devices.
+
+makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
+makeoptions	MODULES_OVERRIDE="opensolaris zfs"
+
+options 	SCHED_ULE		# ULE scheduler
+options 	PREEMPTION		# Enable kernel thread preemption
+options 	INET			# InterNETworking
+options 	INET6			# IPv6 communications protocols
+options 	SCTP			# Stream Control Transmission Protocol 
+options 	FFS			# Berkeley Fast Filesystem
+options 	SOFTUPDATES		# Enable FFS soft updates support
+options 	UFS_ACL			# Support for access control lists
+options 	UFS_DIRHASH		# Improve performance on big directories
+options 	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
+options 	MD_ROOT			# MD is a potential root device
+options 	NFSCLIENT		# Network Filesystem Client
+options 	NFSSERVER		# Network Filesystem Server
+options 	NFSLOCKD		# Network Lock Manager
+options 	NFS_ROOT		# NFS usable as /, requires NFSCLIENT
+options 	MSDOSFS			# MSDOS Filesystem
+options 	CD9660			# ISO 9660 Filesystem
+options 	PROCFS			# Process filesystem (requires PSEUDOFS)
+options 	PSEUDOFS		# Pseudo-filesystem framework
+options 	GEOM_PART_GPT		# GUID Partition Tables.
+options 	GEOM_LABEL		# Provides labelization
+options 	COMPAT_43TTY		# BSD 4.3 TTY compat [KEEP THIS!]
+options 	COMPAT_IA32		# Compatible with i386 binaries
+options 	COMPAT_FREEBSD4		# Compatible with FreeBSD4
+options 	COMPAT_FREEBSD5		# Compatible with FreeBSD5
+options 	COMPAT_FREEBSD6		# Compatible with FreeBSD6
+options 	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
+options 	KTRACE			# ktrace(1) support
+options 	STACK			# stack(9) support
+options 	SYSVSHM			# SYSV-style shared memory
+options 	SYSVMSG			# SYSV-style message queues
+options 	SYSVSEM			# SYSV-style semaphores
+options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
+options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
+options 	ADAPTIVE_GIANT		# Giant mutex is adaptive.
+options 	STOP_NMI		# Stop CPUS using NMI instead of IPI
+options 	AUDIT			# Security event auditing
+#options 	KDTRACE_FRAME		# Ensure frames are compiled in
+#options 	KDTRACE_HOOKS		# Kernel DTrace hooks
+
+
+options		INVARIANTS
+options		INVARIANT_SUPPORT
+
+options		WITNESS
+options		WITNESS_SKIPSPIN
+options		DEBUG
+options		KDB
+options		DDB
+options		ALT_BREAK_TO_DEBUGGER
+options		ADAPTIVE_SX
+
+# Make an SMP-capable kernel by default
+options 	SMP			# Symmetric MultiProcessor Kernel
+
+# CPU frequency control
+device		cpufreq
+
+# Bus support.
+device		acpi
+device		pci
+
+# Floppy drives
+device		fdc
+
+# ATA and ATAPI devices
+device		ata
+device		atadisk		# ATA disk drives
+device		ataraid		# ATA RAID drives
+device		atapicd		# ATAPI CDROM drives
+device		atapifd		# ATAPI floppy drives
+device		atapist		# ATAPI tape drives
+options 	ATA_STATIC_ID	# Static device numbering
+
+# SCSI Controllers
+device		ahc		# AHA2940 and onboard AIC7xxx devices
+options 	AHC_REG_PRETTY_PRINT	# Print register bitfields in debug
+					# output.  Adds ~128k to driver.
+device		ahd		# AHA39320/29320 and onboard AIC79xx devices
+options 	AHD_REG_PRETTY_PRINT	# Print register bitfields in debug
+					# output.  Adds ~215k to driver.
+device		amd		# AMD 53C974 (Tekram DC-390(T))
+device		hptiop		# Highpoint RocketRaid 3xxx series
+device		isp		# Qlogic family
+#device 	ispfw		# Firmware for QLogic HBAs- normally a module
+device		mpt		# LSI-Logic MPT-Fusion
+#device		ncr		# NCR/Symbios Logic
+device		sym		# NCR/Symbios Logic (newer chipsets + those of `ncr')
+device		trm		# Tekram DC395U/UW/F DC315U adapters
+
+device		adv		# Advansys SCSI adapters
+device		adw		# Advansys wide SCSI adapters
+device		aic		# Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
+device		bt		# Buslogic/Mylex MultiMaster SCSI adapters
+
+
+# SCSI peripherals
+device		scbus		# SCSI bus (required for SCSI)
+device		ch		# SCSI media changers
+device		da		# Direct Access (disks)
+device		sa		# Sequential Access (tape etc)
+device		cd		# CD
+device		pass		# Passthrough device (direct SCSI access)
+device		ses		# SCSI Environmental Services (and SAF-TE)
+
+# RAID controllers interfaced to the SCSI subsystem
+device		amr		# AMI MegaRAID
+device		arcmsr		# Areca SATA II RAID
+device		ciss		# Compaq Smart RAID 5*
+device		dpt		# DPT Smartcache III, IV - See NOTES for options
+device		hptmv		# Highpoint RocketRAID 182x
+device		hptrr		# Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
+device		iir		# Intel Integrated RAID
+device		ips		# IBM (Adaptec) ServeRAID
+device		mly		# Mylex AcceleRAID/eXtremeRAID
+device		twa		# 3ware 9000 series PATA/SATA RAID
+
+# RAID controllers
+device		aac		# Adaptec FSA RAID
+device		aacp		# SCSI passthrough for aac (requires CAM)
+device		ida		# Compaq Smart RAID
+device		mfi		# LSI MegaRAID SAS
+device		mlx		# Mylex DAC960 family
+#XXX pointer/int warnings
+#device		pst		# Promise Supertrak SX6000
+device		twe		# 3ware ATA RAID
+
+# atkbdc0 controls both the keyboard and the PS/2 mouse
+device		atkbdc		# AT keyboard controller
+device		atkbd		# AT keyboard
+device		psm		# PS/2 mouse
+
+device		kbdmux		# keyboard multiplexer
+
+device		vga		# VGA video card driver
+
+device		splash		# Splash screen and screen saver support
+
+# syscons is the default console driver, resembling an SCO console
+device		sc
+
+device		agp		# support several AGP chipsets
+
+# PCCARD (PCMCIA) support
+# PCMCIA and cardbus bridge support
+device		cbb		# cardbus (yenta) bridge
+device		pccard		# PC Card (16-bit) bus
+device		cardbus		# CardBus (32-bit) bus
+
+# Serial (COM) ports
+device		sio		# 8250, 16[45]50 based serial ports
+device		uart		# Generic UART driver
+
+# Parallel port
+device		ppc
+device		ppbus		# Parallel port bus (required)
+device		lpt		# Printer
+device		plip		# TCP/IP over parallel
+device		ppi		# Parallel port interface device
+#device		vpo		# Requires scbus and da
+
+# If you've got a "dumb" serial or parallel PCI card that is
+# supported by the puc(4) glue driver, uncomment the following
+# line to enable it (connects to sio, uart and/or ppc drivers):
+#device		puc
+
+# PCI Ethernet NICs.
+device		de		# DEC/Intel DC21x4x (``Tulip'')
+device		em		# Intel PRO/1000 Gigabit Ethernet Family
+device		igb		# Intel PRO/1000 PCIE Server Gigabit Family
+device		ixgbe		# Intel PRO/10GbE PCIE Ethernet Family
+device		le		# AMD Am7900 LANCE and Am79C9xx PCnet
+device		txp		# 3Com 3cR990 (``Typhoon'')
+device		vx		# 3Com 3c590, 3c595 (``Vortex'')
+
+# PCI Ethernet NICs that use the common MII bus controller code.
+# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
+device		miibus		# MII bus support
+device		age		# Attansic/Atheros L1 Gigabit Ethernet
+device		ale		# Atheros AR8121/AR8113/AR8114 Ethernet
+device		bce		# Broadcom BCM5706/BCM5708 Gigabit Ethernet
+device		bfe		# Broadcom BCM440x 10/100 Ethernet
+device		bge		# Broadcom BCM570xx Gigabit Ethernet
+device		dc		# DEC/Intel 21143 and various workalikes
+device		et		# Agere ET1310 10/100/Gigabit Ethernet
+device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)
+device		jme		# JMicron JMC250 Gigabit/JMC260 Fast Ethernet
+device		lge		# Level 1 LXT1001 gigabit Ethernet
+device		msk		# Marvell/SysKonnect Yukon II Gigabit Ethernet
+device		nfe		# nVidia nForce MCP on-board Ethernet
+device		nge		# NatSemi DP83820 gigabit Ethernet
+#device		nve		# nVidia nForce MCP on-board Ethernet Networking
+device		pcn		# AMD Am79C97x PCI 10/100 (precedence over 'le')
+device		re		# RealTek 8139C+/8169/8169S/8110S
+device		rl		# RealTek 8129/8139
+device		sf		# Adaptec AIC-6915 (``Starfire'')
+device		sis		# Silicon Integrated Systems SiS 900/SiS 7016
+device		sk		# SysKonnect SK-984x & SK-982x gigabit Ethernet
+device		ste		# Sundance ST201 (D-Link DFE-550TX)
+device		ti		# Alteon Networks Tigon I/II gigabit Ethernet
+device		tl		# Texas Instruments ThunderLAN
+device		tx		# SMC EtherPower II (83c170 ``EPIC'')
+device		vge		# VIA VT612x gigabit Ethernet
+device		vr		# VIA Rhine, Rhine II
+device		wb		# Winbond W89C840F
+device		xl		# 3Com 3c90x (``Boomerang'', ``Cyclone'')
+
+# ISA Ethernet NICs.  pccard NICs included.
+device		cs		# Crystal Semiconductor CS89x0 NIC
+# 'device ed' requires 'device miibus'
+device		ed		# NE[12]000, SMC Ultra, 3c503, DS8390 cards
+device		ex		# Intel EtherExpress Pro/10 and Pro/10+
+device		ep		# Etherlink III based cards
+device		fe		# Fujitsu MB8696x based cards
+device		sn		# SMC's 9000 series of Ethernet chips
+device		xe		# Xircom pccard Ethernet
+
+# Wireless NIC cards
+device		wlan		# 802.11 support
+device		wlan_wep	# 802.11 WEP support
+device		wlan_ccmp	# 802.11 CCMP support
+device		wlan_tkip	# 802.11 TKIP support
+device		wlan_amrr	# AMRR transmit rate control algorithm
+device		wlan_scan_ap	# 802.11 AP mode scanning
+device		wlan_scan_sta	# 802.11 STA mode scanning
+device		an		# Aironet 4500/4800 802.11 wireless NICs.
+device		ath		# Atheros pci/cardbus NIC's
+device		ath_hal		# Atheros HAL (Hardware Access Layer)
+options		AH_SUPPORT_AR5416	# enable AR5416 tx/rx descriptors
+device		ath_rate_sample	# SampleRate tx rate control for ath
+device		awi		# BayStack 660 and others
+device		ral		# Ralink Technology RT2500 wireless NICs.
+device		wi		# WaveLAN/Intersil/Symbol 802.11 wireless NICs.
+
+# Pseudo devices.
+device		loop		# Network loopback
+device		random		# Entropy device
+device		ether		# Ethernet support
+device		sl		# Kernel SLIP
+device		ppp		# Kernel PPP
+device		tun		# Packet tunnel.
+device		pty		# Pseudo-ttys (telnet etc)
+device		md		# Memory "disks"
+device		gif		# IPv6 and IPv4 tunneling
+device		faith		# IPv6-to-IPv4 relaying (translation)
+device		firmware	# firmware assist module
+
+# The `bpf' device enables the Berkeley Packet Filter.
+# Be aware of the administrative consequences of enabling this!
+# Note that 'bpf' is required for DHCP.
+device		bpf		# Berkeley packet filter
+
+# USB support
+device		uhci		# UHCI PCI->USB interface
+device		ohci		# OHCI PCI->USB interface
+device		ehci		# EHCI PCI->USB interface (USB 2.0)
+device		usb		# USB Bus (required)
+#device		udbp		# USB Double Bulk Pipe devices
+device		ugen		# Generic
+device		uhid		# "Human Interface Devices"
+device		ukbd		# Keyboard
+device		ulpt		# Printer
+device		umass		# Disks/Mass storage - Requires scbus and da
+device		ums		# Mouse
+device		ural		# Ralink Technology RT2500USB wireless NICs
+device		urio		# Diamond Rio 500 MP3 player
+device		uscanner	# Scanners
+# USB Serial devices
+device		ucom		# Generic com ttys
+device		uark		# Technologies ARK3116 based serial adapters
+device		ubsa		# Belkin F5U103 and compatible serial adapters
+device		ubser		# BWCT console serial adapters
+device		uftdi		# For FTDI usb serial adapters
+device		uipaq		# Some WinCE based devices
+device		uplcom		# Prolific PL-2303 serial adapters
+device		uslcom		# SI Labs CP2101/CP2102 serial adapters
+device		uvisor		# Visor and Palm devices
+device		uvscom		# USB serial support for DDI pocket's PHS
+# USB Ethernet, requires miibus
+device		aue		# ADMtek USB Ethernet
+device		axe		# ASIX Electronics USB Ethernet
+device		cdce		# Generic USB over Ethernet
+device		cue		# CATC USB Ethernet
+device		kue		# Kawasaki LSI USB Ethernet
+device		rue		# RealTek RTL8150 USB Ethernet
+
+# FireWire support
+device		firewire	# FireWire bus code
+device		sbp		# SCSI over FireWire (Requires scbus and da)
+device		fwe		# Ethernet over FireWire (non-standard!)
+device		fwip		# IP over FireWire (RFC 2734,3146)
+device		dcons		# Dumb console driver
+device		dcons_crom	# Configuration ROM for dcons

Modified: user/kmacy/releng_7_2_zfs/sys/amd64/include/vmparam.h
==============================================================================
--- user/kmacy/releng_7_2_zfs/sys/amd64/include/vmparam.h	Sun May 17 23:25:53 2009	(r192270)
+++ user/kmacy/releng_7_2_zfs/sys/amd64/include/vmparam.h	Sun May 17 23:30:13 2009	(r192271)
@@ -154,8 +154,7 @@
  * 0xffff800000000000 - 0xffff804020100fff   recursive page table (512GB slot)
  * 0xffff804020101000 - 0xfffffeffffffffff   unused
  * 0xffffff0000000000 - 0xffffff7fffffffff   512GB direct map mappings
- * 0xffffff8000000000 - 0xfffffffe7fffffff   unused (506GB)
- * 0xfffffffe80000000 - 0xffffffffffffffff   6GB kernel map
+ * 0xffffff8000000000 - 0xffffffffffffffff   512GB kernel map
  *
  * Within the kernel map:
  *
@@ -163,7 +162,7 @@
  */
 
 #define	VM_MAX_KERNEL_ADDRESS	KVADDR(KPML4I, NPDPEPG-1, NPDEPG-1, NPTEPG-1)
-#define	VM_MIN_KERNEL_ADDRESS	KVADDR(KPML4I, NPDPEPG-6, 0, 0)
+#define	VM_MIN_KERNEL_ADDRESS	KVADDR(KPML4I, NPDPEPG-512, 0, 0)
 
 #define	DMAP_MIN_ADDRESS	KVADDR(DMPML4I, 0, 0, 0)
 #define	DMAP_MAX_ADDRESS	KVADDR(DMPML4I+1, 0, 0, 0)

Added: user/kmacy/releng_7_2_zfs/sys/boot/i386/zfsboot/zfsboot.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ user/kmacy/releng_7_2_zfs/sys/boot/i386/zfsboot/zfsboot.c	Sun May 17 23:30:13 2009	(r192271)
@@ -0,0 +1,1057 @@
+/*-
+ * Copyright (c) 1998 Robert Nordier
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms are freely
+ * permitted provided that the above copyright notice and this
+ * paragraph and the following disclaimer are duplicated in all
+ * such forms.
+ *
+ * This software is provided "AS IS" and without any express or
+ * implied warranties, including, without limitation, the implied
+ * warranties of merchantability and fitness for a particular
+ * purpose.
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/param.h>
+#include <sys/errno.h>
+#include <sys/diskmbr.h>
+#ifdef GPT
+#include <sys/gpt.h>
+#endif
+#include <sys/reboot.h>
+#include <sys/queue.h>
+
+#include <machine/bootinfo.h>
+#include <machine/elf.h>
+
+#include <stdarg.h>
+#include <stddef.h>
+
+#include <a.out.h>
+
+#include <btxv86.h>
+
+#ifndef GPT
+#include "zfsboot.h"
+#endif
+#include "lib.h"
+
+#define IO_KEYBOARD	1
+#define IO_SERIAL	2
+
+#define SECOND		18	/* Circa that many ticks in a second. */
+
+#define RBX_ASKNAME	0x0	/* -a */
+#define RBX_SINGLE	0x1	/* -s */
+/* 0x2 is reserved for log2(RB_NOSYNC). */
+/* 0x3 is reserved for log2(RB_HALT). */
+/* 0x4 is reserved for log2(RB_INITNAME). */
+#define RBX_DFLTROOT	0x5	/* -r */
+#define RBX_KDB 	0x6	/* -d */
+/* 0x7 is reserved for log2(RB_RDONLY). */
+/* 0x8 is reserved for log2(RB_DUMP). */
+/* 0x9 is reserved for log2(RB_MINIROOT). */
+#define RBX_CONFIG	0xa	/* -c */
+#define RBX_VERBOSE	0xb	/* -v */
+#define RBX_SERIAL	0xc	/* -h */
+#define RBX_CDROM	0xd	/* -C */
+/* 0xe is reserved for log2(RB_POWEROFF). */
+#define RBX_GDB 	0xf	/* -g */
+#define RBX_MUTE	0x10	/* -m */
+/* 0x11 is reserved for log2(RB_SELFTEST). */
+/* 0x12 is reserved for boot programs. */
+/* 0x13 is reserved for boot programs. */
+#define RBX_PAUSE	0x14	/* -p */
+#define RBX_QUIET	0x15	/* -q */
+#define RBX_NOINTR	0x1c	/* -n */
+/* 0x1d is reserved for log2(RB_MULTIPLE) and is just misnamed here. */
+#define RBX_DUAL	0x1d	/* -D */
+/* 0x1f is reserved for log2(RB_BOOTINFO). */
+
+/* pass: -a, -s, -r, -d, -c, -v, -h, -C, -g, -m, -p, -D */
+#define RBX_MASK	(OPT_SET(RBX_ASKNAME) | OPT_SET(RBX_SINGLE) | \
+			OPT_SET(RBX_DFLTROOT) | OPT_SET(RBX_KDB ) | \
+			OPT_SET(RBX_CONFIG) | OPT_SET(RBX_VERBOSE) | \
+			OPT_SET(RBX_SERIAL) | OPT_SET(RBX_CDROM) | \
+			OPT_SET(RBX_GDB ) | OPT_SET(RBX_MUTE) | \
+			OPT_SET(RBX_PAUSE) | OPT_SET(RBX_DUAL))
+
+/* Hint to loader that we came from ZFS */
+#define	KARGS_FLAGS_ZFS		0x4
+
+#define PATH_CONFIG	"/boot.config"
+#define PATH_BOOT3	"/boot/loader"
+#define PATH_KERNEL	"/boot/kernel/kernel"
+
+#define ARGS		0x900
+#define NOPT		14
+#define NDEV		3
+#define MEM_BASE	0x12
+#define MEM_EXT 	0x15
+#define V86_CY(x)	((x) & 1)
+#define V86_ZR(x)	((x) & 0x40)
+
+#define DRV_HARD	0x80
+#define DRV_MASK	0x7f
+
+#define TYPE_AD		0
+#define TYPE_DA		1
+#define TYPE_MAXHARD	TYPE_DA
+#define TYPE_FD		2
+
+#define OPT_SET(opt)	(1 << (opt))
+#define OPT_CHECK(opt)	((opts) & OPT_SET(opt))
+
+extern uint32_t _end;
+
+#ifdef GPT
+static const uuid_t freebsd_zfs_uuid = GPT_ENT_TYPE_FREEBSD_ZFS;
+#endif
+static const char optstr[NOPT] = "DhaCcdgmnpqrsv"; /* Also 'P', 'S' */
+static const unsigned char flags[NOPT] = {
+    RBX_DUAL,
+    RBX_SERIAL,
+    RBX_ASKNAME,
+    RBX_CDROM,
+    RBX_CONFIG,
+    RBX_KDB,
+    RBX_GDB,
+    RBX_MUTE,
+    RBX_NOINTR,
+    RBX_PAUSE,
+    RBX_QUIET,
+    RBX_DFLTROOT,
+    RBX_SINGLE,
+    RBX_VERBOSE
+};
+
+static const char *const dev_nm[NDEV] = {"ad", "da", "fd"};
+static const unsigned char dev_maj[NDEV] = {30, 4, 2};
+
+struct dsk {
+    unsigned drive;
+    unsigned type;
+    unsigned unit;
+    unsigned slice;
+    unsigned part;
+    unsigned start;
+    int init;
+};
+static char cmd[512];
+static char kname[1024];
+static uint32_t opts;
+static int comspeed = SIOSPD;
+static struct bootinfo bootinfo;
+static uint32_t bootdev;
+static uint8_t ioctrl = IO_KEYBOARD;
+
+/* Buffers that must not span a 64k boundary. */
+#define READ_BUF_SIZE	8192
+struct dmadat {
+	char rdbuf[READ_BUF_SIZE];	/* for reading large things */
+	char secbuf[READ_BUF_SIZE];	/* for MBR/disklabel */
+};
+static struct dmadat *dmadat;
+
+void exit(int);
+static void load(void);
+static int parse(void);
+static void printf(const char *,...);
+static void putchar(int);
+static uint32_t memsize(void);
+static int drvread(struct dsk *, void *, unsigned, unsigned);
+static int keyhit(unsigned);
+static int xputc(int);
+static int xgetc(int);
+static int getc(int);
+
+static void memcpy(void *, const void *, int);
+static void
+memcpy(void *dst, const void *src, int len)
+{
+    const char *s = src;
+    char *d = dst;
+
+    while (len--)
+        *d++ = *s++;
+}
+
+static void
+strcpy(char *dst, const char *src)
+{
+    while (*src)
+	*dst++ = *src++;
+    *dst++ = 0;
+}
+
+static void
+strcat(char *dst, const char *src)
+{
+    while (*dst)
+	dst++;
+    while (*src)
+	*dst++ = *src++;
+    *dst++ = 0;
+}
+
+static int
+strcmp(const char *s1, const char *s2)
+{
+    for (; *s1 == *s2 && *s1; s1++, s2++);
+    return (unsigned char)*s1 - (unsigned char)*s2;
+}
+
+static const char *
+strchr(const char *s, char ch)
+{
+    for (; *s; s++)
+	if (*s == ch)
+		return s;
+    return 0;
+}
+
+static int
+memcmp(const void *p1, const void *p2, size_t n)
+{
+    const char *s1 = (const char *) p1;
+    const char *s2 = (const char *) p2;
+    for (; n > 0 && *s1 == *s2; s1++, s2++, n--);
+    if (n)
+        return (unsigned char)*s1 - (unsigned char)*s2;
+    else
+	return 0;
+}
+
+static void
+memset(void *p, char val, size_t n)
+{
+    char *s = (char *) p;
+    while (n--)
+	*s++ = val;
+}
+
+static void *
+malloc(size_t n)
+{
+	static char *heap_next;
+	static char *heap_end;
+
+	if (!heap_next) {
+		heap_next = (char *) dmadat + sizeof(*dmadat);
+		heap_end = (char *) (640*1024);
+	}
+
+	char *p = heap_next;
+	if (p + n > heap_end) {
+		printf("malloc failure\n");
+		for (;;)
+		    ;
+		return 0;
+	}
+	heap_next += n;
+	return p;
+}
+
+static size_t
+strlen(const char *s)
+{
+	size_t len = 0;
+	while (*s++)
+		len++;
+	return len;
+}
+
+static char *
+strdup(const char *s)
+{
+	char *p = malloc(strlen(s) + 1);
+	strcpy(p, s);
+	return p;
+}
+
+#include "zfsimpl.c"
+
+/*
+ * Read from a dnode (which must be from a ZPL filesystem).
+ */
+static int
+zfs_read(spa_t *spa, const dnode_phys_t *dnode, off_t *offp, void *start, size_t size)
+{
+	const znode_phys_t *zp = (const znode_phys_t *) dnode->dn_bonus;
+	size_t n;
+	int rc;
+
+	n = size;
+	if (*offp + n > zp->zp_size)
+		n = zp->zp_size - *offp;
+	
+	rc = dnode_read(spa, dnode, *offp, start, n);
+	if (rc)
+		return (-1);
+	*offp += n;
+
+	return (n);
+}
+
+/*
+ * Current ZFS pool
+ */
+spa_t *spa;
+
+/*
+ * A wrapper for dskread that doesn't have to worry about whether the
+ * buffer pointer crosses a 64k boundary.
+ */
+static int
+vdev_read(vdev_t *vdev, void *priv, off_t off, void *buf, size_t bytes)
+{
+	char *p;
+	unsigned int lba, nb;
+	struct dsk *dsk = (struct dsk *) priv;
+
+	if ((off & (DEV_BSIZE - 1)) || (bytes & (DEV_BSIZE - 1)))
+		return -1;
+
+	p = buf;
+	lba = off / DEV_BSIZE;
+	while (bytes > 0) {
+		nb = bytes / DEV_BSIZE;
+		if (nb > READ_BUF_SIZE / DEV_BSIZE)
+			nb = READ_BUF_SIZE / DEV_BSIZE;
+		if (drvread(dsk, dmadat->rdbuf, lba, nb))
+			return -1;
+		memcpy(p, dmadat->rdbuf, nb * DEV_BSIZE);
+		p += nb * DEV_BSIZE;
+		lba += nb;
+		bytes -= nb * DEV_BSIZE;
+	}
+
+	return 0;
+}
+
+static int
+xfsread(const dnode_phys_t *dnode, off_t *offp, void *buf, size_t nbyte)
+{
+    if ((size_t)zfs_read(spa, dnode, offp, buf, nbyte) != nbyte) {
+	printf("Invalid %s\n", "format");
+	return -1;
+    }
+    return 0;
+}
+
+static inline uint32_t
+memsize(void)
+{
+    v86.addr = MEM_EXT;
+    v86.eax = 0x8800;
+    v86int();
+    return v86.eax;
+}
+
+static inline void
+getstr(void)
+{
+    char *s;
+    int c;
+
+    s = cmd;
+    for (;;) {
+	switch (c = xgetc(0)) {
+	case 0:
+	    break;
+	case '\177':
+	case '\b':
+	    if (s > cmd) {
+		s--;
+		printf("\b \b");
+	    }
+	    break;
+	case '\n':
+	case '\r':
+	    *s = 0;
+	    return;
+	default:
+	    if (s - cmd < sizeof(cmd) - 1)
+		*s++ = c;
+	    putchar(c);
+	}
+    }
+}
+
+static inline void
+putc(int c)
+{
+    v86.addr = 0x10;
+    v86.eax = 0xe00 | (c & 0xff);
+    v86.ebx = 0x7;
+    v86int();
+}
+
+/*
+ * Try to detect a device supported by the legacy int13 BIOS
+ */
+static int
+int13probe(int drive)
+{
+    v86.ctl = V86_FLAGS;
+    v86.addr = 0x13;
+    v86.eax = 0x800;
+    v86.edx = drive;
+    v86int();
+    
+    if (!(v86.efl & 0x1) &&				/* carry clear */
+	((v86.edx & 0xff) != (drive & DRV_MASK))) {	/* unit # OK */
+	if ((v86.ecx & 0x3f) == 0) {			/* absurd sector size */
+		return(0);				/* skip device */
+	}
+	return (1);
+    }
+    return(0);
+}
+
+/*
+ * We call this when we find a ZFS vdev - ZFS consumes the dsk
+ * structure so we must make a new one.
+ */
+static struct dsk *
+copy_dsk(struct dsk *dsk)
+{
+    struct dsk *newdsk;
+
+    newdsk = malloc(sizeof(struct dsk));
+    *newdsk = *dsk;
+    return (newdsk);
+}
+
+static void
+probe_drive(struct dsk *dsk, spa_t **spap)
+{
+#ifdef GPT
+    struct gpt_hdr hdr;
+    struct gpt_ent *ent;
+    daddr_t slba, elba;
+    unsigned part, entries_per_sec;
+#endif
+    struct dos_partition *dp;
+    char *sec;
+    unsigned i;
+
+    /*
+     * If we find a vdev on the whole disk, stop here. Otherwise dig
+     * out the MBR and probe each slice in turn for a vdev.
+     */
+    if (vdev_probe(vdev_read, dsk, spap) == 0)
+	return;
+
+    sec = dmadat->secbuf;
+    dsk->start = 0;
+
+#ifdef GPT
+    /*
+     * First check for GPT.
+     */
+    if (drvread(dsk, sec, 1, 1)) {
+	return;
+    }
+    memcpy(&hdr, sec, sizeof(hdr));
+    if (memcmp(hdr.hdr_sig, GPT_HDR_SIG, sizeof(hdr.hdr_sig)) != 0 ||
+	hdr.hdr_lba_self != 1 || hdr.hdr_revision < 0x00010000 ||
+	hdr.hdr_entsz < sizeof(*ent) || DEV_BSIZE % hdr.hdr_entsz != 0) {
+	goto trymbr;
+    }
+
+    /*
+     * Probe all GPT partitions for the presense of ZFS pools. We
+     * return the spa_t for the first we find (if requested). This
+     * will have the effect of booting from the first pool on the
+     * disk.
+     */
+    entries_per_sec = DEV_BSIZE / hdr.hdr_entsz;
+    slba = hdr.hdr_lba_table;
+    elba = slba + hdr.hdr_entries / entries_per_sec;
+    while (slba < elba) {
+	if (drvread(dsk, sec, slba, 1))
+	    return;
+	for (part = 0; part < entries_per_sec; part++) {
+	    ent = (struct gpt_ent *)(sec + part * hdr.hdr_entsz);
+	    if (memcmp(&ent->ent_type, &freebsd_zfs_uuid,
+		     sizeof(uuid_t)) == 0) {
+		dsk->start = ent->ent_lba_start;
+		if (vdev_probe(vdev_read, dsk, spap) == 0) {
+		    /*
+		     * We record the first pool we find (we will try
+		     * to boot from that one).
+		     */
+		    spap = 0;
+
+		    /*
+		     * This slice had a vdev. We need a new dsk
+		     * structure now since the vdev now owns this one.
+		     */
+		    dsk = copy_dsk(dsk);
+		}
+		break;
+	    }
+	}
+	slba++;
+    }
+    return;
+trymbr:
+#endif
+
+    if (drvread(dsk, sec, DOSBBSECTOR, 1))
+	return;
+    dp = (void *)(sec + DOSPARTOFF);
+
+    for (i = 0; i < NDOSPART; i++) {
+	if (!dp[i].dp_typ)
+	    continue;
+	dsk->start = dp[i].dp_start;
+	if (vdev_probe(vdev_read, dsk, spap) == 0) {
+	    /*
+	     * We record the first pool we find (we will try to boot
+	     * from that one.
+	     */
+	    spap = 0;
+
+	    /*
+	     * This slice had a vdev. We need a new dsk structure now
+	     * since the vdev now owns this one.
+	     */
+	    dsk = copy_dsk(dsk);
+	}
+    }
+}
+
+int
+main(void)
+{
+    int autoboot, i;
+    dnode_phys_t dn;
+    off_t off;
+    struct dsk *dsk;
+
+    dmadat = (void *)(roundup2(__base + (int32_t)&_end, 0x10000) - __base);
+    v86.ctl = V86_FLAGS;
+
+    dsk = malloc(sizeof(struct dsk));
+    dsk->drive = *(uint8_t *)PTOV(ARGS);
+    dsk->type = dsk->drive & DRV_HARD ? TYPE_AD : TYPE_FD;
+    dsk->unit = dsk->drive & DRV_MASK;
+    dsk->slice = *(uint8_t *)PTOV(ARGS + 1) + 1;
+    dsk->part = 0;
+    dsk->start = 0;
+    dsk->init = 0;
+
+    bootinfo.bi_version = BOOTINFO_VERSION;
+    bootinfo.bi_size = sizeof(bootinfo);
+    bootinfo.bi_basemem = 0;	/* XXX will be filled by loader or kernel */
+    bootinfo.bi_extmem = memsize();
+    bootinfo.bi_memsizes_valid++;
+    bootinfo.bi_bios_dev = dsk->drive;
+
+    bootdev = MAKEBOOTDEV(dev_maj[dsk->type],
+			  dsk->slice, dsk->unit, dsk->part),
+
+    /* Process configuration file */
+
+    autoboot = 1;
+
+    zfs_init();
+
+    /*
+     * Probe the boot drive first - we will try to boot from whatever
+     * pool we find on that drive.
+     */
+    probe_drive(dsk, &spa);
+
+    /*
+     * Probe the rest of the drives that the bios knows about. This
+     * will find any other available pools and it may fill in missing
+     * vdevs for the boot pool.
+     */
+    for (i = 0; i < 128; i++) {
+	if ((i | DRV_HARD) == *(uint8_t *)PTOV(ARGS))
+	    continue;
+
+	if (!int13probe(i | DRV_HARD))
+	    break;
+
+	dsk = malloc(sizeof(struct dsk));
+	dsk->drive = i | DRV_HARD;
+	dsk->type = dsk->drive & TYPE_AD;
+	dsk->unit = i;
+	dsk->slice = 0;
+	dsk->part = 0;
+	dsk->start = 0;
+	dsk->init = 0;
+	probe_drive(dsk, 0);
+    }
+
+    /*
+     * If we didn't find a pool on the boot drive, default to the
+     * first pool we found, if any.
+     */
+    if (!spa) {
+	spa = STAILQ_FIRST(&zfs_pools);
+	if (!spa) {
+	    printf("No ZFS pools located, can't boot\n");
+	    for (;;)
+		;
+	}
+    }
+
+    zfs_mount_pool(spa);
+
+    if (zfs_lookup(spa, PATH_CONFIG, &dn) == 0) {
+	off = 0;
+	xfsread(&dn, &off, cmd, sizeof(cmd));
+    }
+
+    if (*cmd) {
+	if (parse())
+	    autoboot = 0;
+	if (!OPT_CHECK(RBX_QUIET))
+	    printf("%s: %s", PATH_CONFIG, cmd);
+	/* Do not process this command twice */
+	*cmd = 0;
+    }
+
+    /*
+     * Try to exec stage 3 boot loader. If interrupted by a keypress,
+     * or in case of failure, try to load a kernel directly instead.
+     */
+
+    if (autoboot && !*kname) {
+	memcpy(kname, PATH_BOOT3, sizeof(PATH_BOOT3));
+	if (!keyhit(3*SECOND)) {
+	    load();
+	    memcpy(kname, PATH_KERNEL, sizeof(PATH_KERNEL));
+	}
+    }
+
+    /* Present the user with the boot2 prompt. */
+
+    for (;;) {
+	if (!autoboot || !OPT_CHECK(RBX_QUIET))
+	    printf("\nFreeBSD/i386 boot\n"
+		   "Default: %s:%s\n"
+		   "boot: ",
+		   spa->spa_name, kname);
+	if (ioctrl & IO_SERIAL)
+	    sio_flush();
+	if (!autoboot || keyhit(5*SECOND))
+	    getstr();
+	else if (!autoboot || !OPT_CHECK(RBX_QUIET))
+	    putchar('\n');
+	autoboot = 0;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-user mailing list