Merge branch 'pefs'

* pefs:
  pefs: Use MNT_VNODE_FOREACH_ACTIVE() in pefs_flushkey.
Extract UFS code for read-ahead into ffs_blkatoff_ra function.

Sponsored by:	Google Summer Of Code 2011
Don't assume that UFS on-disk format of a directory is the same as
defined by <sys/dirent.h>

Always start parsing at DIRBLKSIZ aligned offset, skip first entries if
uio_offset is not DIRBLKSIZ aligned. Return EINVAL if buffer is small
for single entry.

Preallocate buffer for cookies. Cookies will be replaced with d_off
field in struct dirent at later point.

Skip entries with zero inode number.

Stop mangling dirent in ufs_extattr_iterate_directory().

Sponsored by:	Google Summer Of Code 2011
Import geom gate union utility (ggateu)
tmpfs: DEBUG
tmpfs: Remove ascii art
tmpfs: Whitespace
tmpfs: Move sysctl_tmpfs_memory_reserved() around.

No functional changes.
tmpfs: Switch to global UMA zones.
tmpfs: Use inode hash table for exported file systems.
tmp: Keep track of inode generation number per file system.

Originally we would generate pseudo random number on each
node allocation.