Brian Somers [Wed, 5 Apr 2000 01:59:36 +0000 (01:59 +0000)]
Always give mktime a timeval with tm_isdst set to -1, otherwise
things get a bit out-of-phase when we step backwards 1 hour from
between 0:00 and 1:00 on the first of the month following the
transition into Summer time. This is probably actually a bug
in mktime().
PR: 10963
If mktime() fails and 68 < year < 138, assume that the reason is
because of Summer time and adjust up or down according to our
adjusting context by one hour. This assumes that all DSTs are
multiples of 1 hour.
Mike Smith [Tue, 4 Apr 2000 21:00:39 +0000 (21:00 +0000)]
Fix _zget() so that it checks the return from kmem_alloc(), to avoid
zttempting to bzero NULL when the kernel map fills up. _zget() will
now return NULL as it seems it was originally intended to do.
Warner Losh [Tue, 4 Apr 2000 17:14:18 +0000 (17:14 +0000)]
Add information about the dangarous apollo MPV3 chipset. Several
people have suggested the workaround to me (use only PIO mode) and
I've not seend a message saying ths was fixed. I'll removed the bold
warning stars after the issue is corrected.
Roger Hardiman [Tue, 4 Apr 2000 16:54:13 +0000 (16:54 +0000)]
Upgrade the bktr driver from 2.07 to 2.10.
- The driver now uses bus_space() and runs on NetBSD 1.4.2
Submitted by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
- Remove startup quirks for video and vbi capture for PAL users.
PAL TV users can now run FXTV and Alevt in any order.
- Add support for cable channels >100
Submitted by Scott Presnell <srp@zgi.com>
- New MSP3410/3415 setup code added. This is experimental.
Please set the sysctl hw.bt848.slow_msp_audio to 1 for this.
Submitted by Frank Nobis<fn@radio-do.de>
Bruce Evans [Tue, 4 Apr 2000 14:12:35 +0000 (14:12 +0000)]
Fixed prototype for setflags(). setflags() returns int, not u_long,
and "extern" in function prototypes is a style bug. The type mismatch
broke chflags(1) on i386's with 64-bit longs and may have broken it on
alphas.
- implement logfile archivation to a separate, user
configurable directory
- implement alternate and more flexible way to specify
logfile rotation time in addition to the ISO 8601
restricted format
- cleanup the source which was a mix of several styles
of persons who maintained it so far, ran through
knfom script got from bde.
Run newsyslog source through knfom script obtained from Bruce Evans.
Joerg Wunsch suggested to do this to make the functional changes in
the next commit to newsyslog (which were run through the same script)
better visible.
Nick Hibma [Mon, 3 Apr 2000 22:19:44 +0000 (22:19 +0000)]
Numerous fixes brought in by Lennart Augustsson from NetBSD:
- Request the maximum number of LUNs on a device if it is
a Bulk-Only device.
- Handle NO_TEST_UNIT_READY case for SCSI
- Add NO_START_STOP quirk for LS-120
- Fix a KASSERT which was the wrong way around.
- Kickstart the LS-120 with the infamous LS-120 specific command of
which no one knows what it doesn, apart from the fact that it appeared
in the Linux code someday.
Enable etc/defaults/pccard.conf which is default configuration file
for pccardd.
Please install /etc/defaults/pccard.conf and update /etc/defaults/rc.conf
as well.
Note that old pccard.conf.sample still remains for while but
no longer to be maintained.
Reviewed by: imp, -mobile ML and nomads ML in Japan.
Nick Hibma [Mon, 3 Apr 2000 11:11:12 +0000 (11:11 +0000)]
Add a hack to cam that makes the cam_xpt available to the rest of the
kernel. Justin agress that there is no other reasonable alternative to
do automatic rescans on connect.
The problem is that when a new device attaches to a SIM (SCSI host
controller) we need to send a XPT_SCAN_BUS command to the SIM using
xpt_action. This requires however that there is a peripheral available
to take the command (otherwise xpt_done and later bomb). The RESCAN
ioctl uses the same periph.
This enables a USB mass storage drive to do an automatic rescan on
connection of the drive.
The automatic dropping of a CAM entry on disconnection was already
working (asynchronous event).
The next thing to do is find someone to commit a change to vpo to do the
same thing. Just port umass_cam_rescan and friends across to that
driver.
Fix unsafe tempfile creation. This file is already off the vendor
branch. Although this problem has been reported to the GNU folks,
it's unlikely that any solution they may come up with will involve
the use of mktemp(1).
PR: 16942
Submitted by: Colin Phipps <crp22@cam.ac.uk>
Nick Hibma [Sun, 2 Apr 2000 21:59:27 +0000 (21:59 +0000)]
Remove a static variable, a uniquifier for a SCSI command. It might have
produced inadvertently failed transfers in the case were multiple
Bulk-Only devices are connected and a command is prepared at the same
time.
Clone bio versions of certain bits of infrastructure:
devstat_end_transaction_bio()
bioq_* versions of bufq_* incl bioqdisksort()
the corresponding "buf" versions will disappear when no longer used.
Move b_offset, b_data and b_bcount to struct bio.
Add BIO_FORMAT as a hack for fd.c etc.
We are now largely ready to start converting drivers to use struct
bio instead of struct buf.
Nick Hibma [Sun, 2 Apr 2000 16:59:16 +0000 (16:59 +0000)]
I got the CAM numbers (path id's, buses, unit numbers) and newbus
unit numbers all wrong. This did not show up because most of them where
zero anyway.
Use a separate buffer for command transforms instead of fiddling with
the existing cdb_bytes.
Take CAM_CDB_POINTER into account. Nobody is using it, but someone might
in the future.
Be more picky about what to accept in the UFI command set.
First attempt at implementing the ATAPI command protocol transforms.
This should at least make Imation Superdisk and other e-Shuttle based
devices show as attached. Maybe they even work to some extent.
Move htons() ip_len to after the in_delayed_cksum() call.
This should stop cksum error messages on IPsec communication
which was reported on freebsd-current.
Add support for the LinkSys USB10T network adapter that
contains the ADMtek Pegasus AN986 USB chipset. The
adapter supports both 10BaseT and 100BaseT (including
full-duplex). The product code for these adapters is
0x2206.
Avoid rawname() stupidly prepending an `r' before the device name even
in cases where the supplied name was already pointing to a character
special device. This fixes the breakage that occured when trying to
dump a filesystem by name (e. g. /usr), with an fstab already
mentioning the raw device name (like /dev/rda0g) where dump attempted
to use /dev/rrda0g then.
Also removed the now obsolete remark that fstab were carrying block
special names.
This new driver version uses the DMA mapping interface
introduced in FreeBSD-4.0. The driver is now full up-to-date
with regards to the current kernel interfaces.
Another significant change in this driver version applies
to the checking of the data direction. The driver is now
able to check against the expected data direction in any
circumstance and will not hang either if direction is wrong
at the start of the IO, or if for some weird reason,
the device changes to the wrong direction during the IO.
This driver version is still usable under FreeBSD 3.2/3.3,
since it only requires CAM, other kernel interface dependencies
being #if'ed in the sources according to kernel version.
But, in order to use the driver under those early kernel
versions, user has to move the driver sources by hand and make
appropriate tiny changes to let the kernel know about the driver.
Other changes:
- Remove the debugging stuff for WSR bit.
- Get rid of some warnings about volatile being discarded.
- Add temporary workaround to fool some "clever" KVM switch products
which think they know the IntelliMouse 4-byte packet and believe,
wrongly, that any other protocols use 3-byte packets.
- Update a couple of comment lines for A4 Tech mice.
- Mike Smith discovered a panic in the changer probe code if the probe
command (mode sense) fails. So we need to release the CCB used in the
probe before we unlock the peripheral. (i.e. the same fix mjacob put in
the CD and DA drivers)
- A newline was missing in a warning message. (PR kern/17512)
PR: kern/17512
Submitted by: Louis Mamakos <louie@uu.net> (newline fix)
Cameron Grant [Sun, 2 Apr 2000 07:41:17 +0000 (07:41 +0000)]
unfinished sblive driver, playback/mixer only for now - not enabled in
conf/files
i don't seem to be clearing the cache right resulting in a short initial
burst of noise, despite doing the same as creative and alsa. i'm committing
now so more eyes can pore over the code.
Brian Feldman [Sun, 2 Apr 2000 07:02:48 +0000 (07:02 +0000)]
One in a while, something happens so uncannily that you get knocked off
your feet. The conversion of the "snp" device to a dynamically growing
device driver was done just a few days ago by Brooks Davis! Shame on
me for not finding that PR :(
This is a forced commit of tty_snoop.c to give the submitter proper credit,
as most of the patch submitted is actually exactly the same code (by some
large amount of entropy). Brooks also submitted the change to LINT to
set the example of "snp" usage to not include a number, as that number is
now deprecated, so that is also in this commit.
PR: 17629
Submitted by: Brooks Davis <brooks@one-eyed-alien.net>
Make mergemaster only take single letters for options as well as loop
asking a question again if given an invalid input instead of assuming
what the user wants. /etc is not the place to make assumptions when
given invalid input.
Reformat some of the more convoluted code into seperate functions instead
of being inline using tabs instead of space indents.
Allow the user to view merged files they created with sdiff.
Allow the user to redisplay the diff between the installed file and
the new file again.
Matthew Dillon [Sun, 2 Apr 2000 00:55:28 +0000 (00:55 +0000)]
Change the write-behind code to take more care when starting
async I/O's. The sequential read heuristic has been extended to
cover writes as well. We continue to call cluster_write() normally,
thus blocks in the file will still be reallocated for large (but still
random) I/O's, but I/O will only be initiated for truely sequential
writes.
This solves a number of annoying situations, especially with DBM (hash
method) writes, and also has the side effect of fixing a number of
(stupid) benchmarks.