thompsa [Wed, 11 Nov 2009 01:33:06 +0000 (01:33 +0000)]
MFC r199058
Integrate lost interrupts patch from the old USB stack.
Some EHCI chips from VIA / ATI seem to trigger interrupts before writing back
the qTD status, or miss signalling occasionally under heavy load. If the host
machine is too fast, we can miss transaction completion - when we scan the
active list the transaction still seems to be active. This generally exhibits
itself as a umass stall that never recovers.
We work around this behaviour by setting up this callback after any softintr
that completes with transactions still pending, giving us another chance to
check for completion after the writeback has taken place
thompsa [Wed, 11 Nov 2009 01:27:58 +0000 (01:27 +0000)]
MFC r199055
- fix refcounting error during data transfer
- fix a memory leak on the USB backend
- fix invalid pointer computations (in one case memory outside the allocated
area was written in LibUSB v1.0)
- make sure memory is always initialised, also in failing cases
- add missing functions from v1.0.4
kensmith [Mon, 9 Nov 2009 21:39:42 +0000 (21:39 +0000)]
Comment out the sbp(4) entry for GENERIC config files that contain it.
There are known issues with this driver that are beyond what can be
fixed for 8.0-RELEASE and the bugs can cause boot failure on some systems.
It's not clear if it impacts all systems and there is interest in getting
the problem fixed so for now just comment it out instead of remove it.
Commit straight to stable/8, this is an 8.0-RELEASE issue. Head was left
alone so work on it can continue there.
nwhitehorn [Mon, 9 Nov 2009 21:30:45 +0000 (21:30 +0000)]
Insta-MFC of r199084,199108:
Increase the size of the OFW translations buffer to handle G5 systems
that use many translation regions in firmware, and add bounds checking
to prevent buffer overflows in case even the new value is exceeded.
Short MFC requested by re since the problem this fixes breaks CD boot on
most G5 systems, making them uninstallable.
Reported by: Jacob Lambert
Approved by: re (kensmith,kib)
Requested by: re
jhb [Mon, 9 Nov 2009 18:56:47 +0000 (18:56 +0000)]
Cleanup mergeinfo for libc. Part of the damage was caused by a merge from
a partial checkout of libc in a user branch up to head. Don't do merges
from sparse trees!
kensmith [Mon, 9 Nov 2009 18:09:10 +0000 (18:09 +0000)]
MFC r198719:
> While certain supported Symbios/LSI SCSI chips (532c896, 53c1000, 53c1010)
> do support 64bit addresses, the current SCRIPTS code supports only 32bit
> addresses causing data corruption for buffer addresses >4GB. This problem
> affects 64bit machines with more than 4GB RAM or amd64 with 4GB and
> memory hole remapping.
> Work-around this problem with a bus_dma tag that requests bounce-buffers
> for addresses >4GB. This causes some overhead, but given the maximum SCSI
> bus speed of 160MB/s compared, the effect should hardly be noticeable.
> The problem was reported by Mike Watters (mike at mwatters net) who also
> verified that this fix cures the problem.
>
> Since this change is a NOOP on systems with less than 4GB RAM and fixes
> data corruption (in RAM and on disk) on systems with more than 4GB, I hope
> that this change is accepted for 8.0.
Requested by: Stefan Esser (se at freebsd dot org)[1]
Reviewed by: jhb, scottl
[1] Stefan requested this be part of 8.0 but has been unavailable to do
the MFC since submitting the request. We want to get 8.0-RC3 started
so I'm doing the merges with re@ hat on.
ume [Mon, 9 Nov 2009 15:11:37 +0000 (15:11 +0000)]
MFC r198976, r198993:
- Don't call LLE_FREE() after nd6_free().
- Make nd6_llinfo_timer() does its job, again. ln->la_expire was
greater than time_second, in most cases.
oleg [Mon, 9 Nov 2009 10:13:24 +0000 (10:13 +0000)]
MFC r198845:
Fix two issues that can lead to exceeding configured pipe bandwidth:
- do not expire queues which are not ready to be expired.
- properly calculate available burst size.
mav [Fri, 6 Nov 2009 10:56:43 +0000 (10:56 +0000)]
MFC r198700:
Add support for different request block format used by Gen-IIe Marvell SATA.
This adds support for Marvell 6042/7042 chips and Adaptec 1430SA controller.
MFC r198718:
Allow newly added controllers to use full I/O sizes.
mav [Fri, 6 Nov 2009 10:45:37 +0000 (10:45 +0000)]
MFC r197783:
- Revert r191568 partially. Forcing AHCI mode by changing device subclass
and progif is evil. It doesn't work reliably[1] and we should honor BIOS
configuration by the user.
- If the SATA controller is enbled but combined mode is disabled, mask off
the emulated IDE channel on the legacy IDE controller.
attilio [Fri, 6 Nov 2009 10:15:15 +0000 (10:15 +0000)]
MFC r198868, r198950:
Opteron rev E family of processor expose a bug where acq memory barriers
can be broken, resulting in random breakages.
Printout a warning message if affecred family and model are found.
trasz [Fri, 6 Nov 2009 09:39:35 +0000 (09:39 +0000)]
MFC r197789:
Fix ACL support on sparc64. Turns out that fuword(9) fetches 64 bits
instead of sizeof(int), and on sparc64 that resulted in fetching wrong
value for acl_maxcnt, which in turn caused __acl_get_link(2) to fail
with EINVAL.
PR: sparc64/139304
Submitted by: Dmitry Afanasiev <KOT at MATPOCKuH.Ru>
mjacob [Thu, 5 Nov 2009 18:25:26 +0000 (18:25 +0000)]
Unbreak SBus cards which have been broken (apparently) for a while.
Most of the pieces came from Marius- correct settings for channels
and resource management. The one piece missing was that you cannot
for SBus cards replace 32 bit operations with A64 operations- not
supported. This is an MFC of r198822.
netchild [Thu, 5 Nov 2009 08:31:42 +0000 (08:31 +0000)]
MFC r196511:
- Update config to doxygen 1.5.2 (I use this with 1.5.9).
- Add linprocfs and linsysfs to the linuxulator dox.
- Take the generated includes from the .m files from a subdirectory
instead of putting everything into $(.OBJDIR). This imporves the
human readbility of the source directory contents a lot, if you do not
create a separate OBJDIR.
- Assume UTF-8 encoding for every input file.
- Strip the source and dest path from the output, we are not interested
in the absolute location on the machine where the docs are created,
relative the the root of the FreeBSD source is what interests us.
- Exclude .svn directories.
- Switch to alphabetic index.
- Use one line per INCLUDE_PATH member in the common dox-config.
- Bump the __FreeBSD__ version to 9. [here in the MFC: to 8]
- Switch from hardcoded .m files to an run-time generated one. Takes
a little bit more time to get started with actual work, but at least
is more future-proof. If you generate dox for all subsystems, the
time to find all .m files in the source is magnitutes lower than
producing the docs.
- Make the *DEST_PATH overidable from the environment. This allows to
produce the output directly in the docroot of a webserver.
- Fix the path when telling the user where he can find the API docs.
jhb [Wed, 4 Nov 2009 20:49:14 +0000 (20:49 +0000)]
MFC 198554:
Fix some problems with effective mmap() offsets > 32 bits. This was
partially fixed on amd64 earlier. Rather than forcing linux_mmap_common()
to use a 32-bit offset, have it accept a 64-bit file offset. This offset
is then passed to the real mmap() call. Rather than inventing a structure
to hold the normal linux_mmap args that has a 64-bit offset, just pass
each of the arguments individually to linux_mmap_common() since that more
closes matches the existing style of various kern_foo() functions.
yongari [Wed, 4 Nov 2009 18:31:43 +0000 (18:31 +0000)]
MFC r197586:
It seems some 82559ER controllers do not support Rx checksum
offloading. Datasheet said nothing about the limitation of 82559ER
except WOL. Explicitly disable Rx checksum offloading for
controllers that is known to lack the capability.
PR: kern/138135
Tested by: Gooderum, Mark < mgooderum <> websense dot com >
jhb [Wed, 4 Nov 2009 16:58:26 +0000 (16:58 +0000)]
MFC 197772:
When the timeout backoff hits the maximum value, leave it capped at the
maximum value rather than setting it to the result of a boolean expression
that is always true.
edwin [Wed, 4 Nov 2009 10:46:55 +0000 (10:46 +0000)]
MFC of r198825: tzdata2009q
- New region: Asia/Novokuznetsk
- Kemerovo oblast' (Kemerovo region) in Russia will change current
time zone on 29 March 2010
- Add historical data for Hongkong 1941 - 1980
- Syria will go to winter time in the last weekend of October 2009.
emaste [Mon, 2 Nov 2009 16:54:23 +0000 (16:54 +0000)]
MFC r197011:
Increase AAC_CMD_TIMEOUT from 30s to 120s to help avoid spurious
"COMMAND 0x........ TIMEOUT AFTER .. SECONDS" messages. Any commands
that get truly stuck will still trigger the warning and the hardware
health check, just a little bit later.
emaste [Mon, 2 Nov 2009 16:32:32 +0000 (16:32 +0000)]
MFC r197692:
In fill_kinfo_thread, copy the thread's name into struct kinfo_proc even
if it is empty. Otherwise the previous thread's name would remain in the
struct and then be reported for this thread.
rnoland [Mon, 2 Nov 2009 16:02:16 +0000 (16:02 +0000)]
MFC 198696
Cleanup in r600_blit
- Don't bother to assign vb until we know we have enough space
- Add variables for sx2, sy2, dx2, dy2 so that these aren't
calculated over and over, also reduce chance of errors.
- Use switch to assign color/format
SVN r197174:
Make sure we never place the cursor outside the screen.
For some vague reason, it may be possible that scp->cursor_pos exceeds
scp->ysize * scp->xsize. This means that teken_set_cursor() may get
called with an invalid position. Just ignore the old cursor position in
this case.
Reported by: Paul B. Mahol <onemda gmail com>
SVN r198213:
Make lock devices work properly.
It turned out I did add the code to use the init state devices to set
the termios structure when opening the device, but it seems I totally
forgot to add the bits required to force the actual locking of flags
through the lock state devices.
Reported by: ru
SVN r198215, r198217:
Fix a typo in the jail(8) manpage.
Submitted by: Jille Timmermans <jille quis cx>
SVN r198216:
Fix qouting in a comment, to make it look more consistent
Submitted by: Jille Timmermans <jille quis cx>
SVN r198223:
Properly set the low watermarks when reducing the baud rate.
Now that buffers are deallocated lazily, we should not use
tty*q_getsize() to obtain the buffer size to calculate the low
watermarks. Doing this may cause the watermark to be placed outside the
typical buffer size.
This caused some regressions after my previous commit to the TTY code,
which allows pseudo-devices to resize the buffers as well.
edwin [Sat, 31 Oct 2009 06:35:40 +0000 (06:35 +0000)]
MFCs of r197764, r197765, r197766, r197847:
Modified locale(1) to be able to show the altmon_X fields and the
[cxX]_fmt's. Also modify the "-k list" option to display only
fields with a certain prefix.
Add the comment "(FreeBSD only)" to the altmonth_x keywords
rafan [Fri, 30 Oct 2009 17:28:35 +0000 (17:28 +0000)]
MFC r198490
Pull upstream patch to fix ee(1) crash when received SIGWINCH:
modify _nc_wgetch() to check for a -1 in the fifo, e.g., after a
SIGWINCH, and discard that value, to avoid confusing application
(patch by Eygene Ryabinkin, FreeBSD bin/136223).
mav [Fri, 30 Oct 2009 12:57:28 +0000 (12:57 +0000)]
MFC rev. 197086:
Add simple embedded RADIUS server support to libradius, by extending existing
API, keeping backward compatibility.
First consumer for this functionality is going to become forthcoming MPD-5.4,
supporting CoA and DR of RFC 3576: Dynamic Authorization Extensions to RADIUS.