Matthew Dillon [Sat, 9 Jun 2007 03:09:38 +0000 (03:09 +0000)]
Create an upgrade target for MAKEDEV. This target will attempt to
update existing mass storage character devices in /dev, but generally
is meant to do any adjustments required when upgrading from an earlier
version of DragonFly to a later version.
Adjust 'make upgrade' to use 'MAKEDEV upgrade' instead of 'MAKEDEV all'.
Sascha Wildner [Fri, 8 Jun 2007 18:46:32 +0000 (18:46 +0000)]
* Perform some minor cleanup in the manual page and bump the date for
the new option.
* Add -l to usage().
Jeremy C. Reed [Fri, 8 Jun 2007 18:45:46 +0000 (18:45 +0000)]
Comment out line about UDF specific mount options -- none were listed
and none available.
Also add line about being readonly (as seen in source).
This is for my bug Issue688.
Matthew Dillon [Fri, 8 Jun 2007 18:33:15 +0000 (18:33 +0000)]
Change the -a option to be a bit friendlier. Have it print sorted,
human-readable output with relative time stamps. All print options will
be used except -f (file & line).
Matthew Dillon [Fri, 8 Jun 2007 18:24:22 +0000 (18:24 +0000)]
Add a new option to ktrdump (-l) which causes it to loop awaiting new data
and then display it as it comes in. Cleanup ktrdump considerably. By
Aggelos Economopoulos.
Additional work by Matt: Clean it up even more, document the code, and make
the new looping feature work with -s.
Submitted-by: Aggelos Economopoulos <aoiko@cc.ece.ntua.gr>
With-additional-work-by: dillon
Sepherosa Ziehau [Fri, 8 Jun 2007 13:52:09 +0000 (13:52 +0000)]
If PCI_MAP_FIXUP is defined, following fixes will be applied:
- For PCI/PCI bridge, adjust requested IO port/memory's start/range according
to bridge's base/limit register value.
- For Host/PCI bridge, if requested IO port/memory's starts from 0 and range
is ~0,
o If the request is for IO port, the start address is set to 0x1000.
o If the request is for IO memory, the start address is set to tunable
hw.pci.host_mem_start, which is 0x80000000 by default.
This unbreaks cardbus bridge support, if PCI_MAP_FIXUP is defined.
My laptop's cardbus bridge is on the PCI bus mastered by a PCI/PCI bridge,
while swildner@'s laptop's cardbus bridge is on the PCI bus mastered by
Host/PCI bridge.
Tested-by: swildner@ and me
Obtained-from: FreeBSD (imp@freebsd.org)
#
# It seems BIOS does not set cardbus bridge's BAR for most of the system,
# so in the original code, the resource_list_alloc() in pci_alloc_resource()
# will return NULL for cardbus bridge's IO memory allocation request; cardbus
# bridge's code actually depends on that to reallocate IO memory using
# hw.cbb.start_memory as start address.
#
# Before this commit, if PCI_MAP_FIXUP is defined, cardbus bridge's invalid
# IO memory request will be delivered to various PCI bridge code, which does
# not validate/fixup the request and returns "successful" result bindly.
#
Sascha Wildner [Fri, 8 Jun 2007 07:39:20 +0000 (07:39 +0000)]
Document that bge(4) supports polling now.
Matthew Dillon [Fri, 8 Jun 2007 02:02:27 +0000 (02:02 +0000)]
Increase the tsleep/wakeup hash table size and augment the KTR logging a bit.
Matthew Dillon [Fri, 8 Jun 2007 02:00:47 +0000 (02:00 +0000)]
Formalize the object sleep/wakeup code when waiting on a dead VM object and
remove spurious calls to wakeup().
Matthew Dillon [Fri, 8 Jun 2007 00:57:04 +0000 (00:57 +0000)]
Remove the last source of SMP TLB invalidations in the critical code path
for fork/exec/exit/wait sequences. The pmap page directory is now left
cached in kernel memory until the pmap is destroyed via the objcache
dtor function for VM spaces (vmspace_dtor() -> pmap_puninit()).
This improves fork/exec performance and significantly reduces the IPI
messaging load and other cross-cpu interactions.
Matthew Dillon [Thu, 7 Jun 2007 23:45:52 +0000 (23:45 +0000)]
Remove unused variables after last commit.
Matthew Dillon [Thu, 7 Jun 2007 23:45:02 +0000 (23:45 +0000)]
Get rid of some broken _KERNEL_VIRTUAL hacks.
Matthew Dillon [Thu, 7 Jun 2007 23:14:29 +0000 (23:14 +0000)]
Entirely remove exec_map from the kernel. Use the new vm_fault_object_page()
for the data/bss special case in the elf loader, and use the objcache to
cache arguments for exec.
This in turn removes nearly all of the SMP page invalidation IPIs that
occur during fork/exec/exit/wait sequences by virtue of not needing to
map and unmap so much KVM.
Matthew Dillon [Thu, 7 Jun 2007 23:00:39 +0000 (23:00 +0000)]
Implement vm_fault_object_page(). This function returns a held VM page
for the specified offset in the specified object and does all I/O necessary
to validate the page (as if it had been faulted in).
This function allows us to bypass the vm_map*() code when all we want is
the VM page.
Simon Schubert [Thu, 7 Jun 2007 22:58:38 +0000 (22:58 +0000)]
Get rid of disklabel faking/processing.
Simon Schubert [Thu, 7 Jun 2007 22:58:22 +0000 (22:58 +0000)]
Try hard to restore the termios state on exit/reboot.
tcsetattr() can be interrupted by spurious SIGIO from the kqueue, so
try setting the state until it succeeds. Add an EVENTHANDLER so that
the tty state will be restored for a possible kernel reboot.
Simon Schubert [Thu, 7 Jun 2007 22:58:11 +0000 (22:58 +0000)]
Fix module loading for vkernel.
Some symbols in the vkernel are actually provided by libs the
kernel binary is linked to, which can not be resolved by the
internal kernel linker. Fall back on using dlsym() if no
symbol could be found by the kernel linker. This actually means
that the kernel needs to be linked dynamically.
Simon Schubert [Thu, 7 Jun 2007 22:58:00 +0000 (22:58 +0000)]
Don't loose count when adding too many plexes to a volume.
Simon Schubert [Thu, 7 Jun 2007 22:57:49 +0000 (22:57 +0000)]
Use MAXPARTITIONS instead of hardcoded value.
Matthew Dillon [Thu, 7 Jun 2007 20:35:54 +0000 (20:35 +0000)]
Add KTR logging for SMP page table syncing ops.
Matthew Dillon [Thu, 7 Jun 2007 20:34:14 +0000 (20:34 +0000)]
Use the slab cache for PAGE_SIZE and PAGE_SIZE*2 sized allocations. This
reduces the number of SMP page invals the ELF loader and mmio have to do
for operations that occur on a single cpu.
Matthew Dillon [Thu, 7 Jun 2007 20:30:20 +0000 (20:30 +0000)]
Add polling support to BGE.
Matthew Dillon [Thu, 7 Jun 2007 18:03:15 +0000 (18:03 +0000)]
When compiling a kernel with all ktr logging (KTR_ALL), do not auto-enable
the KTRs on boot because logging everything is counter productive. Instead,
let userland enable particular KTRs via sysctl.
Matthew Dillon [Wed, 6 Jun 2007 18:49:28 +0000 (18:49 +0000)]
Add a field to the keyboard abstraction structure that allows the USB
keyboard controller to save and restore the translation state. This
allows you to disconnect and reconnect a USB keyboard and not get
gibberish when you type.
Reported-by: Petr Janda <elekktretterr@exemail.com.au>
Sepherosa Ziehau [Wed, 6 Jun 2007 13:10:39 +0000 (13:10 +0000)]
bridge_enqueue() does not use bridge(4)'s softc, so don't pretend that the
parameter is needed.
Sascha Wildner [Tue, 5 Jun 2007 18:30:40 +0000 (18:30 +0000)]
Update FreeBSD ID tags.
Sepherosa Ziehau [Tue, 5 Jun 2007 13:41:39 +0000 (13:41 +0000)]
Don't let ether_input() to do the bridging work, i.e. change input iface,
since it breaks following things:
o IFF_MONITOR support.
o Assumption that ether_input() is called with input iface's serializer
held.
o Per interface input packets and bytes statistics.
Let the bridge(4) handle the input iface change, which is centralized
at the end of bridge_input() after leaving bridge(4) iface's serializer.
We call ifnet.if_input() when handling iface change, instead of skipping
the "upper" half of ifnet.if_input() as we did originally; the assumption
that "upper" half of ifnet.if_input() does nothing according to input iface
does not sounds good. M_PROTO1 mbuf flag is used to prevent infinite loop;
we may need to create a meaningful alias macro for it.
Other changes:
- Delay bridge_lookup_member_if() call until it is really necessary.
- Update ipackets for bridge(4) iface, if mcast/bcast packet is received
and is going to be delivered to bridge(4) iface.
- Use IF_LLADDR() macro to get bridge(4) iface's MAC address.
- Nuke never reached code.
- Minor style changes.
Sascha Wildner [Mon, 4 Jun 2007 21:04:27 +0000 (21:04 +0000)]
Add some words about -v.
Submitted-by: y0netan1
Matthew Dillon [Mon, 4 Jun 2007 17:22:02 +0000 (17:22 +0000)]
Do any crash dump operation before the shutdown_post_sync event handler
is invoked. Move numerous legacy device shutdown event handlers from
shutdown_final to shutdown_post_sync. Note that newer devices uses
the device_shutdown DEVMETHOD.
Sascha Wildner [Mon, 4 Jun 2007 01:47:41 +0000 (01:47 +0000)]
Add the cvsup manpage to the ISO, dammit.
Sascha Wildner [Mon, 4 Jun 2007 01:08:02 +0000 (01:08 +0000)]
Readjust some comments.
Sascha Wildner [Mon, 4 Jun 2007 00:40:32 +0000 (00:40 +0000)]
Replace the remaining NG_*LEN constants with NG_*SIZ constants for real.
Submitted-by: Nuno Antunes <nuno.antunes@gmail.com>
Sascha Wildner [Sun, 3 Jun 2007 23:41:25 +0000 (23:41 +0000)]
Replace the remaining *LEN constants with *SIZ constants.
Reported-by: walt <wa1ter@myrealbox.com>
Submitted-by: Nuno Antunes <nuno.antunes@gmail.com>
Peter Avalos [Sun, 3 Jun 2007 21:29:07 +0000 (21:29 +0000)]
Update for libarchive 2.2.3.
Peter Avalos [Sun, 3 Jun 2007 21:26:40 +0000 (21:26 +0000)]
Merge from vendor branch LIBARCHIVE:
Import libarchive 2.2.3 fixing a few memory leaks and other fixes.
Peter Avalos [Sun, 3 Jun 2007 21:26:40 +0000 (21:26 +0000)]
Import libarchive 2.2.3 fixing a few memory leaks and other fixes.
Matthew Dillon [Sun, 3 Jun 2007 20:51:13 +0000 (20:51 +0000)]
Catch up a bit with FreeBSD netgraph by replacing *LEN constants with
*SIZ constants which already account space for trailing '\0's.
Submitted-by: "Nuno Antunes" <nuno.antunes@gmail.com>
Obtained from: FreeBSD (sorta).
Peter Avalos [Sun, 3 Jun 2007 17:22:57 +0000 (17:22 +0000)]
GC old sendmail version.
Simon Schubert [Sun, 3 Jun 2007 13:02:24 +0000 (13:02 +0000)]
Correct conditional to correctly treat segments which end on a boundary.
Matthew Dillon [Sun, 3 Jun 2007 11:52:45 +0000 (11:52 +0000)]
Go to bed before the sun comes up.
Matthew Dillon [Sun, 3 Jun 2007 11:52:09 +0000 (11:52 +0000)]
Part 1/2: Add a sanity check to the NATA interrupt code to assert that
the command has actually been issued.
Matthew Dillon [Sun, 3 Jun 2007 11:49:54 +0000 (11:49 +0000)]
Set the IDE DMA start bit as a separate I/O write from the DMA port
direction setting. It's just a whole lot safer not to mix the two in
a single write.
YONETANI Tomokazu [Sun, 3 Jun 2007 11:49:30 +0000 (11:49 +0000)]
vmstat -iv: include IRQ number before the interrupt name, unless
it begins with "irq", in which case the name contains the number.
Matthew Dillon [Sun, 3 Jun 2007 11:47:10 +0000 (11:47 +0000)]
Implement boundary and maximum segment size handling in bus_dmamap_load().
This fixes NATA's UDMA device support. The UDMA dma controller is limited
to a transfer size of 65536 bytes and address incrementation might not
carry over to bit 16.
Sepherosa Ziehau [Sun, 3 Jun 2007 11:25:58 +0000 (11:25 +0000)]
bridge_{input,output_serialized}() only need to be static; they are actually
declared as static functions.
Matthew Dillon [Sun, 3 Jun 2007 04:48:29 +0000 (04:48 +0000)]
M_NOWAIT can only be used in a driver where a failed memory allocation is
recoverable, such as in a network driver. FreeBSD seems to have a looser
definition but in DragonFly M_NOWAIT really means M_NOWAIT ... any blocking
at all, including waiting on the BGL or getting the kernel_map lock,
will result in a failure NULL.
Change all M_NOWAIT's to either M_WAITOK or M_INTWAIT.
Matthew Dillon [Sun, 3 Jun 2007 04:27:56 +0000 (04:27 +0000)]
Add a timings line for UDMA6 in two places. The drivers in question may or
may not support it, but the array still needs to be large enough for all
possible elements.
Revamp the programming of register 0x48, 0x54, and 0x40 for the Intel
chipset support, and document the hell out of the whole thing.
Register 0x54 covers both primary and secondary controllers and master and
slave devices and was being fully programmed for each sub-device, causing
some sub devices to become misprogrammed. Change it so only the elements
related to the sub-device are programmed. It is unclear how much of a
difference this makes for the parts in question but at least it's documented
now.
Fix logic that was causing UDMA66 devices on intel controllers to operate
at UDMA33 speeds (does anyone even have UDMA66 devices any more?).
Add support for the SB600 - from "Thomas E. Spanjaard"
Peter Avalos [Sun, 3 Jun 2007 04:24:35 +0000 (04:24 +0000)]
GC old less version.
Peter Avalos [Sun, 3 Jun 2007 04:23:45 +0000 (04:23 +0000)]
Upgrade to less version 403.
These are the differences between version 394 and version 403:
-Allow decimal point in number for % (percent) command.
-Allow decimal point in number for -j option (fraction of screen height).
-Make n command fetch previous pattern from history file on first search.
-Don't rewrite history file if it has not changed.
-Don't move to bottom of screen on first page.
-Don't output extraneous newlines, so copy & pasting lines from the output
works better.
-The -c option has been made identical with the -C option.
-Allow "/dev/null" as synomym for "-" in LESSHISTFILE to indicate that no
history file should be used.
-Better compatibility with POSIX more specification.
-Make -f work for directories.
-Make "t" cmd traverse tags in the correct order.
-Allow a few binary characters in the input file before warning that the
file is binary.
-Don't warn that file is binary if it merely contains ANSI color sequences
and -R is in effect.
-Update Unicode character tables.
-Fix bug when filename contains certain shell metacharacters such as "$".
-Fix bug when resizing the window while waiting for input from a pipe.
Peter Avalos [Sun, 3 Jun 2007 04:20:21 +0000 (04:20 +0000)]
Add our READMEs.
Peter Avalos [Sun, 3 Jun 2007 04:18:02 +0000 (04:18 +0000)]
Merge from vendor branch LESS:
Import of less-403.
Peter Avalos [Sun, 3 Jun 2007 04:18:02 +0000 (04:18 +0000)]
Import of less-403.
Peter Avalos [Sun, 3 Jun 2007 03:59:53 +0000 (03:59 +0000)]
Use exec and fix handling of filenames containing whitespace.
Obtained-from: FreeBSD
Matthew Dillon [Sun, 3 Jun 2007 03:44:17 +0000 (03:44 +0000)]
Update MAKEDEV for acd* and cd* devices, the kernel now manages the
disk layer for these devices. Users have to regenerate their acd and cd
devices.
Create e.g. /dev/cd0 and /dev/acd0 as special raw access devices and
create e.g. /dev/cd0s0 and /dev/acd0s0 for label access. This fixes
burncd on acd0 by allowing it to bypass the disk management layer entirely,
including bypassing the disk size checks in dscheck().
Implement the disk layer for NATA CD devices so it matches the ATA driver.
Tell CAM to create a compatibility 'a' slice for CDs (it wasn't before).
Sascha Wildner [Sat, 2 Jun 2007 23:53:26 +0000 (23:53 +0000)]
Nuke some obsolete named(8) related variables which were removed from the
system when we upgraded to BIND9 in 2004.
Matthew Dillon [Sat, 2 Jun 2007 19:17:01 +0000 (19:17 +0000)]
Synchronize to FreeBSD 1.35 - just adds a #define for ATA_SMART_CMD.
Matthew Dillon [Sat, 2 Jun 2007 18:48:40 +0000 (18:48 +0000)]
Bring in 1.343 from FreeBSD. FreeBSD commit message:
"Add support for chipsets that has NULL'd BAR's for legacy ports.
This allows DMA to be used on a fine little geode system I got here and
most like on lots of older systems like that."
Obtained-from: FreeBSD / sos
Sepherosa Ziehau [Sat, 2 Jun 2007 12:51:48 +0000 (12:51 +0000)]
- Nuke the second parameter of bridge_stop(). This kind of stop interface
is never adopted by DragonFly.
- In bridge_ioctl():
o Use suser_ucred() instead of suser(), since ucred is passed to us.
o Correct comment and nuke unapplicable comment.
- In bridge_start():
o Move stack variables near their usage.
o Make sure that ether_header is contiguous in mbuf before accessing it.
- Add serializer assertion at the beginning of all ifnet functions.
- Minor style changes.
Sascha Wildner [Sat, 2 Jun 2007 10:59:37 +0000 (10:59 +0000)]
Document pf(4) related variables.
Sascha Wildner [Sat, 2 Jun 2007 10:26:47 +0000 (10:26 +0000)]
Oops, add variable types.
Sascha Wildner [Sat, 2 Jun 2007 10:07:03 +0000 (10:07 +0000)]
Document some variables which were added with Andreas Hauser's rc.firewall
rewrite of 2004.
Sascha Wildner [Sat, 2 Jun 2007 09:16:49 +0000 (09:16 +0000)]
Fix loopback setup for firewall_type="closed".
Sepherosa Ziehau [Sat, 2 Jun 2007 09:08:26 +0000 (09:08 +0000)]
- Break long lines.
- Use __func__ instead of hardwired function name.
- kprintf("%s: ...", ifp->if_xname) ===> if_printf(ifp, "...")
- White space.
Sepherosa Ziehau [Sat, 2 Jun 2007 08:31:00 +0000 (08:31 +0000)]
kmalloc(M_WAITOK) will never return NULL.
Sepherosa Ziehau [Sat, 2 Jun 2007 05:33:09 +0000 (05:33 +0000)]
bstp_input() can't return non-NULL mbuf, explicitly assert that.
Sepherosa Ziehau [Sat, 2 Jun 2007 05:09:18 +0000 (05:09 +0000)]
- Avoid mbuf "use after free", if bridge(4) is in monitor mode.
- Minor style changes.
Sascha Wildner [Fri, 1 Jun 2007 22:48:16 +0000 (22:48 +0000)]
Make 'device natausb' compile again.
Sascha Wildner [Fri, 1 Jun 2007 19:15:58 +0000 (19:15 +0000)]
Regen.
Hart: 2007-05-16 (version 640)
Boemler: 2007-06-01
Matthew Dillon [Fri, 1 Jun 2007 00:31:15 +0000 (00:31 +0000)]
Merge all the FreeBSD work done since our initial import of NATA, except
for the disk flushing code. The disk flushing code still needs to be done.
The work includes a ton of SATA chipset work, bug fixes, cleanups, and new
chip support.
Obtained-from: FreeBSD / =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@deepcore.dk>
Matthew Dillon [Fri, 1 Jun 2007 00:25:23 +0000 (00:25 +0000)]
Add a missing header file dependancy.
Matthew Dillon [Fri, 1 Jun 2007 00:24:25 +0000 (00:24 +0000)]
Add flsl() for the NATA driver.
Matthew Dillon [Fri, 1 Jun 2007 00:23:28 +0000 (00:23 +0000)]
Add flsl() for the NATA driver.
Sascha Wildner [Thu, 31 May 2007 23:03:36 +0000 (23:03 +0000)]
Kill documentation for harvest_{interrupt,ethernet,p_to_p} which were
removed in 2004.
Matthew Dillon [Thu, 31 May 2007 22:10:59 +0000 (22:10 +0000)]
Adjust M_NOWAIT to M_WAITOK or M_INTWAIT as appropriate.
Hasso Tepper [Thu, 31 May 2007 11:38:37 +0000 (11:38 +0000)]
Add ip6 and icmp6 displays to systat(1).
Obtained-from: FreeBSD
Sepherosa Ziehau [Thu, 31 May 2007 11:00:25 +0000 (11:00 +0000)]
Catch up with the latest LWKT msgport updating.
Reviewed-by: dillon@
Matthew Dillon [Tue, 29 May 2007 17:01:04 +0000 (17:01 +0000)]
Rename private to privdata and class to srclass to avoid conflicts with
C++.
Reported-by: Hasso Tepper <bugs@crater.dragonflybsd.org>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue663>
Hasso Tepper [Tue, 29 May 2007 10:58:11 +0000 (10:58 +0000)]
Add implementations of the inet6_opt* and inet6_rth* functions (RFC3542).
The patch brings in the part of the RFC3542 API we already have declared
in the sys/netinet6/in6.h, but implementations were missing which confuses
third party apps.
As IPv6 Routing Header Type 0 is already in the way to deprecation (see
draft-ietf-ipv6-deprecate-rh0-00.txt for details), handling of these is
removed from inet6_rth* functions.
Obtained-from: KAME
Hasso Tepper [Tue, 29 May 2007 10:21:41 +0000 (10:21 +0000)]
Update ping(8) code and manpage to the newest ones from FreeBSD.
Besides many small fixes this brings in some new features:
* -D to set Don't Fragment bit
* -G, -g and -h for sweeping pings
* -M for using ICMP_MASKREQ or ICMP_TSTAMP instead of ICMP_ECHO
* -o to exit successfully after receiving one reply packet
* -W to set time to wait for a reply for each packet sent
* -z to set TOS
Significant part of diff not related to the new features is coming
from reordering command line options into alphabetic order.
Obtained-from: FreeBSD
Matthew Dillon [Mon, 28 May 2007 18:55:41 +0000 (18:55 +0000)]
Remove unnecessary initialization and fix a GCC-4.x run-time linking issue
at the same time.
Reported-by: David Murray <dave@nospam.murray.name>
Peter Avalos [Mon, 28 May 2007 18:42:39 +0000 (18:42 +0000)]
Update to file 4.21 which is a bugfix release including an integer
overflow. See Changelog for more changes.
Peter Avalos [Mon, 28 May 2007 18:42:39 +0000 (18:42 +0000)]
Merge from vendor branch FILE:
Update to file 4.21 which is a bugfix release including an integer
overflow. See Changelog for more changes.
Peter Avalos [Mon, 28 May 2007 18:42:39 +0000 (18:42 +0000)]
Update to file 4.21 which is a bugfix release including an integer
overflow. See Changelog for more changes.
Matthew Dillon [Mon, 28 May 2007 05:28:12 +0000 (05:28 +0000)]
Add some syslink debugging programs.
Matthew Dillon [Mon, 28 May 2007 05:26:29 +0000 (05:26 +0000)]
Open the root image O_EXLOCK|O_NONBLOCK and exit with an error message
if the open fails due to e.g. another virtual kernel using the same root
image.
Enable NL->CRNL conversion when we put the console in raw mode.
Sascha Wildner [Sun, 27 May 2007 23:46:29 +0000 (23:46 +0000)]
Remove etc/rc.d/archdep which didn't serve any real purpose.
Matthew Dillon [Sun, 27 May 2007 23:28:30 +0000 (23:28 +0000)]
From within a virtual kernel, make /sbin/shutdown and /sbin/halt actually
halt and exit the vkernel, and make /sbin/reboot automatically re-exec
a fresh vkernel.
Talk about creating a clean slate! Having reboot re-exec the vkernel
is really nice. The kernel development cycle time is now down to around
18 seconds, reboot -n -q to root login prompt, and 28 seconds for a normal
reboot. That's running a vkernel with a normal RC startup and as a
bridged DHCP client.
Sascha Wildner [Sun, 27 May 2007 23:17:47 +0000 (23:17 +0000)]
Fix typo.
Sascha Wildner [Sun, 27 May 2007 23:06:33 +0000 (23:06 +0000)]
Remove unnecessary empty arguments.
Matthew Dillon [Sun, 27 May 2007 20:35:43 +0000 (20:35 +0000)]
Syslink API work - greatly simplify the syslink_msg structure. Reimplement
the user API (NOTE: DMA buffers not yet implemented) and start working on
a kernel backend API.
Get rid of the inband DMA buffer fields and physical routing fields.
Replace the 32 bit message id with a 64 bit message id.
The 64 bit msgid allows guarenteed unique ids to be synthesized without
requiring the end points to actually track message ids.
Add a RPC protocol field (sm_proto) and move the command/reply bit and
endian detect bits from sm_msgid to sm_proto. This allows the exact same
sm_msgid supplied in a command to be used in the reply and frees up bits
in the msgid that were previously going to be used for the protocol.
A separate protocol field also makes it a lot easier for the recipient
to check that the protocol is compatible with its expectations.
Implement a message based userland API and implement a syslink pair feature
so userland can get descriptors for both sides, for testing. Implement
buffering limits, non-blocking I/O (but not select support yet), check
for duplicate message ids in active commands and match replies to commands.
Implement endian conversion to native endianess for the syslink message
header and any structured message elements.
Begin work on an out-of-band dma buffer API.
Matthew Dillon [Sun, 27 May 2007 18:37:25 +0000 (18:37 +0000)]
The proper root device for a vkernel fs is vkd0s0a, not vkd0a.
Also fix kern/vfs_conf.c to properly interpret 's0'.
Sascha Wildner [Sun, 27 May 2007 17:30:01 +0000 (17:30 +0000)]
Add ifmedia(4) reference.
Sascha Wildner [Sun, 27 May 2007 16:07:41 +0000 (16:07 +0000)]
Add a bus_set_resource(9) manual page.
Obtained-from: FreeBSD
Sepherosa Ziehau [Sun, 27 May 2007 10:53:29 +0000 (10:53 +0000)]
For rum(4) and ural(4):
- Use crit section to protect external interfaces, callouts, USB
task and USB operation callback functions.
- Avoid holding ifnet.if_serializer across various USB operations,
since current USB stack does not aware of lwkt serializer.
- In various callout, USB task and USB operation callback functions,
hold ifnet.if_serializer around ieee80211 functions.
Sepherosa Ziehau [Sun, 27 May 2007 02:45:48 +0000 (02:45 +0000)]
Apply if_rum.c rev 1.11's resource alloc/free fixes and cleanup to ural(4)
Sascha Wildner [Sat, 26 May 2007 22:54:29 +0000 (22:54 +0000)]
Welcome our new bce(4) driver to various manpages & files.
Sepherosa Ziehau [Sat, 26 May 2007 22:07:18 +0000 (22:07 +0000)]
Nuke commented out compat shim.
Matthew Dillon [Sat, 26 May 2007 20:31:38 +0000 (20:31 +0000)]
Add the kernel support function allocsysid().
Sepherosa Ziehau [Sat, 26 May 2007 08:50:49 +0000 (08:50 +0000)]
Add support for Broadcom NetXtreme II GigE. Jumbo buffer support
is missing currently, which will be added later.
Thank David Christensen <davidch@broadcom.com> for sending us two
sample NICs.
Thank dillon@ for providing a blazing fast machine and environment
to test the driver.
Also thank Walter <wa1ter@myrealbox.com> very much, who contacted
Broadcom for me :)
Obtained-from: FreeBSD (w/ modification)
Hasso Tepper [Fri, 25 May 2007 19:05:12 +0000 (19:05 +0000)]
Although our linker supports pie, our elf loader doesn't.