]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
12 years agoRemove unused error variables in cdclose() and daclose().
mav [Wed, 20 Jun 2012 18:35:36 +0000 (18:35 +0000)]
Remove unused error variables in cdclose() and daclose().

12 years agoCheck status of cam_periph_hold() inside cdclose(). If cd device was
mav [Wed, 20 Jun 2012 18:25:51 +0000 (18:25 +0000)]
Check status of cam_periph_hold() inside cdclose().  If cd device was
invalidated while open, cam_periph_hold() will return error and won't
get the reference.  Following reference release will crash the system.

Sponsored by: iXsystems, Inc.
MFC after: 3 days

12 years agoMove the per-thread deferred user map entries list into a private list
jhb [Wed, 20 Jun 2012 18:00:26 +0000 (18:00 +0000)]
Move the per-thread deferred user map entries list into a private list
in vm_map_process_deferred() which is then iterated to release map entries.
This avoids having a nested vm map unlock operation called from the loop
body attempt to recuse into vm_map_process_deferred().  This can happen if
the vm_map_remove() triggers the OOM killer.

Reviewed by: alc, kib
MFC after: 1 week

12 years agoNow that there is an est(4) man page, reference it here in cpufreq(4).
sbruno [Wed, 20 Jun 2012 17:26:22 +0000 (17:26 +0000)]
Now that there is an est(4) man page, reference it here in cpufreq(4).

12 years agoFix ARM compilation issue.
mjacob [Wed, 20 Jun 2012 17:20:25 +0000 (17:20 +0000)]
Fix ARM compilation issue.

X-MFC: 237260

12 years agoFix several reference counting and object lifetime issues between
ken [Wed, 20 Jun 2012 17:08:00 +0000 (17:08 +0000)]
Fix several reference counting and object lifetime issues between
the pass(4) and enc(4) drivers and devfs.

The pass(4) driver uses the destroy_dev_sched() routine to
schedule its device node for destruction in a separate thread
context.  It does this because the passcleanup() routine can get
called indirectly from the passclose() routine, and that would
cause a deadlock if the close routine tried to destroy its own
device node.

In any case, once a particular passthrough driver number, e.g.
pass3, is destroyed, CAM considers that unit number (3 in this
case) available for reuse.

The problem is that devfs may not be done cleaning up the previous
instance of pass3, and will panic if isn't done cleaning up the
previous instance.

The solution is to get a callback from devfs when the device node
is removed, and make sure we hold a reference to the peripheral
until that happens.

Testing exposed some other cases where we have reference counting
issues, and those were also fixed in the pass(4) driver.

cam_periph.c: In camperiphfree(), reorder some of the operations.

The peripheral destructor needs to be called before
the peripheral is removed from the peripheral is
removed from the list.  This is because once we
remove the peripheral from the list, and drop the
topology lock, the peripheral number may be reused.
But if the destructor hasn't been called yet, there
may still be resources hanging around (like devfs
nodes) that haven't been fully cleaned up.

cam_xpt.c: Add an argument to xpt_remove_periph() to indicate
whether the topology lock is already held.

scsi_enc.c: Acquire an extra reference to the peripheral during
registration, and release it once we get a callback
from devfs indicating that the device node is gone.

Call destroy_dev_sched_cb() in enc_oninvalidate()
instead of calling destroy_dev() in the cleanup
routine.

scsi_pass.c: Add reference counting to handle peripheral and
devfs object lifetime issues.

Add a reference to the peripheral and the devfs
node in the peripheral registration.

Don't attempt to add a physical path alias if the
peripheral has been marked invalid.

Release the devfs reference once the initial
physical path alias taskqueue run has completed.

Schedule devfs node destruction in the
passoninvalidate(), and release our peripheral
reference in a new routine, passdevgonecb() once
the devfs node is gone.  This allows the peripheral
to fully go away, and the peripheral destructor,
passcleanup(), will get called.

MFC after: 3 days
Sponsored by: Spectra Logic

12 years agoAllow booting XENHVM kernel without Xen hypervisor.
fabient [Wed, 20 Jun 2012 15:45:50 +0000 (15:45 +0000)]
Allow booting XENHVM kernel without Xen hypervisor.

MFC after: 3 days

12 years agoFix viawd(4) that was only working as a module.
fabient [Wed, 20 Jun 2012 09:01:44 +0000 (09:01 +0000)]
Fix viawd(4) that was only working as a module.

Obtained from: jhb
MFC after: 3 days

12 years agoAdd PV list locking to pmap_copy(), pmap_enter_object(), and
alc [Wed, 20 Jun 2012 07:25:20 +0000 (07:25 +0000)]
Add PV list locking to pmap_copy(), pmap_enter_object(), and
pmap_enter_quick().  These functions are no longer serialized by the pvh
global lock.

There is no need to release the PV list lock before calling free_pv_chunk()
in pmap_remove_pages().

12 years agoDon't close an uninitialized descriptor. [1]
eadler [Wed, 20 Jun 2012 06:38:41 +0000 (06:38 +0000)]
Don't close an uninitialized descriptor. [1]
Add a sanity check for the validity of the passed fd.

PR: kern/139080 [1]
Submitted by: Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua> [1]
Reviewed by: pjd (briefly)
Approved by: cperciva
MFC after: 1 week

12 years agoAdd progress.c and progress.h, missed in the previous commit to camcontrol.
scottl [Wed, 20 Jun 2012 04:11:34 +0000 (04:11 +0000)]
Add progress.c and progress.h, missed in the previous commit to camcontrol.

Submitted by:   Garrett Cooper
Obtained from:  Netflix, Inc.

12 years agoFix potential symlink race condition in "rm -P" by adding a check
kevlo [Wed, 20 Jun 2012 02:21:53 +0000 (02:21 +0000)]
Fix potential symlink race condition in "rm -P" by adding a check
that the file we have opened is the one we expected.  Also open in
non-blocking mode to avoid a potential hang with FIFOs.

Obtained from: NetBSD via OpenBSD

12 years agoCorrect typo in version.
obrien [Wed, 20 Jun 2012 00:37:00 +0000 (00:37 +0000)]
Correct typo in version.

12 years agoUpdate the 'fwdownload' command to also flash disks connected over an
scottl [Wed, 20 Jun 2012 00:17:29 +0000 (00:17 +0000)]
Update the 'fwdownload' command to also flash disks connected over an
ATA/SATA transport.  The detection logic is automatic, so it should Just
Work.  While here, also improve the progress meter that is displayed
during firmware download.

Submitted by: Alistair Crooks
Obtained from: Netflix, Inc.
MFC after: 3 days

12 years agoInstall filemon.h into /usr/include for userland consumption.
obrien [Wed, 20 Jun 2012 00:09:47 +0000 (00:09 +0000)]
Install filemon.h into /usr/include for userland consumption.

12 years agoCheck proper flag (PDF_DAEMON, not PD_DAEMON) when deciding if the process
pjd [Tue, 19 Jun 2012 22:23:59 +0000 (22:23 +0000)]
Check proper flag (PDF_DAEMON, not PD_DAEMON) when deciding if the process
should be killed or not.

This fixes killing pdfork(2)ed process on last close of the corresponding
process descriptor.

Reviewed by: rwatson
MFC after: 1 month

12 years agoThe falloc() function obtains two references to newly created 'fp'.
pjd [Tue, 19 Jun 2012 22:21:59 +0000 (22:21 +0000)]
The falloc() function obtains two references to newly created 'fp'.
On success we have to drop one after procdesc_finit() and on failure
we have to close allocated slot with fdclose(), which also drops one
reference for us and drop the remaining reference with fdrop().

Without this change closing process descriptor didn't result in killing
pdfork(2)ed child.

Reviewed by: rwatson
MFC after: 1 month

12 years agoFurther refine the implementation of POSIX_FADV_NOREUSE.
jhb [Tue, 19 Jun 2012 18:42:24 +0000 (18:42 +0000)]
Further refine the implementation of POSIX_FADV_NOREUSE.

First, extend the changes in r230782 to better handle the common case
of using NOREUSE with sequential reads.  A NOREUSE file descriptor
will now track the last implicit DONTNEED request it made as a result
of a NOREUSE read.  If a subsequent NOREUSE read is adjacent to the
previous range, it will apply the DONTNEED request to the entire range
of both the previous read and the current read.  The effect is that
each read of a file accessed sequentially will apply the DONTNEED
request to the entire range that has been read.  This allows NOREUSE
to properly handle misaligned reads by flushing each buffer to cache
once it has been completely read.

Second, apply the same changes made to read(2) by r230782 and this
change to writes.  This provides much better performance in the
sequential write case as it allows writes to still be clustered.  It
also provides much better performance for misaligned writes.  It does
mean that NOREUSE will be generally ineffective for non-sequential
writes as the current implementation relies on a future NOREUSE
write's implicit DONTNEED request to flush the dirty buffer from the
current write.

MFC after: 2 weeks

12 years agoCorrect misunderstanding of hw.est.strict
sbruno [Tue, 19 Jun 2012 17:13:14 +0000 (17:13 +0000)]
Correct misunderstanding of hw.est.strict

Setting strict causes a validation of the requested
value vs the value currently running after a frequency
change is requested.

Change applicability to be single core not i386.

Thanks to mav@ for reviewing and commenting on my
lack of understanding.

MFC after: 2 weeks

12 years agoAdd a 'wmask' variable to hold the expression '(1ul << w->step) - 1' in
jhb [Tue, 19 Jun 2012 16:06:27 +0000 (16:06 +0000)]
Add a 'wmask' variable to hold the expression '(1ul << w->step) - 1' in
pcib_grow_window().  This makes the code slightly easier to read and
prevents the type of bug fixed in r237271.

MFC after: 3 days

12 years agoFix another off-by-one error in the previous fix so that the new start
jhb [Tue, 19 Jun 2012 15:15:35 +0000 (15:15 +0000)]
Fix another off-by-one error in the previous fix so that the new start
address is properly aligned.  While here, use a simpler expression to
align the new end address that we use elsewhere for aligning the end.

12 years agoPassive mode is the default, and has been for a while.
des [Tue, 19 Jun 2012 14:47:07 +0000 (14:47 +0000)]
Passive mode is the default, and has been for a while.

MFC after: 1 week

12 years agoSwitch the default password hash from md5 to sha512.
des [Tue, 19 Jun 2012 14:46:18 +0000 (14:46 +0000)]
Switch the default password hash from md5 to sha512.

MFC after: 1 week

12 years agoRevert user comparison back to user names as some user can share uids (root/toor
bapt [Tue, 19 Jun 2012 11:39:56 +0000 (11:39 +0000)]
Revert user comparison back to user names as some user can share uids (root/toor
for example)

get the username information from old_pw structures to still allow renaming of a
user.

Reported by: Claude Buisson <clbuisson@orange.fr>
Approved by: des (mentor)
MFC after: 3 weeks

12 years agoCondition the implementation of pv_entry_count on PV_STATS. On amd64,
alc [Tue, 19 Jun 2012 08:12:44 +0000 (08:12 +0000)]
Condition the implementation of pv_entry_count on PV_STATS.  On amd64,
pv_entry_count is purely informational.  It does not serve any functional
purpose.

Add PV chunk locking to get_pv_entry().

12 years ago- Updated TOE support in the kernel.
np [Tue, 19 Jun 2012 07:34:13 +0000 (07:34 +0000)]
- Updated TOE support in the kernel.

- Stateful TCP offload drivers for Terminator 3 and 4 (T3 and T4) ASICs.
  These are available as t3_tom and t4_tom modules that augment cxgb(4)
  and cxgbe(4) respectively.  The cxgb/cxgbe drivers continue to work as
  usual with or without these extra features.

- iWARP driver for Terminator 3 ASIC (kernel verbs).  T4 iWARP in the
  works and will follow soon.

Build-tested with make universe.

30s overview
============
What interfaces support TCP offload?  Look for TOE4 and/or TOE6 in the
capabilities of an interface:
# ifconfig -m | grep TOE

Enable/disable TCP offload on an interface (just like any other ifnet
capability):
# ifconfig cxgbe0 toe
# ifconfig cxgbe0 -toe

Which connections are offloaded?  Look for toe4 and/or toe6 in the
output of netstat and sockstat:
# netstat -np tcp | grep toe
# sockstat -46c | grep toe

Reviewed by: bz, gnn
Sponsored by: Chelsio communications.
MFC after: ~3 months (after 9.1, and after ensuring MFC is feasible)

12 years agoAdd __unused macros to appropriate places in order to allow building
eadler [Tue, 19 Jun 2012 06:18:42 +0000 (06:18 +0000)]
Add __unused macros to appropriate places in order to allow building
with WARNS=6 on base gcc, gcc46, and clang

Approved by: cperciva
MFC after: 1 week

12 years agoAllow users with RO privilege to the device to read the RO attributes.
eadler [Tue, 19 Jun 2012 06:18:37 +0000 (06:18 +0000)]
Allow users with RO privilege to the device to read the RO attributes.

PR: bin/167302
Submitted by: markham breitbach <markham@ssimicro.com>
Discussed with: pjd (briefly)
Approved by: cperciva
MFC after: 1 week

12 years agoRemove variables which are initialized but never used thereafter reported by gcc46...
eadler [Tue, 19 Jun 2012 06:10:34 +0000 (06:10 +0000)]
Remove variables which are initialized but never used thereafter reported by gcc46 warning

Approved by: cperciva
MFC After: 3 days

12 years agoRemove variables which are initialized but never used thereafter reported by gcc46...
eadler [Tue, 19 Jun 2012 06:10:31 +0000 (06:10 +0000)]
Remove variables which are initialized but never used thereafter reported by gcc46 warning

Approved by: cperciva
MFC After: 3 days

12 years agoRemove variables which are initialized but never used thereafter reported by gcc46...
eadler [Tue, 19 Jun 2012 06:10:27 +0000 (06:10 +0000)]
Remove variables which are initialized but never used thereafter reported by gcc46 warning

Approved by: cperciva
MFC After: 3 days

12 years agoRemove variables which are initialized but never used thereafter reported by gcc46...
eadler [Tue, 19 Jun 2012 06:10:24 +0000 (06:10 +0000)]
Remove variables which are initialized but never used thereafter reported by gcc46 warning

Approved by: cperciva
MFC After: 3 days

12 years agoRemove variables which are initialized but never used thereafter reported by gcc46...
eadler [Tue, 19 Jun 2012 06:09:58 +0000 (06:09 +0000)]
Remove variables which are initialized but never used thereafter reported by gcc46 warning

Approved by: cperciva
MFC After: 3 days

12 years agoRemove variables which are initialized but never used thereafter reported by gcc46...
eadler [Tue, 19 Jun 2012 06:09:47 +0000 (06:09 +0000)]
Remove variables which are initialized but never used thereafter reported by gcc46 warning

Approved by: cperciva
MFC After: 3 days

12 years agoRemove end of line whitespace.
joel [Tue, 19 Jun 2012 05:55:14 +0000 (05:55 +0000)]
Remove end of line whitespace.

12 years agoMinor mdoc fixes.
joel [Tue, 19 Jun 2012 05:53:47 +0000 (05:53 +0000)]
Minor mdoc fixes.

12 years agoDocument support for Intel Enhanced Speedstep Tech interface
sbruno [Mon, 18 Jun 2012 23:18:49 +0000 (23:18 +0000)]
Document support for Intel Enhanced Speedstep Tech interface
of cpufreq(4) via a new man page est(4)

Document the two exposed tuneables of est(4).

I'd appreciate more reviews of content if possible.  I gleaned
the information contained herein from sys/x86/cpufreq/est.c and
the Intel reference documentation

Reviewed by:    wblock hrs gjb
MFC after:      2 weeks

12 years agoFix the NFSv4 client for the case where mmap'd files are
rmacklem [Mon, 18 Jun 2012 22:17:28 +0000 (22:17 +0000)]
Fix the NFSv4 client for the case where mmap'd files are
written, but not msync'd by a process. A VOP_PUTPAGES()
called when VOP_RECLAIM() happens will usually fail, since
the NFSv4 Open has already been closed by VOP_INACTIVE().
Add a vm_object_page_clean() call to the NFSv4 client's
VOP_INACTIVE(), so that the write happens before the NFSv4
Open is closed. kib@ suggested using vgone() instead and
I will explore this, but this patch fixes things in the
meantime. For some reason, the VOP_PUTPAGES() is still
attaempted in VOP_RECLAIM(), but having this fail doesn't
cause any problems except a "stateid0 in write" being logged.

Reviewed by: kib
MFC after: 1 week

12 years agoAdjust the fix in r236953, by not generating the signal manually, but
kib [Mon, 18 Jun 2012 21:08:48 +0000 (21:08 +0000)]
Adjust the fix in r236953, by not generating the signal manually, but
performing the return to usermode using full return path.  This
consolidates the handling of exceptional situations in less number of
places, and is less code as well.

Reviewed by:   jhb
MFC after:     1 week

12 years agoRevert r236529, re-enabling verification of the flashed content as
marius [Mon, 18 Jun 2012 20:19:07 +0000 (20:19 +0000)]
Revert r236529, re-enabling verification of the flashed content as
the underlying problem was dealt with in r237239 (in fact, disabling
verification also actually only made the problem less likely to occur).

12 years agoRevert the part of r236495 that introduced checking of SPI_SR_TXEMPTY
marius [Mon, 18 Jun 2012 20:14:42 +0000 (20:14 +0000)]
Revert the part of r236495 that introduced checking of SPI_SR_TXEMPTY
for TX transfer completion as for reasons unknown this occasionally
causes SPI_SR_RXBUFF and SPI_SR_ENDRX to not rise.
In any case, once the RX part of the transfer is done it's obvious
that the preceding TX part had finished and checking of SPI_SR_TXEMPTY
was introduced to rule out a possible cause for the data corruption
mentioned in r236495 but which didn't turn out to be the problem
anyway.

MFC after: 3 days

12 years agoTry to bring this file closer to style(9).
marius [Mon, 18 Jun 2012 19:47:25 +0000 (19:47 +0000)]
Try to bring this file closer to style(9).

12 years agoUnbreak after r236658 by comparing the right things.
marius [Mon, 18 Jun 2012 19:22:10 +0000 (19:22 +0000)]
Unbreak after r236658 by comparing the right things.

12 years agoRefine r237102 a bit:
marius [Mon, 18 Jun 2012 19:18:31 +0000 (19:18 +0000)]
Refine r237102 a bit:
- Anounce JTAG interfaces deliberately skipped.
- Bring back empty lines too eagerly removed.

MFC after: 3 days

12 years agoDocument the hw.ahci.force tunable here, too, as it's also used by
marius [Mon, 18 Jun 2012 19:14:06 +0000 (19:14 +0000)]
Document the hw.ahci.force tunable here, too, as it's also used by
ataahci(4) and atanvidia(4).

MFC after: 3 days

12 years agoAvoid hard sentence break.
marius [Mon, 18 Jun 2012 19:11:07 +0000 (19:11 +0000)]
Avoid hard sentence break.

MFC after: 3 days

12 years agoAdd rate limitation for SCTP OOTB responses.
tuexen [Mon, 18 Jun 2012 17:11:24 +0000 (17:11 +0000)]
Add rate limitation for SCTP OOTB responses.

MFC after: 3 days

12 years agoCleanup the UDP decapsulation code.
tuexen [Mon, 18 Jun 2012 17:09:39 +0000 (17:09 +0000)]
Cleanup the UDP decapsulation code.

MFC after: 3 days

12 years agoAdd PV chunk and list locking to pmap_page_exists_quick(),
alc [Mon, 18 Jun 2012 16:21:59 +0000 (16:21 +0000)]
Add PV chunk and list locking to pmap_page_exists_quick(),
pmap_page_is_mapped(), and pmap_remove_pages().  These functions
are no longer serialized by the pvh global lock.

12 years agoMake radix lookup on src and dst flow addresses optional
melifaro [Mon, 18 Jun 2012 13:56:36 +0000 (13:56 +0000)]
Make radix lookup on src and dst flow addresses optional
and configurable on per-interface basis.
Remove __inline__ for several functions being called once per
flow (e.g once per 10-20 packets on common traffic flows).
Update manual page to simplify search for BPF data link types.

Sponsored by Yandex LLC

Reviewed by:      glebius
Approved by:      ae(mentor)
MFC after:        2 weeks

12 years agoSimplify IP pointer recovery in case of mbuf reallocation.
melifaro [Mon, 18 Jun 2012 13:50:41 +0000 (13:50 +0000)]
Simplify IP pointer recovery in case of mbuf reallocation.

Reviewed by:     glebius (previous version)
Approved by:     ae(mentor)
MFC after:       2 weeks

12 years agoRemove never used CD/DA_FLAG_TAGGED_QUEUING flags.
mav [Mon, 18 Jun 2012 12:45:35 +0000 (12:45 +0000)]
Remove never used CD/DA_FLAG_TAGGED_QUEUING flags.

MFC after: 1 week

12 years agoFix the previous commit to only copy the data we were asked to and not
phk [Mon, 18 Jun 2012 07:54:10 +0000 (07:54 +0000)]
Fix the previous commit to only copy the data we were asked to and not
twice as much.

Spotted by: Taku YAMAMOTO

12 years agoIn tty_makedev() the following construction:
pho [Mon, 18 Jun 2012 07:34:38 +0000 (07:34 +0000)]
In tty_makedev() the following construction:

dev = make_dev_cred();
dev->si_drv1 = tp;

leaves a small window where the newly created device may be opened
and si_drv1 is NULL.

As this is a vary rare situation, using a lock to close the window
seems overkill. Instead just wait for the assignment of si_drv1.

Suggested by: kib
MFC after: 1 week

12 years agoExtend the radiotap code to be aware of the size of any extra vendor
adrian [Mon, 18 Jun 2012 02:08:04 +0000 (02:08 +0000)]
Extend the radiotap code to be aware of the size of any extra vendor
bitmaps that may occur.

The way this works is:

* the beginning of the radiotap frame has a 32 bit "radiotap" namespace
  bitmap;
* if the vendor bitmap bit is set, then the next bitmap will be interpreted
  as a vendor bitmap;
* this can keep going on and on (ie, more vendor and radiotap namespace
  bitmaps can be added) until the last bitmap with no "more bitmaps" set.

Now, the radiotap code gets its grubby fingers into the supplied
radiotap rx/tx buffer and replaces the channel configuration
for each frame.  I don't know why it's not up to the drivers themselves
to do this, but I digress.  So, if a vendor bitmap (or two, etc) exists,
the offset calculations will be all completely wrong.

This particular patch introduces ieee80211_radiotap_attachv(), which
includes the number of vendor bitmaps (well, any other bitmaps, vendor
or otherwise) between the end of the bitmap/header and the start of the
actual radiotap field entries.  This makes the radiotap calculations
"right", so it correctly calculates where to overwrite the channel
configuration.

The long term fix is to go through and make each driver update the channel
configuration, as some of the fields are already being updated.

That, however, is a longer term fix that will need each driver fixed.

I leave that as an exercise to someone in the future.

12 years agoRoll to the latest 2400/2500 firmware available from the public QLogic
mjacob [Sun, 17 Jun 2012 21:47:24 +0000 (21:47 +0000)]
Roll to the latest 2400/2500 firmware available from the public QLogic
website.

Sponsored by: Spectralogic
MFC after: 1 week

12 years agolibc: Reduce relative relocations in strftime().
jilles [Sun, 17 Jun 2012 21:40:13 +0000 (21:40 +0000)]
libc: Reduce relative relocations in strftime().

12 years agoPrepare for FC-Tape support. This involved doing a lot of little cleanups
mjacob [Sun, 17 Jun 2012 21:39:40 +0000 (21:39 +0000)]
Prepare for FC-Tape support. This involved doing a lot of little cleanups
and crosschecks against firmware documentation. We now check and report
FC firmware attributes and at least are now prepared for the upper 48 bits
of f/w attributes (which are probably for the 8100 or later cards). This
involed changing how inbits and outbits are calculated for varios commands,
hopefully clearer and cleaner. This also caused me to clean up the actual
mailbox register usage. Finally, we are now unconditionally using a CRN
for initiator mode.

A longstanding issue with the 2400/2500 is that they do *not* support
a "Prefer PTP followed by loop", which explains why enabling that
caused the f/w to crash.

A slightly more invasive change is to let the firmware load entirely
drive whether multi_id support is enabled or not.

Sponsored by: Spectralogic
MFC after: 1 week

12 years agoDon't check for race with close on advisory unlock (there is nothing smart we
pjd [Sun, 17 Jun 2012 21:04:22 +0000 (21:04 +0000)]
Don't check for race with close on advisory unlock (there is nothing smart we
can do when such a race occurs). This saves lock/unlock cycle for the filedesc
lock for every advisory unlock operation.

MFC after: 1 month

12 years agoOn certain newer Intel Atom based motherboards, for instance the
phk [Sun, 17 Jun 2012 21:02:48 +0000 (21:02 +0000)]
On certain newer Intel Atom based motherboards, for instance the
D2500CC which I have, syscons in text-mode fails to show the expected
contents due to write errors into video-memory.

At least one of the causes is that we copy from syscons internal buffer
to the video memory with optimized bcopy(9) which uses >16bit operations.

Until now, 32bit and wider operations have always worked on the video
memory, but since I cannot find a single source which says that this
SHALL work, and since these chipsets/bugs are now out there, this
commit changes syscons to always use 16bit copies on i386 & amd64.

This may be relevevant for PR's:
166262
166639
and various other bug reports floating elsewhere on the net, but
I lack hardware to test those.

12 years agoMove the nfsrpc_close() call in ncl_reclaim() for the NFSv4 client
rmacklem [Sun, 17 Jun 2012 18:34:04 +0000 (18:34 +0000)]
Move the nfsrpc_close() call in ncl_reclaim() for the NFSv4 client
to below the vnode_destroy_vobject() call, since that is where
writes are flushed.

Suggested by: kib
MFC after: 1 week

12 years agoExtend the comment about checking for a race with close to explain why
pjd [Sun, 17 Jun 2012 16:59:37 +0000 (16:59 +0000)]
Extend the comment about checking for a race with close to explain why
it is done and why we don't return an error in such case.

Discussed with: kib
MFC after: 1 month

12 years agoIf VOP_ADVLOCK() call or earlier checks failed don't check for a race with
pjd [Sun, 17 Jun 2012 16:32:32 +0000 (16:32 +0000)]
If VOP_ADVLOCK() call or earlier checks failed don't check for a race with
close, because even if we had a race there is nothing to unlock.

Discussed with: kib
MFC after: 1 month

12 years agoResotre LCD brightness level on resuming.
iwasaki [Sun, 17 Jun 2012 16:19:09 +0000 (16:19 +0000)]
Resotre LCD brightness level on resuming.

MFC after: 3 days

12 years agoDisable hwpmc(4) support for Intel Xeon Sandy Bridge (Model 0x2D).
davide [Sun, 17 Jun 2012 13:48:39 +0000 (13:48 +0000)]
Disable hwpmc(4) support for Intel Xeon Sandy Bridge (Model 0x2D).
Due to some differences in MSRs between Xeon Sandy Bridge and Core Sandy
Bridge (Model 0x2A), wrmsr() may generate in a GP# fault exception and so a
panic of the machine.

Approved by: gnn (mentor)
MFC after: 3 days

12 years agoThe variable 'error' in sys_poll() is initialized in declaration to value
davide [Sun, 17 Jun 2012 13:03:50 +0000 (13:03 +0000)]
The variable 'error' in sys_poll() is initialized in declaration to value
zero but in any case is overwritten by successive copyin(), making the
previous initialization useless. Remove this.
As an added bonus this fixes a style(9) bug.

Discussed with: kib
Approved by: gnn (mentor)
MFC after: 3 days

12 years agoRemove end of line whitespace.
joel [Sun, 17 Jun 2012 11:36:28 +0000 (11:36 +0000)]
Remove end of line whitespace.

12 years agoMinor mdoc fixes.
joel [Sun, 17 Jun 2012 11:33:55 +0000 (11:33 +0000)]
Minor mdoc fixes.

12 years agoRemove superfluous paragraph macro.
joel [Sun, 17 Jun 2012 11:04:38 +0000 (11:04 +0000)]
Remove superfluous paragraph macro.

12 years agoAR9287 tidyups:
adrian [Sun, 17 Jun 2012 05:56:27 +0000 (05:56 +0000)]
AR9287 tidyups:

* Add an OS_A_REG_WRITE() routine - analog writes require a 100usec delay
  on AR9280 and later, so create a method to do it.

* Use it for the AR9287 analog writes.

* Re-indent and style(9) the code.

12 years agoAdd an disabled workaround for the AR9285SE.
adrian [Sun, 17 Jun 2012 05:34:41 +0000 (05:34 +0000)]
Add an disabled workaround for the AR9285SE.

This just requires a little HAL change (add a new config parameter) and
some glue in if_ath_pci.c, however I'm leaving this up for someone else
to do.

Obtained from: Qualcomm Atheros

12 years agoBring over the AR9285 specific PCIe suspend/resume/ASPM workarounds.
adrian [Sun, 17 Jun 2012 04:48:47 +0000 (04:48 +0000)]
Bring over the AR9285 specific PCIe suspend/resume/ASPM workarounds.

Obtained from: Qualcomm Atheros, Linux ath9k

12 years agoFix mdoc style nits
eadler [Sun, 17 Jun 2012 03:54:10 +0000 (03:54 +0000)]
Fix mdoc style nits

PR: kern/168910
Submitted by: gjb
Approved by: gjb
MFC after: 3 days
X-MFC-With: r237178

12 years agoAfter some discussion with bschmidt@, it's likely better to just go
adrian [Sun, 17 Jun 2012 03:08:33 +0000 (03:08 +0000)]
After some discussion with bschmidt@, it's likely better to just go
through ieee80211_suspend_all() and ieee80211_resume_all().
All the other wireless drivers are doing that particular dance.

PR: kern/169084

12 years agoattach_generic causes missing devices in /dev when the driver
eadler [Sun, 17 Jun 2012 02:46:27 +0000 (02:46 +0000)]
attach_generic causes missing devices in /dev when the driver
interacts with some non-highpoint controollers. Change attach_generic to
be off by default.

PR: kern/168910
Submitted by: Richard Yao <ryao@gentoo.org>
Approved by: cperciva
No objections by: -hackers
Obtained from: Gentoo FreeBSD
MFC after: 2 weeks

12 years ago.. and this wasn't supposed to be in the previous commit either.
adrian [Sat, 16 Jun 2012 22:28:36 +0000 (22:28 +0000)]
.. and this wasn't supposed to be in the previous commit either.

12 years agooops, remove this, it wasn't supposed to be committed.
adrian [Sat, 16 Jun 2012 22:26:45 +0000 (22:26 +0000)]
oops, remove this, it wasn't supposed to be committed.

12 years agoDo a more targeted check on the page cache and avoid to check the cache
attilio [Sat, 16 Jun 2012 21:39:00 +0000 (21:39 +0000)]
Do a more targeted check on the page cache and avoid to check the cache
pointer directly in vnode_pager_setsize() by using newly introduced
vm_page_is_cached() function.

Reviewed by: alc
MFC after: 2 weeks
X-MFC: r234039,234064

12 years agoA few nitpicks:
adrian [Sat, 16 Jun 2012 21:37:15 +0000 (21:37 +0000)]
A few nitpicks:

* Use ATH_RC_NUM instead of '4' when iterating over the ratecontrol series
  array.

* A few style(9) fixes, hopefully no regressions here.

* Add some comments that better describe what's going on.

12 years agoFix build.
kib [Sat, 16 Jun 2012 20:49:08 +0000 (20:49 +0000)]
Fix build.

12 years agoThe page flag PGA_WRITEABLE is set and cleared exclusively by the pmap
alc [Sat, 16 Jun 2012 18:56:19 +0000 (18:56 +0000)]
The page flag PGA_WRITEABLE is set and cleared exclusively by the pmap
layer, but it is read directly by the MI VM layer.  This change introduces
pmap_page_is_write_mapped() in order to completely encapsulate all direct
access to PGA_WRITEABLE in the pmap layer.

Aesthetics aside, I am making this change because amd64 will likely begin
using an alternative method to track write mappings, and having
pmap_page_is_write_mapped() in place allows me to make such a change
without further modification to the MI VM layer.

As an added bonus, tidy up some nearby comments concerning page flags.

Reviewed by: kib
MFC after: 6 weeks

12 years agoIn CTFCONVERT_CMD initialization, check that ${MAKE_VERSION} is defined
rmh [Sat, 16 Jun 2012 16:51:42 +0000 (16:51 +0000)]
In CTFCONVERT_CMD initialization, check that ${MAKE_VERSION} is defined
before using it. Bootstrap make (as built by usr.bin/make/Makefile.dist)
does not define this variable, but it needs to parse bsd.own.mk in order
to build a complete make.

12 years agoUse time_uptime instead of getnanotime for accouting integer number of seconds.
melifaro [Sat, 16 Jun 2012 13:55:31 +0000 (13:55 +0000)]
Use time_uptime instead of getnanotime for accouting integer number of seconds.

Reviewed by:     glebius
Approved by:     ae(mentor)
MFC after:       1 week

12 years agoSet netflow v9 observation domain value to fib number instead of node id.
melifaro [Sat, 16 Jun 2012 13:53:14 +0000 (13:53 +0000)]
Set netflow v9 observation domain value to fib number instead of node id.
This fixes multi-fib netflow v9 export.

Reviewed by:     glebius
Approved by:     kib(mentor)
MFC after:       1 week

12 years agoFix improper L4 header handling for IPv6 packets passed via DLT_RAW.
melifaro [Sat, 16 Jun 2012 13:51:01 +0000 (13:51 +0000)]
Fix improper L4 header handling for IPv6 packets passed via DLT_RAW.

Reported by:     Emil Muratov <gpm@hotplug.ru>
Reviewed by:     glebius
Approved by:     ae(mentor)
MFC after:       1 week

12 years agoMore style.
kib [Sat, 16 Jun 2012 13:11:10 +0000 (13:11 +0000)]
More style.

MFC after: 3 days

12 years agoRevert part of the r235740 which changed separate allocation of the
kib [Sat, 16 Jun 2012 13:10:22 +0000 (13:10 +0000)]
Revert part of the r235740 which changed separate allocation of the
string buffer for each linelist l_line into one large string. Since
linelists parsed out during the previous passes store the pointers to
previously allocated l_lines, the reallocation caused undefined
behaviour on accessing the buffers, and quite deterministic fault on
freeing them (in mountd(8) startup).

This fixes reading of netgroup(5) file which contains more then one
netgroup.

Discussed with: ghelmer
MFC after: 3 days

12 years agoRevert r237073. 'td' can be NULL here.
pjd [Sat, 16 Jun 2012 12:56:36 +0000 (12:56 +0000)]
Revert r237073. 'td' can be NULL here.

MFC after: 1 month

12 years agomandoc fixes.
joel [Sat, 16 Jun 2012 06:38:11 +0000 (06:38 +0000)]
mandoc fixes.

Obtained from: OpenBSD

12 years agoShuffle some more fields in ath_buf so it's not too big.
adrian [Sat, 16 Jun 2012 04:41:35 +0000 (04:41 +0000)]
Shuffle some more fields in ath_buf so it's not too big.

This shaves off 20 bytes - from 288 bytes to 268 bytes.

However, it's still too big.

12 years agoShave four (or eight) bytes off of ath_buf - this field isn't used.
adrian [Sat, 16 Jun 2012 04:36:08 +0000 (04:36 +0000)]
Shave four (or eight) bytes off of ath_buf - this field isn't used.

12 years agoThrow this debug behind bootverbose. The information isn't all that
imp [Sat, 16 Jun 2012 04:34:46 +0000 (04:34 +0000)]
Throw this debug behind bootverbose.  The information isn't all that
exciting once the initial board bring up is over.

12 years agoConvert athdebug to use the 64 bit dev.ath.X.debug sysctl.
adrian [Fri, 15 Jun 2012 20:08:13 +0000 (20:08 +0000)]
Convert athdebug to use the 64 bit dev.ath.X.debug sysctl.

12 years agoMinor wording change. The previous commit message should have included:
brooks [Fri, 15 Jun 2012 19:42:49 +0000 (19:42 +0000)]
Minor wording change.  The previous commit message should have included:

Sponsored by: DARPA, AFRL

12 years agoMFP4: 212854, 212854
brooks [Fri, 15 Jun 2012 19:40:59 +0000 (19:40 +0000)]
MFP4: 212854, 212854

Add a LOCAL_LIB_DIRS variable to complement the existing LOCAL_DIRS
and LOCAL_TOOL_DIRS variables.  Directories in LOCAL_LIB_DIRS are
built at the end of the _generic_libs target.

Reviewed by: imp (212854)

12 years agoRemove stray line from merge.
imp [Fri, 15 Jun 2012 16:50:32 +0000 (16:50 +0000)]
Remove stray line from merge.

12 years agoOops - use the actual 11n enable option.
adrian [Fri, 15 Jun 2012 15:32:16 +0000 (15:32 +0000)]
Oops - use the actual 11n enable option.

12 years agoIf debug values were set, the default from tval floated
mjacob [Fri, 15 Jun 2012 15:28:15 +0000 (15:28 +0000)]
If debug values were set, the default from tval floated
down and triggered an attempt to set multiple virtual
ports whether you wanted them or not.

MFC after: 3 days

12 years agoOne more attempt to make prototypes formated according to style(9), which
pjd [Fri, 15 Jun 2012 10:00:29 +0000 (10:00 +0000)]
One more attempt to make prototypes formated according to style(9), which
holefully recovers from the "worse than useless" state.

Reported by: bde
MFC after: 1 month

12 years agoFixed an example that set IP_ONESBCAST socket option to actually work,
ru [Fri, 15 Jun 2012 09:12:47 +0000 (09:12 +0000)]
Fixed an example that set IP_ONESBCAST socket option to actually work,
and not return EINVAL.