but it outlines what I'm GOING to do to this file.
It's sort of an unignorable notification of coming changes..
This is a bit rude I understand.. but I can't afford to haqve the
diskslice code drifting off too much further from a workable system
and I think I need to jump in now to make it obvious what has to be done
before it's too late.
appologies to bruce in advance.
bin/stty. Define alias CCAR_OFLOW for MDMBUF.
Declare speeds as having type speed_t instead of long. speed_t is
long, which is wrong (POSIX specifies it to be unsigned integral),
but fixing it might introduce more serious bugs.
user-level part has already been commited.)
Note that i've lost the "official" code for this; it went into the
system after 1.1.5.1. The commited code is my own version, but it has
proven to work for me for more than a year now.
if an invalid ioctl is done on /dev/klog. logioctl() needs to return
an errno instead of -1 on a failed ioctl.
Submitted by: Mike Pritchard <mpp@mpp.com>
This submission was done by hand-applying FreeBSD local modifications on
top of the UCB code, rather than trying to patch the UCB code in on top
of the FreeBSD code due to the extensive changes.
Reviewed by: pst (been handling 30k routes for 4+ months)
Obtained from: Sklower/Woody/Honing/Traina (8.4 UCB release)
It is the kernel driver's responsibility to do the list manipulation whenever
a selection timeout or a request sense occurs.
Print out the interrupt type that the device has been set to. It seems that
one of the Asus motherboards botches this and David thought a diagnostic would
be nice.
Fix a bug in my diagnostic code that David found.
Reviewed by: Wcarchive and David Greenman
the adapter's selections. Many fast periferals were getting upset when
the sequencer decided to rearbitrate after the device had already won
arbitration. This also forced the creation of a list threaded through
the SCBs (since we don't have enough space anywhere else) of commands that
are awaiting reselection. This list is run down before any new transactions
from the input queue are allowed. The list is appened to whenever we begin
a selection (simple case since the selecting device is always at the head)
and by the kernel driver whenever a request sense occurs. In the common
case, the list is only one element long, but when a reselection wins out
over a selection and that reselection generates a request sense, the
outstanding selection required for the retreval of the sense code grows
the list. On machines with many targets, this might cause the list to grow
large, so this solution, which will allow up to the maximum number of I/O
requests capible of the card elements in the list, was chosen. The list
manipulation is trivial and adds three sequencer instructions of overhead
to the selection phase.
This fixes the "target busy" errors from micropolis drives and the bursty
I/O problem when performing I/O between a Quantum Grand Prix and any other
device. I anticipate that this will correct many of the problems that
have been reported with this driver.
Reviewed by: Wcarchive and David Greenman
go away whenever a clone's parent is changed, or a route is added in a
certain set of circumstances.
This also includes code to forbid setting a route's gateway to an
address which can only be reached through that route, thus (hopefully)
eliminating one class of cloning bottomless-recursion bugs.
to be `int' or smaller and some functions returned `int' instead
of `void'. The first bug was detected when console functions were
defined in a place central enough for type checking to actually
work and the second bug was introduced when the interface was
changed to match what the console functions in other drivers actually
return.