ru [Thu, 26 Oct 2000 13:14:48 +0000 (13:14 +0000)]
RFC 791 says that IP_RF bit should always be zero, but nothing
in the code enforces this. So, do not check for and attempt a
false reassembly if only IP_RF is set.
Also, removed the dead code, since we no longer use dtom() on
return from ip_reass().
non [Thu, 26 Oct 2000 11:25:10 +0000 (11:25 +0000)]
Uncommnet entries for PC-Cards which are supposed work with ncv, nsp,
and stg drivers. Also all config indexes for these cards are changed
to auto.
Note, still if you would like to use cards which has a comment;
# (Do not put this entry under Bustoaster)
you need some quick hack. Uncomment the entry above.
obrien [Thu, 26 Oct 2000 10:00:52 +0000 (10:00 +0000)]
Having a local `string.h' is just asking for trouble. As is having a
`struct string'. Rename the struct and effectively rename the header
to `mystring.h'
wpaul [Wed, 25 Oct 2000 23:46:31 +0000 (23:46 +0000)]
Set the DC_TX_INTR_ALWAYS and DC_TX_STORENFWD flags for the Davicom
DM9100/DM9102 chips. Do not set DC_TX_ONE. The DC_TX_USE_TX_INTR flag
causes dc_encap() to set the 'interrupt on TX completion' bit only
once every 64 packets. This is an attempt to reduce the number
of interrupts generated by the chip. You're supposed to get a 'no more
TX buffers left' interrupt once you hit the last packet whether you
ask for one or not, however it seems the Davicom chip doesn't generate
this interrupt, or at least it doesn't generate it under the same
circumstances. The result is that if you transmit n packets, where
n is less than 64, and then wait 5 seconds, you'll get a watchdog
timeout whether you want one or not. The DC_TX_INTR_ALWAYS causes
dc_encap() to request an interrupt for every frame.
I'm still waiting on confirmation from a couple of users to see if this
fixes their problems with the Davicom DM9102 before I merge this into
-stable, but this fixed the problem for me in my own testing so I'm
willing to make the change to -current right away.
dfr [Wed, 25 Oct 2000 23:36:01 +0000 (23:36 +0000)]
Move the call to extend_heap() from main to start so that if our BSS
expands beyond the limit we will extend the address space before trying
to zero the BSS. This should give us plenty of headroom for modest
expansion of the loader.
bmah [Wed, 25 Oct 2000 21:04:09 +0000 (21:04 +0000)]
Note the MFC of ATA support for new chipsets and tagged queueing,
ATA raid support (+MFC), snc(4) driver added (+MFC), ich(4) driver
added (+MFC), IFS, libisc now added, fix to netstat(1) "in use"
percentage (+MFC).
jhb [Wed, 25 Oct 2000 20:38:08 +0000 (20:38 +0000)]
- Remove unneeded machine/ipl.h #include.
- Change the softintr() macro to do nothing on FreeBSD. Previously,
this macro would set a bit in spending and schedule the softinterrupt
thread to run. However, the bs driver never actually registers a
a software interrupt handler, so all this work achieved nothing. From
the code it is not clear what exactly the softintr() macro is actually
supposed to be doing. It looks like it is supposed to be possibly
running the hardware interrupt handler maybe? This handler is only
present in the #ifdef __NetBSD__ code however. I have no idea how this
driver handles interrupts at all, but at least it compiles now.
bmah [Wed, 25 Oct 2000 17:10:20 +0000 (17:10 +0000)]
Utilize the "-o" (origin) option recently added to pkg_create(1)
and pkg_info(1), for more accurate determination of the
"up-to-date-ness" of installed packages.
deischen [Wed, 25 Oct 2000 11:46:07 +0000 (11:46 +0000)]
Make pthread_kill() know about temporary signal handlers installed
by sigwait(). This prevents a signal from being sent to the process
when there are no application installed signal handlers.
msmith [Wed, 25 Oct 2000 06:59:06 +0000 (06:59 +0000)]
Major update to the 'twe' driver.
- Layout reorganisation to enhance portability. The driver now has
a relatively MI 'core' and a FreeBSD-specific layer over the top.
Since the NetBSD people have already done their own port, this is
largely just to help me with the BSD/OS port.
- Request ID allocation changed to improve performance (I'd been
considering switching to this approach after having failed to come
up with a better way to dynamically allocate request IDs, and seeing
Andy Doran use it in the NetBSD port of the driver convinced me
that I was wasting my time doing it any other way). Now we just
allocate all the requests up front.
- Maximum request count bumped back to 255 after characterisation
of a firmware issue (off-by-one causing it to crash with 256
outstanding commands).
- Control interface implemented. This allows 3ware's '3dm' utility to
talk to the controller. 3dm will be available from 3ware shortly.
- Controller soft-reset feature added; if the controller signals a
firmware or protocol error, the controller will be reset and all
outstanding commands will be retried.
jhb [Wed, 25 Oct 2000 05:19:40 +0000 (05:19 +0000)]
- Overhaul the software interrupt code to use interrupt threads for each
type of software interrupt. Roughly, what used to be a bit in spending
now maps to a swi thread. Each thread can have multiple handlers, just
like a hardware interrupt thread.
- Instead of using a bitmask of pending interrupts, we schedule the specific
software interrupt thread to run, so spending, NSWI, and the shandlers
array are no longer needed. We can now have an arbitrary number of
software interrupt threads. When you register a software interrupt
thread via sinthand_add(), you get back a struct intrhand that you pass
to sched_swi() when you wish to schedule your swi thread to run.
- Convert the name of 'struct intrec' to 'struct intrhand' as it is a bit
more intuitive. Also, prefix all the members of struct intrhand with
'ih_'.
- Make swi_net() a MI function since there is now no point in it being
MD.
mjacob [Wed, 25 Oct 2000 04:42:46 +0000 (04:42 +0000)]
Get rid of ridiculous ISP_PVS macro. Instead, just set an
ISP_SMPLOCK define based on the previous 5.4 major/minor release
define of PVS- because this allows us to turn it off easier.
jhb [Wed, 25 Oct 2000 00:04:16 +0000 (00:04 +0000)]
- Catch a machine/mutex.h -> sys/mutex.h I somehow missed.
- Close a small race condition. The sched_lock mutex protects
p->p_stat as well as the run queues. Another CPU could change p_stat
of the process while we are waiting for the lock, and we would end up
scheduling a process that isn't runnable.
jhb [Wed, 25 Oct 2000 00:01:39 +0000 (00:01 +0000)]
- Make the eventhandler_mutex mutex a private variable in
subr_eventhandler.c
- Move the extra #include's in sys/eventhandler.h to be protected by
the #ifndef SYS_EVENTHANDLER/#endif
wpaul [Tue, 24 Oct 2000 22:38:54 +0000 (22:38 +0000)]
Convert the USB ethernet drivers to use mutexes. Also convert
usb_ethersubr.c. This module maintains two queues for packets which
are each protected with one mutex. These are all the changes I can
do for now. Removing the USBD_NO_TSLEEP flag doesn't work yet: when
I tried it, the system would usually freeze up after a NIC had been
operating for a while. The usb_ethersubr module itself ought to
go away; this is the next thing I need to test.
archie [Tue, 24 Oct 2000 20:10:25 +0000 (20:10 +0000)]
Build the ISC library as libisc. This library comes as part of the
bind distribution, but until now was not being built as a separate
entity. For documentation, see these man pages:
obrien [Tue, 24 Oct 2000 18:48:16 +0000 (18:48 +0000)]
Dike out more for the i386 release build: NCR SCSI card; anchient WDC
SCSI card (should it ever find its way into GENERIC); LPT (we don't need
to print during install time); the parallel 'geek' port; generic USB
driver (thus some attached USB devices will not be detected and thus the
user may wonder what is going on, we couldn't do anything with the device
if only ugen attached to it anyway and we are getting very, very low on
available space; USB "Human Interface Devices" as we don't do anything
with them during installation; and USB printers (same argument as LPT).
bmah [Tue, 24 Oct 2000 17:59:28 +0000 (17:59 +0000)]
Catch up on some release notes: write combining for crash dumps,
bktr(4) update to 2.17, MFC new make(1) variable modifiers, note
the addition of style.perl.7.
julian [Tue, 24 Oct 2000 17:32:45 +0000 (17:32 +0000)]
Since neither archie nor I work at Whistle any more, change our email
addresses to be the more usefu @freebsd.org ones
so we can keep getting bug-reports.
- man pages to follow..