Hasso Tepper [Mon, 30 Jun 2008 11:22:39 +0000 (11:22 +0000)]
Merge from vendor branch GCC:
Add objc to the gcc-4.1.2.
Hasso Tepper [Mon, 30 Jun 2008 11:22:39 +0000 (11:22 +0000)]
Add objc to the gcc-4.1.2.
Matthew Dillon [Mon, 30 Jun 2008 04:18:30 +0000 (04:18 +0000)]
HAMMER 59F/Many: Stabilization pass
* Use kmalloc_limit() to calculate a better record limit. This fixes an
issue on machines with limited system memory where HAMMER could blow
out its kmalloc pool by allocating too many records.
Matthew Dillon [Mon, 30 Jun 2008 03:57:41 +0000 (03:57 +0000)]
Fix a low-memory deadlock in the VM system which can occur on systems
with small amounts of system memory. The pageout daemon uses LK_TIMELOCK
to avoid deadlocking on a vnode so it can continue operation. This only
works if lk_timo is non-zero, but all filesystems initialize their vnodes
with a timeout of zero so the feature is defeated. Adjust allocvnode()
to guarantee that lk_timo is never zero.
Matthew Dillon [Mon, 30 Jun 2008 03:00:36 +0000 (03:00 +0000)]
Add a new helper function, kmalloc_limit(). This function returns
the number of bytes that can be held in a M_XXX kernel memory pool.
Matthew Dillon [Mon, 30 Jun 2008 02:45:30 +0000 (02:45 +0000)]
HAMMER 59E/Many: Stabilization pass
* Sprinkle around calls to hammer_flusher_clean_loose_ios() to clean up
hammer buffers with no buffer cache buffer associations, so they can't
build up and blow out kernel memory.
* Fix a bug when deleting large files where not all records were being
properly moved to the new flush group.
* Fix a bug when truncating large files where a trunction followed by
write()s followed by another truncation would incorrectly reorder the
writes() in the middle to occur after the second truncation.
Matthew Dillon [Mon, 30 Jun 2008 02:11:53 +0000 (02:11 +0000)]
Fix a buf_daemon performance issue when running on machines with small
amounts of ram. The daemon was hitting a 1/2 sleep case that it should
not have been hitting.
Matthew Dillon [Mon, 30 Jun 2008 00:03:55 +0000 (00:03 +0000)]
HAMMER 59D/Many: Stabilization pass
* Fix a panic that occurs when the crash recovery undo space is larger
then conveniently fits in the buffer cache.
* Fix a bug in the truncation code (detected by fsx). The bug was related
to moving an inode from one flush group to another (which itself was done
to fix a bug related to blowing out the buffer cache).
Simon Schubert [Sun, 29 Jun 2008 22:22:17 +0000 (22:22 +0000)]
Clarify comment.
Matthew Dillon [Sun, 29 Jun 2008 21:38:21 +0000 (21:38 +0000)]
Fix a NULL pointer dereference when a DDB 'ps' attempts to
list a process which has no LWPs associated with it.
Sascha Wildner [Sun, 29 Jun 2008 20:45:44 +0000 (20:45 +0000)]
Fix typo in sln(4) PCI ID.
Sascha Wildner [Sun, 29 Jun 2008 20:43:49 +0000 (20:43 +0000)]
Regenerate
Sascha Wildner [Sun, 29 Jun 2008 20:33:57 +0000 (20:33 +0000)]
Fix typo in sln(4) PCI ID.
Matthew Dillon [Sun, 29 Jun 2008 19:15:34 +0000 (19:15 +0000)]
Fix an issue where CAM would attempt to illegally get a lockmgr() lock
from an interrupt via xpt_done(). Use a spin lock instead.
Fix an issue where camisr_runqueue() was not protecting sim->sim_doneq
which could then race against an interrupt via xpt_done() and corrupt
the list.
Matthew Dillon [Sun, 29 Jun 2008 19:04:02 +0000 (19:04 +0000)]
Adjust comments.
Reported-by: Jordan Gordeev <jgordeev@dir.bg>
Simon Schubert [Sun, 29 Jun 2008 10:34:04 +0000 (10:34 +0000)]
Clean up stale comment and unused umount.
Noticed-by: swildner@
Simon Schubert [Sun, 29 Jun 2008 10:23:23 +0000 (10:23 +0000)]
Don't run binaries in the new built root, but use host binaries instead.
This allows us to do cross-builds (older host kernel) again, which was
broken for some time now.
The mkfontdir command was not changed yet, but this is no regression.
Matthew Dillon [Sun, 29 Jun 2008 07:50:40 +0000 (07:50 +0000)]
HAMMER 59E/Many: Stabilization pass - fixes for large file issues
* Correct a bug related to inodes moving between flush groups (when
truncating a large file). Some records were not being moved and
cause an assertion later on.
* Fix a leak of B_LOCKED buffers which could occur under heavy loads.
Eventually enough build up to deadlock the buffer cache.
Matthew Dillon [Sat, 28 Jun 2008 23:50:37 +0000 (23:50 +0000)]
HAMMER 59D/Many: Sync with buffer cache changes in HEAD.
* Adjust hammer to limit dirty meta-data buffers based on total bytes
rather then total buffers.
* Limit to 1/4 the buffer cache limit (for now)... a better solution
is needed.
Matthew Dillon [Sat, 28 Jun 2008 23:45:20 +0000 (23:45 +0000)]
Fix hopefully all possible deadlocks that can occur when mixed block sizes
are used with the buffer cache. The fix is simply to base the limiting
and flushing code on a byte count rather then a buffer count.
This will allow UFS to utilizes a greater number of dirty buffers and
will cause HAMMER to use fewer. This also makes tuning the buffer cache
a whole lot easier.
Matthew Dillon [Sat, 28 Jun 2008 18:10:55 +0000 (18:10 +0000)]
HAMMER 59C/Many: Stabilization pass - fixes for large file issues
* Rename hammer_delete_range_all() to hammer_delete_clean(). This function
is no longer responsible for deleting data and db records when a file
is removed. The normal hammer_delete_range() function now does that for
all cases.
* Adjust hammer_delete_range() to not restart at offset 0 when it hits a
deadlock or must defer the remainder of the operation to another flush
cycle. When removing very large files (greater then 500GB) the constant
restarts resulted in exponential delays.
Instead the function restarts near where it had left off the previous try.
* Change ip->sync_trunc_off's dynamics so it can be used to cache the
restart offset. The truncation state can now be left intact on the
backend and the frontend will merge new truncations into it instead
of replacing the truncation.
Add a new field, ip->save_trunc_off to handle the append overwrite
check optimization (sync_trunc_off used to be used for that, no longer).
* Fix minor bugs, and use the new bwillwrite() API.
* Remove the #if 0'd out cluster_write() code entirely (it never worked
anyway). The new buffer cache subsystem in the kernel allows bdwrite()
to be used with no real penalty.
Matthew Dillon [Sat, 28 Jun 2008 17:59:51 +0000 (17:59 +0000)]
Replace the bwillwrite() subsystem to make it more fair to processes.
* Add new API functions, bwillread(), bwillwrite(), bwillinode() which
the kernel calls when it intends to read, write, or make inode
modifications.
* Redo the backend. Add bd_heatup() and bd_wait(). bd_heatup() heats up
the buf_daemon, starting it flushing before we hit any blocking conditions
(similar to the previous algorith).
* The new bwill*() blocking functions no longer introduce escalating delays
to keep the number of dirty buffers under control. Instead it takes a page
from HAMMER and estimates the load caused by the caller, then waits for a
specific number of dirty buffers to complete their write I/O's before
returning. If the buffers can be retired quickly these functions will
return more quickly.
Sascha Wildner [Sat, 28 Jun 2008 14:51:50 +0000 (14:51 +0000)]
Remove extra '.'
Sascha Wildner [Sat, 28 Jun 2008 14:48:50 +0000 (14:48 +0000)]
* Use literal displays instead of .Li
* Comment out empty section
* Sync SYNOPSIS
* Use .Pa for paths, .Xr for manual page references and .Ex for exit status
Sascha Wildner [Sat, 28 Jun 2008 14:23:59 +0000 (14:23 +0000)]
* Remove empty lines and trailing whitespace.
* Bump date for r1.26.
Sascha Wildner [Sat, 28 Jun 2008 14:18:00 +0000 (14:18 +0000)]
style(9)
Matthew Dillon [Sat, 28 Jun 2008 01:41:32 +0000 (01:41 +0000)]
Bump the sortq_lost check from 8 to 128, letting the disk optimally read or
write a larger swath before forcing through long-delayed requests.
Matthew Dillon [Sat, 28 Jun 2008 01:06:40 +0000 (01:06 +0000)]
Fix a system performance issue created by ata_sort_queue(). This function
implements an elevator sort but it also allows requests to be delayed
indefinitely when other requests continually get inserted in front of them.
HAMMER's almost log-linear writing really exposes this issue.
The fix is to count how many times a request got delayed due to an insertion.
If the count exceeds 8, the new request is placed at the end of the queue and
set as the new freeze point.
Matthew Dillon [Fri, 27 Jun 2008 20:56:59 +0000 (20:56 +0000)]
HAMMER 59B/Many: Stabilization pass - fixes for large file issues
* The flusher was trying to flush whole inodes in one pass. If a large
(in the 100GB range) file is deleted or truncated this single pass could
blow out the UNDO FIFO and cause a panic.
Detect the case and only do a partial flush, then requeue the inode to
the next flush group and reflush. This continues until the file is
completely eradicated or the truncation has completed.
* In addition, the same flusher issue could exhaust the kernel's buffer
cache with unflushable dirty buffers. The same fix applies.
* The UNDO FIFO code was calculating available space based on the next
flush's start position instead of the last flush's start position,
allowing areas of the UNDO FIFO still subject to a recovery pass
(if a crash were to occur right then) to be overwritten too soon.
* The pruner and reblocker were doing insufficient UNDO FIFO space checks
and could blow out the UNDO FIFO. Fixed.
Sepherosa Ziehau [Fri, 27 Jun 2008 17:03:40 +0000 (17:03 +0000)]
Rework stop path.
Obtained-from: forcedeth
Sepherosa Ziehau [Fri, 27 Jun 2008 16:30:53 +0000 (16:30 +0000)]
- Rename NFE_RXTX_V[32]MAGIC to NFE_RXTX_DESC_V[32].
- Change NFE_RXTX_DESC_V3 from 0x2200 to 0xc02200; it is quite interesting
the thing actually worked.
- Add rxtxctl_desc in softc, which stores the desc type of rxtxctl. Set
it up during attach.
- Add power control fixes on attach and init path.
Obtained-from: forcedeth
Sascha Wildner [Fri, 27 Jun 2008 14:02:14 +0000 (14:02 +0000)]
Fix a typo so that old netgraph builds again.
Sepherosa Ziehau [Fri, 27 Jun 2008 13:47:36 +0000 (13:47 +0000)]
- Disable WOL during attach, don't mess with it during init
- NFE_WOL_MAGIC -> NFE_WOL_ENABLE
Obtained-from: forthdeth
Sepherosa Ziehau [Fri, 27 Jun 2008 13:30:56 +0000 (13:30 +0000)]
Add flag to indicate that the NIC does not have power control capability.
Model numbers from forcedeth.
Sepherosa Ziehau [Fri, 27 Jun 2008 12:49:34 +0000 (12:49 +0000)]
Add nfe(4)
Suggested-by: Chris Turner <c.turner@199technologies.org>
Michael Neumann [Fri, 27 Jun 2008 11:57:49 +0000 (11:57 +0000)]
Add man page entry for "hammer snapshot".
Sepherosa Ziehau [Fri, 27 Jun 2008 10:55:23 +0000 (10:55 +0000)]
fxp_stop needs to be serialized
Simon Schubert [Fri, 27 Jun 2008 08:09:12 +0000 (08:09 +0000)]
Drop out of place readline function declarations.
Simon Schubert [Fri, 27 Jun 2008 08:08:25 +0000 (08:08 +0000)]
Stop building libreadline.
Libreadline has not been used for a while, only its headers.
Libedit now provides readline headers, so we can drop readline.
Simon Schubert [Fri, 27 Jun 2008 08:06:48 +0000 (08:06 +0000)]
Install libedit's readline headers.
Also install compat headers which are sometimes used.
Matthew Dillon [Fri, 27 Jun 2008 01:24:46 +0000 (01:24 +0000)]
Increase the default request timeout from 5 seconds to 10 seconds.
Using advise from Volker Theile of the FreeNAS project via:
http://wiki.freebsd.org/JeremyChadwick/ATA_issues_and_troubleshooting
Matthew Dillon [Fri, 27 Jun 2008 01:15:39 +0000 (01:15 +0000)]
dummy_thr does not have to be committed and pthread_t might not even
be a pointer on some systems.
Matthew Dillon [Fri, 27 Jun 2008 00:03:56 +0000 (00:03 +0000)]
Apply patch supplied in FreeBSD-PR to ata-raid code:
"A drive that was once part of an ataraid device, when added back to the
machine that it was on, shows up as a new ataraid device. This new ataraid
device tries to use all the drives that were originally in the RAID.
Results can range from a confusion to a real mess."
Obtained-from: http://www.freebsd.org/cgi/query-pr.cgi?pr=121899&cat=kern
Author: Stef Walter <stef@memberwebs.com>
Matthew Dillon [Thu, 26 Jun 2008 23:24:11 +0000 (23:24 +0000)]
Add files and options lines for NETGRAPH7
Matthew Dillon [Thu, 26 Jun 2008 23:06:52 +0000 (23:06 +0000)]
Add additional atomic ops from FreeBSD.
Obtained-from: FreeBSD
Matthew Dillon [Thu, 26 Jun 2008 23:05:40 +0000 (23:05 +0000)]
Netgraph port from FreeBSD - initial porting work
* Use relative #include's as appropriate so the code doesn't
dig into the original netgraph/ directory.
* Move FBSDID's and add DragonFly ids.
* Fix improper uses of M_NOWAIT.
* Fix uses of M_NOWAIT which should be MB_DONTWAIT and vise-versa
(also forward to Julian).
* Add a dragonfly.h compatibility header.
* NOTE: m_tag_alloc() in DFly takes MB_ flags.
Michael Neumann [Thu, 26 Jun 2008 20:43:45 +0000 (20:43 +0000)]
Fallback using a default snapshot name if just a directory is supplied
(e.g. hammer snapshot /mysnapshots will use /mysnapshots/snap-%Y%m%d-%H%M).
Matthew Dillon [Thu, 26 Jun 2008 19:34:33 +0000 (19:34 +0000)]
Merge from vendor branch NETGRAPH:
Vendor import of netgraph from FreeBSD-current
20080626
Matthew Dillon [Thu, 26 Jun 2008 19:34:33 +0000 (19:34 +0000)]
Vendor import of netgraph from FreeBSD-current
20080626
Matthew Dillon [Thu, 26 Jun 2008 18:54:50 +0000 (18:54 +0000)]
Add KTR_HAMMER
Matthew Dillon [Thu, 26 Jun 2008 18:53:14 +0000 (18:53 +0000)]
Make sure UFS disallows mknod()'s with type VDIR.
Michael Neumann [Thu, 26 Jun 2008 16:13:43 +0000 (16:13 +0000)]
We only need to determine the softlink_dir when no filesystem is
explicitly specified.
Michael Neumann [Thu, 26 Jun 2008 15:56:44 +0000 (15:56 +0000)]
Use strftime to produce the snapshot name, for example:
hammer snapshot "/mysnapshots/snap-%Y-%m-%dT%H:%M:%S"
Usage is now:
hammer snapshot <softlink-dir-fmt>
hammer snapshot <filesystem> <softlink-dir-fmt>
Michael Neumann [Thu, 26 Jun 2008 15:12:21 +0000 (15:12 +0000)]
Adapt usage string from cmd_prune.c.
Matthew Dillon [Thu, 26 Jun 2008 15:03:47 +0000 (15:03 +0000)]
HAMMER Utilities: Add "slave" option to hammer_mount.
* Add the "slave" mount option for hammer mounts. This option will allow
a mounted hammer filesystem to be a mirroring and pruning target but
disallow user-level modifications.
Sepherosa Ziehau [Thu, 26 Jun 2008 13:08:55 +0000 (13:08 +0000)]
Make msk(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
Sepherosa Ziehau [Thu, 26 Jun 2008 12:05:19 +0000 (12:05 +0000)]
Make bfe(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
Matthew Dillon [Thu, 26 Jun 2008 04:07:57 +0000 (04:07 +0000)]
HAMMER Utilities: Sync with 59A
* Add mirror-read, mirror-write, and status directives.
Matthew Dillon [Thu, 26 Jun 2008 04:06:23 +0000 (04:06 +0000)]
HAMMER 59A/Many: Mirroring related work (and one bug fix).
* BUG FIX: Fix a bug in directory hashkey generation. The iterator could
sometimes conflict with a key already on-disk and interfere with a pending
deletion. The chance of this occuring was miniscule but not 0. Now fixed.
The fix also revamps the directory iterator code, moving it all to one
place and removing it from two other places.
* PRUNING CHANGE: The pruning code no longer shifts the create_tid and
delete_tid of adjacent records to fill gaps. This means that historical
queries must either use snapshot softlinks or use a fine-grained
transaction id greater then the most recent snapshot softlink.
fine-grained historical access still works up to the first snapshot
softlink.
* Clean up the cursor code responsible for acquiring the parent node.
* Add the core mirror ioctl read/write infrastructure. This work is still
in progress.
- ioctl commands
- pseudofs enhancements, including st_dev munging.
- mount options
- transaction id and object id conflictless allocation
- initial mirror_tid recursion up the B-Tree (not finished)
- B-Tree mirror scan optimizations to skip sub-hierarchies that do not
need to be scanned (requires mirror_tid recursion to be 100% working).
Sascha Wildner [Wed, 25 Jun 2008 17:51:16 +0000 (17:51 +0000)]
Remove trailing space.
Sepherosa Ziehau [Wed, 25 Jun 2008 16:25:58 +0000 (16:25 +0000)]
Missing TX_UNK -> TX_POLL conversion
Sepherosa Ziehau [Wed, 25 Jun 2008 16:02:35 +0000 (16:02 +0000)]
TX_UNK -> TX_POLL
According-to: Linux forcedeth
Sepherosa Ziehau [Wed, 25 Jun 2008 15:50:27 +0000 (15:50 +0000)]
Add MCP73, MCP77 and MCP79 support.
Obtained-from: Linux forcedeth
Sepherosa Ziehau [Wed, 25 Jun 2008 15:33:04 +0000 (15:33 +0000)]
regen
Sepherosa Ziehau [Wed, 25 Jun 2008 15:28:59 +0000 (15:28 +0000)]
Add PCI ids for nVidia MCP77 MCP73 and MCP79 NICs
Sepherosa Ziehau [Wed, 25 Jun 2008 14:39:35 +0000 (14:39 +0000)]
MCP65 has no hardware csum offloading support.
Obtained-from: OpenBSD
Sepherosa Ziehau [Wed, 25 Jun 2008 13:36:52 +0000 (13:36 +0000)]
Make bce(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
Michael Neumann [Wed, 25 Jun 2008 13:25:06 +0000 (13:25 +0000)]
Remove an else branch to flatten indentation. Also free up memory allocate
by asprintf.
Michael Neumann [Wed, 25 Jun 2008 13:10:06 +0000 (13:10 +0000)]
Implement: hammer snapshot <softlink-dir> [<filesystem>]
Sepherosa Ziehau [Wed, 25 Jun 2008 13:00:09 +0000 (13:00 +0000)]
Make bge(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
Sepherosa Ziehau [Wed, 25 Jun 2008 11:56:13 +0000 (11:56 +0000)]
Make fxp(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
Sepherosa Ziehau [Wed, 25 Jun 2008 11:46:03 +0000 (11:46 +0000)]
Make xl(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
Sepherosa Ziehau [Wed, 25 Jun 2008 11:45:07 +0000 (11:45 +0000)]
On UP system, make sure that mbuf chain is not empty before accessing it.
Sepherosa Ziehau [Wed, 25 Jun 2008 11:02:33 +0000 (11:02 +0000)]
Make re(4) aware ETHER_INPUT_CHAIN and ETHER_INPUT2
YONETANI Tomokazu [Tue, 24 Jun 2008 21:55:48 +0000 (21:55 +0000)]
One more place where an inode is still printed as a 32 bit quantity.
Thomas Nikolajsen [Tue, 24 Jun 2008 21:13:26 +0000 (21:13 +0000)]
Describe flags more verbose.
Thomas Nikolajsen [Tue, 24 Jun 2008 20:22:30 +0000 (20:22 +0000)]
ports is gone: remove use of PORTSSUPFILE.
Matthew Dillon [Tue, 24 Jun 2008 17:40:24 +0000 (17:40 +0000)]
HAMMER Utilities: Sync to 58B
* Update all utilities to deal with the cleaned up ioctl structures and
to augment history and undo output with the non-monotonic timestamps.
Matthew Dillon [Tue, 24 Jun 2008 17:38:17 +0000 (17:38 +0000)]
HAMMER 58B/Many: Revamp ioctls, add non-monotonic timestamps, mirroring
* Revamp most of HAMMER's ioctl structures with an eye towards future
enhancements.
* Adjust on-media structures to include a non-monotonic creation and
deletion timestamps. Since the transaction id no longer translates
to a timestamp adding explicit timestamps allows the 'hammer history'
and 'undo' utilities to still display timestamps for the change history.
* Start working on the mirroring support ioctls.
Sepherosa Ziehau [Tue, 24 Jun 2008 13:55:17 +0000 (13:55 +0000)]
Make nfe(4) aware ETHET_INPUT_CHAIN and ETHER_INPUT2
Sepherosa Ziehau [Tue, 24 Jun 2008 13:32:27 +0000 (13:32 +0000)]
Move mbuf chain initialization into common place.
Sepherosa Ziehau [Tue, 24 Jun 2008 11:40:56 +0000 (11:40 +0000)]
Add vlan(4) support for ETHER_INPUT2. It is not built by default.
Sepherosa Ziehau [Tue, 24 Jun 2008 11:17:16 +0000 (11:17 +0000)]
VLAN_MTU works as expected on em(4)
Sascha Wildner [Tue, 24 Jun 2008 07:58:00 +0000 (07:58 +0000)]
Fix typo.
Thomas Nikolajsen [Tue, 24 Jun 2008 03:24:52 +0000 (03:24 +0000)]
Add nohistory flag.
Matthew Dillon [Tue, 24 Jun 2008 02:42:48 +0000 (02:42 +0000)]
HAMMER Utilities: Remove time/transaction-id conversion directives.
* Remove time/tid conversion directives that no longer apply.
* Clean up usage().
Matthew Dillon [Mon, 23 Jun 2008 21:42:48 +0000 (21:42 +0000)]
HAMMER 58A/Many: Mirroring support part 1
* Implement mastership domains for transaction ids to support multi-master
mirroring and implement mastership selection at mount time.
Mastership domains work by having the low 4 bits of the transaction id
specify the mastership id (0-15). This allows the mirroring code to
distinguish between changes originating on a particular node and changes
mirrored from another node.
This also ensures that filesystem objects can be created on the mirrors
in parallel without resulting in conflicitng object ids.
* Eliminate time-based TID generation. Just increment the TID as
appropriate.
NOTE: Portions of this change may be reverted at a later time depending
on how the mirroring implementation proceeds.
* Minor code cleanups.
Matthew Dillon [Mon, 23 Jun 2008 21:31:58 +0000 (21:31 +0000)]
HAMMER Utilities: Sync with 58A
* Add the master=<number> mount option, a unique id (0-15) which uniquely
identifies a master in a multi-master cluster. It will initially be
used to support multi-master mirroring.
* Rename the hammer softprune command to prune and remove the original
prune.
* Transaction ids are no longer based on the time at all. They used to
be loosely based on the time but could get knocked off by bad system
time. Now they aren't at all.
Matthew Dillon [Mon, 23 Jun 2008 17:21:58 +0000 (17:21 +0000)]
Support S_IFDIR mknod() calls for HAMMER. This is used by the Hammer
utility program to create pseudo-filesystem directories inside HAMMER.
Sepherosa Ziehau [Mon, 23 Jun 2008 14:40:12 +0000 (14:40 +0000)]
Expose ether_input_oncpu()
Sepherosa Ziehau [Mon, 23 Jun 2008 14:29:56 +0000 (14:29 +0000)]
White space
Sepherosa Ziehau [Mon, 23 Jun 2008 14:24:48 +0000 (14:24 +0000)]
Discard packets which was lingering on msgport when receiving interface
was brought down or entered monitor mode.
Sepherosa Ziehau [Mon, 23 Jun 2008 11:57:19 +0000 (11:57 +0000)]
Add ether_input_chain2() which could be called by ethernet NIC drivers to
deliver packets into upper layer. Unlike ether_input_chain(), this function
only locates the msgport for the input packets, rest of the functionalities
of ether_input_chain() are performed in the protocal threads, i.e. after
packets reaches target msgports. This function and other related functions
are put under kernel option ETHER_INPUT2, which is _not_ enabled by default.
As of this commit, vlan(4) and ipflow don't work with ether_input_chain2().
em(4) is adapted to aware ETHER_INPUT2.
Reviewed-by: dillon@, aggelos@ (early version)
# Additional comments are added to the the reviewed patch.
Matthew Dillon [Mon, 23 Jun 2008 07:37:54 +0000 (07:37 +0000)]
HAMMER Utilities: Add the 'pseudofs' directive for commit 57
* The pseudofs directive may be used to create pseudo-filesystems within
a HAMMER filesystem. Each such filesystem maintains its own inode
numbering space and can be used as a replication target. Up to 65535
pseudo-filesystems are supported.
Matthew Dillon [Mon, 23 Jun 2008 07:31:14 +0000 (07:31 +0000)]
HAMMER 57/Many: Pseudofs support
* Finish up implementation of the localization field which is used to
split the B-Tree up into domains. Use the upper 16 bits as a
pseudo filesytem selector.
* Code hammer_vop_mknod() to be able to create pseudo-filesystems.
Sascha Wildner [Mon, 23 Jun 2008 06:56:25 +0000 (06:56 +0000)]
s/Fx/Dx/
Sascha Wildner [Mon, 23 Jun 2008 06:22:15 +0000 (06:22 +0000)]
Use standard section name: ACKNOWLEDGEMENTS -> AUTHORS
Sascha Wildner [Sun, 22 Jun 2008 21:26:09 +0000 (21:26 +0000)]
Fix typo: Phenix -> Phoenix
Sascha Wildner [Sun, 22 Jun 2008 20:57:39 +0000 (20:57 +0000)]
Add an isa(4) manual page.
Derived-from: OpenBSD
Sascha Wildner [Sun, 22 Jun 2008 20:39:40 +0000 (20:39 +0000)]
Update cvs id.