]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
12 years agoA refinement of change 232351 to avoid a race with a forcible unmount.
mckusick [Wed, 28 Mar 2012 21:21:19 +0000 (21:21 +0000)]
A refinement of change 232351 to avoid a race with a forcible unmount.
While we have a snapshot vnode unlocked to avoid a deadlock with another
inode in the same inode block being updated, the filesystem containing
it may be forcibly unmounted. When that happens the snapshot vnode is
revoked. We need to check for that condition and fail appropriately.

This change will be included along with 232351 when it is MFC'ed to 9.

Spotted by:  kib
Reviewed by: kib

12 years agoAdd software PMC support.
fabient [Wed, 28 Mar 2012 20:58:30 +0000 (20:58 +0000)]
Add software PMC support.

New kernel events can be added at various location for sampling or counting.
This will for example allow easy system profiling whatever the processor is
with known tools like pmcstat(8).

Simultaneous usage of software PMC and hardware PMC is possible, for example
looking at the lock acquire failure, page fault while sampling on
instructions.

Sponsored by: NETASQ
MFC after: 1 month

12 years agoKeep track of the mount point associated with a special device
mckusick [Wed, 28 Mar 2012 20:49:11 +0000 (20:49 +0000)]
Keep track of the mount point associated with a special device
to enable the collection of counts of synchronous and asynchronous
reads and writes for its associated filesystem. The counts are
displayed using `mount -v'.

Ensure that buffers used for paging indicate the vnode from
which they are operating so that counts of paging I/O operations
from the filesystem are collected.

This checkin only adds the setting of the mount point for the
UFS/FFS filesystem, but it would be trivial to add the setting
and clearing of the mount point at filesystem mount/unmount
time for other filesystems too.

Reviewed by: kib

12 years agoFix Fo arguments.
joel [Wed, 28 Mar 2012 19:20:28 +0000 (19:20 +0000)]
Fix Fo arguments.

Reviewed by: gabor

12 years agoAllocate the ioapics[] array dynamically since it is only needed for the
jhb [Wed, 28 Mar 2012 18:53:48 +0000 (18:53 +0000)]
Allocate the ioapics[] array dynamically since it is only needed for the
duration of madt_setup_io().  This avoids having the array take up
permanent space in the BSS.

Inspired by: bde
MFC after: 2 weeks

12 years agoEnsure consistent target IDs for direct-attached devices.
jimharris [Wed, 28 Mar 2012 18:38:13 +0000 (18:38 +0000)]
Ensure consistent target IDs for direct-attached devices.

Sponsored by: Intel
Reported by: sbruno, <rpokala at panasas dot com>
Tested by: <rpokala at panasas dot com>
Reviewed by: scottl
Approved by: scottl
MFC after: 3 days

12 years agoAdd a PNP ID for Japanese 106-key keyboard.
jkim [Wed, 28 Mar 2012 17:58:37 +0000 (17:58 +0000)]
Add a PNP ID for Japanese 106-key keyboard.

PR: kern/166459
MFC after: 3 days

12 years agoMore PMAP performance improvements: skip 256 MB segments entirely if they
nwhitehorn [Wed, 28 Mar 2012 17:25:29 +0000 (17:25 +0000)]
More PMAP performance improvements: skip 256 MB segments entirely if they
are are not mapped during ranged operations and reduce the scope of the
tlbie lock only to the actual tlbie instruction instead of the entire
sequence. There are a few more optimization possibilities here as well.

12 years agoMFV: r233615
jkim [Wed, 28 Mar 2012 17:21:59 +0000 (17:21 +0000)]
MFV: r233615

Revert r233555 and apply a fix for the reference counting regressions.

Tested by: andreast, lme, nwhitehorn,
Sevan / Venture37 (venture37 at gmail dot com)
Submitted by: Robert Moore (robert dot moore at intel dot com)

12 years agoMove the DTrace return IDT vector back up from 0x20 to 0x92. The 0x20
jhb [Wed, 28 Mar 2012 16:32:17 +0000 (16:32 +0000)]
Move the DTrace return IDT vector back up from 0x20 to 0x92.  The 0x20
vector is currently dedicated to servicing IRQ 0 from the 8259A's, so
it shouldn't be overloaded for DTrace.

Tested by: rstone
MFC after: 1 week

12 years ago- Support inlined location in calltree output.
fabient [Wed, 28 Mar 2012 16:23:40 +0000 (16:23 +0000)]
- Support inlined location in calltree output.
  In case of multiple level of inlining all the locations are flattened.
  Require recent binutils/addr2line (head works or binutils from ports
  with the right $PATH order).
- Multiple fixes in the calltree output (recursion case, ...)
- Fix the calltree top view that previously hide some shared nodes.

Tested with Kcachegrind(kdesdk4)/qcachegrind(head).

Sponsored by: NETASQ

12 years agoDo trivial reformatting of the comment to record the missed commit
kib [Wed, 28 Mar 2012 14:16:15 +0000 (14:16 +0000)]
Do trivial reformatting of the comment to record the missed commit
message for r233609:
Restore the writes of atimes, quotas and superblock from syncer vnode.

Noted by:   rdivacky

12 years agoReviewed by: bde, mckusick
kib [Wed, 28 Mar 2012 14:06:47 +0000 (14:06 +0000)]
Reviewed by: bde, mckusick
Tested by: pho
MFC after: 2 weeks

12 years agoMicrooptimize: in qsync loop over mount vnodes, only unlock mount
kib [Wed, 28 Mar 2012 13:56:18 +0000 (13:56 +0000)]
Microoptimize: in qsync loop over mount vnodes, only unlock mount
interlock after we committed to try to vget() the vnode.

Submitted by: bde
Reviewed by: mckusick
Tested by: pho
MFC after: 1 week

12 years agoUpdate comment.
kib [Wed, 28 Mar 2012 13:47:07 +0000 (13:47 +0000)]
Update comment.

MFC after: 3 days

12 years agoStop HDA controller polling callout on suspend and reset it on resume.
mav [Wed, 28 Mar 2012 13:28:09 +0000 (13:28 +0000)]
Stop HDA controller polling callout on suspend and reset it on resume.

PR: kern/166382
MFC after: 1 week

12 years agoPermit tcpdrop in VNET jails.
zec [Wed, 28 Mar 2012 12:30:16 +0000 (12:30 +0000)]
Permit tcpdrop in VNET jails.

Submitted by: Miljenko Mikuc
MFC after: 3 days

12 years agoCorrectly expose xlocale functions if people include the headers in the wrong
theraven [Wed, 28 Mar 2012 12:11:54 +0000 (12:11 +0000)]
Correctly expose xlocale functions if people include the headers in the wrong
order (as some ports apparently do).

Approved by: dim (mentor)

12 years agoHonor the net.inet.udp.checksum sysctl when using SCTP/UDP/IPv4
tuexen [Wed, 28 Mar 2012 08:11:46 +0000 (08:11 +0000)]
Honor the net.inet.udp.checksum sysctl when using SCTP/UDP/IPv4
encapsulation.
MFCing requires MFCing http://svn.freebsd.org/changeset/base/233554
MFC after: 2 weeks

12 years agoRemove unnecessary #if as the software workaround for PCI protocol
yongari [Wed, 28 Mar 2012 01:52:38 +0000 (01:52 +0000)]
Remove unnecessary #if as the software workaround for PCI protocol
violation should be activated unless the system is cold-booted
after updating EEPROM.
The PCI protocol violation happens only when established link is
10Mbps so the workaround should be updated whenever link state
change is detected.  Previously the workaround was activated only
when user checks current media status with ifconfig(8).

12 years agoLoad entire EEPROM contents in device attach time and verify
yongari [Wed, 28 Mar 2012 01:27:27 +0000 (01:27 +0000)]
Load entire EEPROM contents in device attach time and verify
whether the checksum of EEPROM is valid or not.  Because driver
heavily relies on EEPROM information when it selectively enables
features/workarounds, it would be helpful to know whether driver
sees valid EEPROM.
While I'm here remove all other EEPROM accesses since the entire
EEPROM is loaded at device attach time.

MFC after: 2 weeks

12 years agoPartially revert r223608 and selectively allow microcode loading
yongari [Wed, 28 Mar 2012 01:08:55 +0000 (01:08 +0000)]
Partially revert r223608 and selectively allow microcode loading
for 82550C.  For 82550 controllers this change restores CPUSaver
microcode loading.  Due to silicon bug on 82550 and 82550C with
server extension, these controllers seem to require CPUSaver
microcode to receive fragmented UDP datagrams.  However the
microcode shouldn't be used on client featured 82550C as it locks
up the controller.  In addition, client featured 82550C does not
have the silicon bug.  Also clear temporary memory used for
microcode loading since the same memory area is used for other
commands.
While I'm here use 82550C in probe message instead of generic
82550.

Reported by: Andreas Longwitz <longwitz <> incore de>
Tested by: Andreas Longwitz <longwitz <> incore de>
MFC after: 2 weeks

12 years ago- Do not clobber softc when psm(4) is reintialized.
jkim [Tue, 27 Mar 2012 23:43:01 +0000 (23:43 +0000)]
- Do not clobber softc when psm(4) is reintialized.
- Make INITAFTERSUSPEND flag independent of HOOKRESUME flag.
- Automatically set INITAFTERSUSPEND flag when ALPS GlidePoint is detected.
- Always probe Synaptics Touchpad.  Allow MOUSE_SYN_GETHWINFO ioctl and
automatically set INITAFTERSUSPEND flag when a supported device is detected,
regardless of "hw.psm.synaptics_support" tunable setting.
- Update psm(4) to reflect the above changes.
- Remove long-time defunct SYNCHACK flag while I am in the neighborhood.

MFC after: 1 month

12 years agoRestore interrupt state after executing AcpiEnterSleepState().
jkim [Tue, 27 Mar 2012 23:26:58 +0000 (23:26 +0000)]
Restore interrupt state after executing AcpiEnterSleepState().

12 years agoAllow (with a license warning) "options ZFS" to work in static kernels.
peter [Tue, 27 Mar 2012 21:23:56 +0000 (21:23 +0000)]
Allow (with a license warning) "options ZFS" to work in static kernels.

The 'make depend' rules have to use custom -I paths for the special compat
includes for the opensolaris/zfs headers.

This option will pull in the couple of files that are shared with dtrace,
but they appear to correctly use the MODULE_VERSION/MODULE_DEPEND rules
so loader should do the right thing, as should kldload.

Reviewed by: pjd (glanced at)

12 years agomdoc: add missing El macro.
joel [Tue, 27 Mar 2012 20:50:14 +0000 (20:50 +0000)]
mdoc: add missing El macro.

12 years agoMinor indentation and paragraph nits.
joel [Tue, 27 Mar 2012 20:39:49 +0000 (20:39 +0000)]
Minor indentation and paragraph nits.

12 years agoMake ReiserFS MPSAFE
dumbbell [Tue, 27 Mar 2012 20:36:03 +0000 (20:36 +0000)]
Make ReiserFS MPSAFE

Most functions seemed to be already fine w.r.t. what's done in msdosfs.

MFC after: 1 month

12 years agoOnly use macros inside a reference block.
joel [Tue, 27 Mar 2012 20:10:13 +0000 (20:10 +0000)]
Only use macros inside a reference block.

Discussed with: brueffer

12 years agostrip (R) to match manpage and pci_vendors
bschmidt [Tue, 27 Mar 2012 18:27:45 +0000 (18:27 +0000)]
strip (R) to match manpage and pci_vendors

MFC after: 1 week

12 years agoFix size of PCI softc.
jchandra [Tue, 27 Mar 2012 18:26:35 +0000 (18:26 +0000)]
Fix size of PCI softc.

12 years agoFix crash on VirtualBox (and probably on some real hardware):
gonzo [Tue, 27 Mar 2012 18:22:14 +0000 (18:22 +0000)]
Fix crash on VirtualBox (and probably on some real hardware):

- Do not cover error returned by pmc_core_initialize with the
    result of pmc_uncore_initialize, fail right away.
- Give a user something to report instead failing silently

Reported by: Alexandr Kovalenko <never@nevermind.kiev.ua>

12 years agoAdd a list of available devices which matches the names shown by pciconf.
bschmidt [Tue, 27 Mar 2012 18:17:22 +0000 (18:17 +0000)]
Add a list of available devices which matches the names shown by pciconf.
While here add 2 missing firmware modules.

MFC after: 1 week

12 years agoAdd support for 6150 series devices.
bschmidt [Tue, 27 Mar 2012 17:45:50 +0000 (17:45 +0000)]
Add support for 6150 series devices.

Tested by: Shane Riddle <sh4neriddle at yahoo dot com>
MFC after: 1 week

12 years agoRemove useless Ta macro.
joel [Tue, 27 Mar 2012 15:55:56 +0000 (15:55 +0000)]
Remove useless Ta macro.

12 years agoResource allocation for XLP SoC SDHCI slots
jchandra [Tue, 27 Mar 2012 15:43:32 +0000 (15:43 +0000)]
Resource allocation for XLP SoC SDHCI slots

The on-chip SD slots do not have PCI BARs corresponding to them, so
this has to be handled in the custom SoC memory allocation.

Provide memory resource for rids corresponding to BAR 0 and 1 in
the custom allocation code.

12 years agoUpdate memory and resource allocation code for SoC devices
jchandra [Tue, 27 Mar 2012 15:39:55 +0000 (15:39 +0000)]
Update memory and resource allocation code for SoC devices

The XLP on-chip devices have PCI configuration headers, but some of the
devices need custom resource allocation code.
- devices with no MEM/IO BARs with registers in PCIe extended reg
  space have to be handled in memory resource allocation
- devices without INTPIN/INTLINE in PCI header can be supported
  by having these faked with a shadow register.
- Some devices does not allow 8/16 bit access to the register space,
  he default bus space cannot be used for these.

Subclass pci and override attach and resource allocation methods to
take care of this.

Remove earlier code which did this partially.

12 years agoMFV: r233551
jkim [Tue, 27 Mar 2012 15:27:20 +0000 (15:27 +0000)]
MFV: r233551

Fix two possible memory leaks in error path.

Obtained from: ACPICA

12 years agoMinor mdoc nit.
joel [Tue, 27 Mar 2012 15:22:10 +0000 (15:22 +0000)]
Minor mdoc nit.

12 years agoNOR flash driver for XLP.
jchandra [Tue, 27 Mar 2012 15:16:38 +0000 (15:16 +0000)]
NOR flash driver for XLP.

The NOR interface on the SoC appears on the top level PCI bus. Add
a simple driver for this.

12 years agoMFV: r233550
jkim [Tue, 27 Mar 2012 15:15:30 +0000 (15:15 +0000)]
MFV: r233550

Temporarily revert an upstream commit.  This change caused regressions for
too many laptop users.  Especially, automatic repair for broken _BIF caused
strange reference counting issues and kernal panics.  This reverts:

https://github.com/otcshare/acpica/commit/c995fed15ab41f6feae1299876271ea330f5c1c5

12 years agoExport the udp_cksum sysctl for upcoming SCTP work. Rather than always,
bz [Tue, 27 Mar 2012 15:14:29 +0000 (15:14 +0000)]
Export the udp_cksum sysctl for upcoming SCTP work.  Rather than always,
SCTP will only do IPv4 UDP checksum calculation as defined by the host
policy.  When tunneling SCTP always calculates the inner checksum already
so not doing the outer UDP can save cycles.

While here virtualize the variable.

Requested by: tuexen
MFC after: 2 weeks

12 years agoCFI fixes for big endian archs.
jchandra [Tue, 27 Mar 2012 15:13:12 +0000 (15:13 +0000)]
CFI fixes for big endian archs.

The flash commands and responses are little-endian and have to be
byte swapped on big-endian systems.  However the raw read of data
need not be swapped.

Make the cfi_read and cfi_write do the swapping, and provide a
cfi_read_raw which does not byte swap for reading data from
flash.

12 years agoInstead of only iterating over the set of known SDT probes when sdt.ko is
rstone [Tue, 27 Mar 2012 15:07:43 +0000 (15:07 +0000)]
Instead of only iterating over the set of known SDT probes when sdt.ko is
loaded and unloaded, also have sdt.ko register callbacks with kern_sdt.c
that will be called when a newly loaded KLD module adds more probes or
a module with probes is unloaded.

This fixes two issues: first, if a module with SDT probes was loaded after
sdt.ko was loaded, those new probes would not be available in DTrace.
Second, if a module with SDT probes was unloaded while sdt.ko was loaded,
the kernel would panic the next time DTrace had cause to try and do
anything with the no-longer-existent probes.

This makes it possible to create SDT probes in KLD modules, although there
are still two caveats: first, any SDT probes in a KLD module must be part
of a DTrace provider that is defined in that module.  At present DTrace
only destroys probes when the provider is destroyed, so you can still
panic the system if a KLD module creates new probes in a provider from a
different module(including the kernel) and then unload the the first module.

Second, the system will panic if you unload a module containing SDT probes
while there is an active D script that has enabled those probes.

MFC after: 1 month

12 years agoXLP UART code udpate.
jchandra [Tue, 27 Mar 2012 14:48:40 +0000 (14:48 +0000)]
XLP UART code udpate.

Move XLP PCI UART device to sys/mips/nlm/dev/ directory.  Other
drivers for the XLP SoC devices will be added here as well.
Update uart_cpu_xlp.c and uart_pci_xlp.c use macros for uart port,
speed and IO frequency.

12 years agoUse VM_MEMATTR_UNCACHEABLE instead of VM_MEMATTR_UNCACHED for UC mappings.
jhb [Tue, 27 Mar 2012 14:24:29 +0000 (14:24 +0000)]
Use VM_MEMATTR_UNCACHEABLE instead of VM_MEMATTR_UNCACHED for UC mappings.
VM_MEMATTR_UNCACHED is actually the x86-specific UC- mode (where a WC
MTRR can override the PAT setting).

12 years agoPrevent rtld_verify_object_versions() from being called several times
kib [Tue, 27 Mar 2012 14:10:15 +0000 (14:10 +0000)]
Prevent rtld_verify_object_versions() from being called several times
for the same object. This can happen when object is a dependency of the
dlopen()ed dso. When called several times, we waste time due to unneeded
processing, and memory, because obj->vertab is allocated anew on each
iteration.

Reviewed by: kan
MFC after: 2 weeks

12 years agoxlpge : driver for XLP network accelerator
jchandra [Tue, 27 Mar 2012 14:05:12 +0000 (14:05 +0000)]
xlpge : driver for XLP network accelerator

Features:
- network driver for the four 10G interfaces and two management ports
  on XLP 8xx.
- Support 4xx and 3xx variants of the processor.
- Source code and firmware building for the 16 mips32r2 micro-code engines
  in the Network Accelerator.
- Basic initialization code for Packet ordering Engine.

Submitted by: Prabhath Raman (prabhath at netlogicmicro com)
[refactored and fixed up for style by jchandra]

12 years agoFix random deadlock on pmcstat exit:
fabient [Tue, 27 Mar 2012 14:02:22 +0000 (14:02 +0000)]
Fix random deadlock on pmcstat exit:
- Exit the thread when soft shutdown is requested
- Wakeup owner thread.

Reproduced/tested by looping pmcstat measurement:
pmcstat -S instructions -O/tmp/test ls

MFC after: 1 week

12 years agoSupport for EEPROM and CPLD on XLP EVP boards.
jchandra [Tue, 27 Mar 2012 12:25:47 +0000 (12:25 +0000)]
Support for EEPROM and CPLD on XLP EVP boards.

On XLP evaluation platform, the board information is stored
in an I2C eeprom and the network block configuration is available
from a CPLD connected to the GBU (NOR flash bus). Add support
for both of these.

12 years agoOpencrypto driver for XLP Security and RSA/ECC blocks
jchandra [Tue, 27 Mar 2012 11:43:46 +0000 (11:43 +0000)]
Opencrypto driver for XLP Security and RSA/ECC blocks

Support for the Security and RSA blocks on XLP SoC. Even though
the XLP supports many more algorithms, only the ones supported
in OCF have been added.

Submitted by: Venkatesh J. V. (venkatesh at netlogicmicro com)

12 years agoI2C support for XLP, add hints for I2C devices and update PCI resource
jchandra [Tue, 27 Mar 2012 11:17:04 +0000 (11:17 +0000)]
I2C support for XLP, add hints for I2C devices and update PCI resource
allocation code.

12 years agoDriver for OpenCores I2C controller.
jchandra [Tue, 27 Mar 2012 10:44:32 +0000 (10:44 +0000)]
Driver for OpenCores I2C controller.

Add a Simple polled driver iicoc for the OpenCores I2C controller. This
is used in Netlogic XLP processors.

Submitted by: Sreekanth M. S. (kanthms at netlogicmicro com)

12 years agoFix property name, r233537 used mime-type instead of svn:mime-type
jchandra [Tue, 27 Mar 2012 10:00:33 +0000 (10:00 +0000)]
Fix property name, r233537 used mime-type instead of svn:mime-type

12 years agoMove driver for DS1374 RTC to sys/dev/iicbus
jchandra [Tue, 27 Mar 2012 09:48:18 +0000 (09:48 +0000)]
Move driver for DS1374 RTC to sys/dev/iicbus

The earlier version of the driver is sys/mips/rmi/dev/iic/ds1374u.c
Convert all references to ds1374u to ds1374, and use DEVMETHOD_END.
Also update the license header as Netlogic is now Broadcom.

12 years agoXLP PCIe code update.
jchandra [Tue, 27 Mar 2012 07:57:41 +0000 (07:57 +0000)]
XLP PCIe code update.

- XLP supports hardware swap for PCIe IO/MEM accesses. Since we
  are in big-endian mode, enable hardware swap and use the normal
  bus space.
- move some printfs to bootverbose, and remove others.
- fix SoC device resource allocation code
- Do not use '|' while updating PCIE_BRIDGE_MSI_ADDRL
- some style fixes

In collaboration with: Venkatesh J. V. (venkatesh at netlogicmicro com)

12 years agoUpdate the L1D cache flush sequence when enabling threads.
jchandra [Tue, 27 Mar 2012 07:51:42 +0000 (07:51 +0000)]
Update the L1D cache flush sequence when enabling threads.

Added more comments to the code.

12 years agoSwitch to interrupt based message handling for XLP 8xx B0.
jchandra [Tue, 27 Mar 2012 07:47:13 +0000 (07:47 +0000)]
Switch to interrupt based message handling for XLP 8xx B0.

Fixup some style issues in the file as well.

12 years agoSupport for XLP4xx and XLP 8xx B0 revision
jchandra [Tue, 27 Mar 2012 07:39:05 +0000 (07:39 +0000)]
Support for XLP4xx and XLP 8xx B0 revision

- Add 4xx processor IDs, add workaround in CPU detection code.
- Update frequency detection code for XLP 8xx.
- Add setting device frequency code.
- Update processor ID checking code.

12 years agoFixes to the XLP startup code.
jchandra [Tue, 27 Mar 2012 07:34:27 +0000 (07:34 +0000)]
Fixes to the XLP startup code.

Changes are:
- Correct the order of calling init functions.
- Fix up checking excluding reset area.

12 years agoCorrect the ordering of tid/crypto ic_name.
adrian [Tue, 27 Mar 2012 04:15:38 +0000 (04:15 +0000)]
Correct the ordering of tid/crypto ic_name.

Because the code lacks all the GNU extensions to printf() format stuff,
the compiler doesn't helpfully tell us that I messed up in a previous
commit.

Pointy hat to: adrian, who likely only cares about this because he's the
  only one who bothers flipping on net80211 debugging.

12 years agoMake sure to call vm_page_dirty() before the pmap lock is released to
nwhitehorn [Tue, 27 Mar 2012 01:26:00 +0000 (01:26 +0000)]
Make sure to call vm_page_dirty() before the pmap lock is released to
prevent a race where another process could conclude the page was clean.

Submitted by: alc

12 years agoMore PMAP concurrency improvements: replace the table lock and (almost) all
nwhitehorn [Tue, 27 Mar 2012 01:24:18 +0000 (01:24 +0000)]
More PMAP concurrency improvements: replace the table lock and (almost) all
uses of the page queues mutex with a new rwlock that protects the page
table and the PV lists. This reduces system time during a parallel
buildworld by 35%.

Reviewed by: alc

12 years ago- For o32 ABI get arguments from the stack
gonzo [Mon, 26 Mar 2012 21:47:06 +0000 (21:47 +0000)]
- For o32 ABI get arguments from the stack
- Clear CPU_DTRACE_FAULT flag in userland backtrace routine. It just
   means we hit wrong memory region and should stop.

12 years agoHandle MIPS .reginfo section as ELF_T_BYTE
gonzo [Mon, 26 Mar 2012 21:31:57 +0000 (21:31 +0000)]
Handle MIPS .reginfo section as ELF_T_BYTE

12 years agoAdd .reginfo section entry
gonzo [Mon, 26 Mar 2012 21:26:23 +0000 (21:26 +0000)]
Add .reginfo section entry

12 years agomdoc: correct .Bd/.Bl arguments.
joel [Mon, 26 Mar 2012 21:22:53 +0000 (21:22 +0000)]
mdoc: correct .Bd/.Bl arguments.

Reviewed by: brueffer

12 years agoProperly cast 64-bit dofhp_dof to pointer.
gonzo [Mon, 26 Mar 2012 21:22:51 +0000 (21:22 +0000)]
Properly cast 64-bit dofhp_dof to pointer.

For i386 this change is no-op. For AMD64 it was tested with DTrace test
suite: results are the same from the test run before the change and after

12 years agomdoc: sort prologue macros.
joel [Mon, 26 Mar 2012 19:23:57 +0000 (19:23 +0000)]
mdoc: sort prologue macros.

12 years agoRegister signal 33 explicitly as reserved by real-time library, and
rmh [Mon, 26 Mar 2012 19:12:09 +0000 (19:12 +0000)]
Register signal 33 explicitly as reserved by real-time library, and
use it by its new name (SIGLIBRT) rather than internal definition
in librt (SIGSERVICE).

Approved by: davidxu, arch

12 years agomdoc: remove unknown macro.
joel [Mon, 26 Mar 2012 19:06:59 +0000 (19:06 +0000)]
mdoc: remove unknown macro.

12 years agoRemove second consts in r233288 in order to appease C++ compilers.
marius [Mon, 26 Mar 2012 18:22:04 +0000 (18:22 +0000)]
Remove second consts in r233288 in order to appease C++ compilers.
While at it, remove some style(9) bugs in libkern.h.

Submitted by: kan

12 years agolibthr: In the atfork handlers for signals, do not skip the last signal.
jilles [Mon, 26 Mar 2012 17:05:26 +0000 (17:05 +0000)]
libthr: In the atfork handlers for signals, do not skip the last signal.

_SIG_MAXSIG works a bit unexpectedly: signals 1 till _SIG_MAXSIG are valid,
both bounds inclusive.

Reviewed by: davidxu
MFC after: 1 week

12 years agomdoc: Remove tabs in non-literal context.
joel [Mon, 26 Mar 2012 16:40:45 +0000 (16:40 +0000)]
mdoc: Remove tabs in non-literal context.

12 years agoUse the assigned sequence number when checking if a retried packet is
adrian [Mon, 26 Mar 2012 16:05:19 +0000 (16:05 +0000)]
Use the assigned sequence number when checking if a retried packet is
within the BAW.

This regression was introduced in ane earlier commit by me to fix the
BAW seqno allocation-but-not-insertion-into-BAW race.  Since it was only
ever using the to-be allocated sequence number, any frame retries
with the first frame in the BAW still in the software queue would
have constantly failed, as ni_txseqs[tid] would always be outside
the BAW.

TODO:

* Extract out the mostly common code here in the agg and non-agg ADDBA
  case and stuff it into a single function.

PR: kern/166357

12 years agomdoc: remove empty lines.
joel [Mon, 26 Mar 2012 15:30:28 +0000 (15:30 +0000)]
mdoc: remove empty lines.

12 years agoThis string should be quoted.
joel [Mon, 26 Mar 2012 15:29:02 +0000 (15:29 +0000)]
This string should be quoted.

Noticed by: brueffer

12 years agomdoc: terminate quoted strings.
joel [Mon, 26 Mar 2012 15:18:14 +0000 (15:18 +0000)]
mdoc: terminate quoted strings.

Reviewed by: brueffer

12 years agoFix date.
joel [Mon, 26 Mar 2012 14:56:23 +0000 (14:56 +0000)]
Fix date.

12 years agoUse program exit status as pam_exec return code (optional)
dumbbell [Mon, 26 Mar 2012 12:18:15 +0000 (12:18 +0000)]
Use program exit status as pam_exec return code (optional)

pam_exec(8) now accepts a new option "return_prog_exit_status". When
set, the program exit status is used as the pam_exec return code. It
allows the program to tell why the step failed (eg. user unknown).
However, if it exits with a code not allowed by the calling PAM service
module function (see $PAM_SM_FUNC below), a warning is logged and
PAM_SERVICE_ERR is returned.

The following changes are related to this new feature but they apply no
matter if the "return_prog_exit_status" option is set or not.

The environment passed to the program is extended:
    o  $PAM_SM_FUNC contains the name of the PAM service module function
       (eg. pam_sm_authenticate).
    o  All valid PAM return codes' numerical values are available
       through variables named after the return code name. For instance,
       $PAM_SUCCESS, $PAM_USER_UNKNOWN or $PAM_PERM_DENIED.

pam_exec return code better reflects what went on:
    o  If the program exits with !0, the return code is now
       PAM_PERM_DENIED, not PAM_SYSTEM_ERR.
    o  If the program fails because of a signal (WIFSIGNALED) or doesn't
       terminate normally (!WIFEXITED), the return code is now
       PAM_SERVICE_ERR, not PAM_SYSTEM_ERR.
    o  If a syscall in pam_exec fails, the return code remains
       PAM_SYSTEM_ERR.

waitpid(2) is called in a loop. If it returns because of EINTR, do it
again. Before, it would return PAM_SYSTEM_ERR without waiting for the
child to exit.

Several log messages now include the PAM service module function name.

The man page is updated accordingly.

Reviewed by: gleb@, des@
Sponsored by: Yakaz (http://www.yakaz.com)
MFC after: 2 weeks

12 years agoAdd MySQL port 3306
ivoras [Mon, 26 Mar 2012 11:48:47 +0000 (11:48 +0000)]
Add MySQL port 3306

Obtained from: http://www.iana.org/assignments/port-numbers
MFC after: 1 week

12 years ago- Add knlist_init_rw_reader() function to kqueue(9).
melifaro [Mon, 26 Mar 2012 09:34:17 +0000 (09:34 +0000)]
- Add knlist_init_rw_reader() function to kqueue(9).
Function acquired reader lock if needed.
Assert check for reader or writer lock (RA_LOCKED / RA_UNLOCKED)
- While here, add knlist_init_mtx.9 to MLINKS and fix some style(9) issues

Reviewed by:    glebius
Approved by:    ae(mentor)

MFC after:      2 weeks

12 years agoUse macroses to load/store pointers and increase indexes instead of
gonzo [Mon, 26 Mar 2012 01:26:33 +0000 (01:26 +0000)]
Use macroses to load/store pointers and increase indexes instead of
    hardcoded MIPS64 instructions

12 years agoAdd some more debugging to try and nail down exactly what's going on when
adrian [Sun, 25 Mar 2012 23:50:34 +0000 (23:50 +0000)]
Add some more debugging to try and nail down exactly what's going on when
I see traffic stalls.

It turns out that the bug isn't because the first and last frame in the
BAW is in the software queue.  It is more likely that it's because
the first frame in the BAW is still in the software queue and thus there's
no more room to allocate and do subsequent TX.

PR: kern/166357

12 years agoFollow non-BSD case when GNU/Hurd is detected.
rmh [Sun, 25 Mar 2012 21:54:36 +0000 (21:54 +0000)]
Follow non-BSD case when GNU/Hurd is detected.

12 years ago- Permit number of ipfw tables to be changed in runtime.
melifaro [Sun, 25 Mar 2012 20:37:59 +0000 (20:37 +0000)]
- Permit number of ipfw tables to be changed in runtime.

net.inet.ip.fw.tables_max is now read-write.

- Bump IPFW_TABLES_MAX to 65535
Default number of tables is still 128

- Remove IPFW_TABLES_MAX from ipfw(8) code.

Sponsored by Yandex LLC

Approved by:    kib(mentor)

MFC after:      2 weeks

12 years agomdoc: document title should be all caps.
joel [Sun, 25 Mar 2012 19:34:05 +0000 (19:34 +0000)]
mdoc: document title should be all caps.

12 years agoMake sure sections are sorted into conventional order.
joel [Sun, 25 Mar 2012 16:00:56 +0000 (16:00 +0000)]
Make sure sections are sorted into conventional order.

12 years agoCorrect failure to attach the PV block front device on Citrix
gibbs [Sun, 25 Mar 2012 14:20:43 +0000 (14:20 +0000)]
Correct failure to attach the PV block front device on Citrix
XenServer configurations that advertise the multi-page ring extension,
but only allow a single page of ring space.

sys/dev/xen/blkfront/blkfront.c:
If only one page of ring space is being used, do not publish
in the XenStore the number of pages in use (1), via either
of the supported multi-page ring extension schemes.

Single page operation is the same with or without the
ring-page extension being negotiated.   Relying on the
legacy behavior avoids an incompatible difference in how
the two ring-page extension schemes that are out in the
wild, deal with the base case of a single page.  The
Amazon/Red Hat drivers use the same XenStore variable as
if the extension was not negotiated.  The Citrix drivers
assume the new ring reference XenStore variables will be
available

Reported by: Oliver Schonefeld <schonefeld@ids-mannheim.de>
MFC after: 3 days

12 years agoRemove unused define.
trasz [Sun, 25 Mar 2012 12:53:19 +0000 (12:53 +0000)]
Remove unused define.

Discussed with: kib

12 years agoRemove superfluous paragraph macro.
joel [Sun, 25 Mar 2012 12:13:24 +0000 (12:13 +0000)]
Remove superfluous paragraph macro.

12 years agoRemove superfluous paragraph macro.
joel [Sun, 25 Mar 2012 09:23:10 +0000 (09:23 +0000)]
Remove superfluous paragraph macro.

12 years agoRemove superfluous paragraph macro.
joel [Sun, 25 Mar 2012 09:21:09 +0000 (09:21 +0000)]
Remove superfluous paragraph macro.

12 years agoRemove superfluous paragraph macro.
joel [Sun, 25 Mar 2012 09:20:14 +0000 (09:20 +0000)]
Remove superfluous paragraph macro.

12 years agoRemove superfluous paragraph macro.
joel [Sun, 25 Mar 2012 09:19:25 +0000 (09:19 +0000)]
Remove superfluous paragraph macro.

12 years agoRemove superfluous paragraph macro.
joel [Sun, 25 Mar 2012 09:18:34 +0000 (09:18 +0000)]
Remove superfluous paragraph macro.

12 years agoMore PMAP performance improvements: on powerpc64, when TLBIE can be run
nwhitehorn [Sun, 25 Mar 2012 06:01:34 +0000 (06:01 +0000)]
More PMAP performance improvements: on powerpc64, when TLBIE can be run
with exceptions enabled, leave them enabled and use a regular mutex to
guard TLB invalidations instead of a spinlock.

12 years agoAdd the new channel width change field to the ath(4) driver.
adrian [Sun, 25 Mar 2012 03:14:31 +0000 (03:14 +0000)]
Add the new channel width change field to the ath(4) driver.

This is not entirely correct as it simply resets the channel, flushing
whatever is in the TX/RX queue.  This can and will break aggregation
BAW tracking.  But the alternative (HT40 frames being sent with the hardware
in HT20 mode) is even worse.

There's still a small window between the htinfo being received (and the ni_chw
field being updated) which could cause problems.  I'll look at fleshing this
out in follow-up commits.

PR: kern/166286

12 years agoCreate a new task to handle 802.11n channel width changes.
adrian [Sun, 25 Mar 2012 03:11:57 +0000 (03:11 +0000)]
Create a new task to handle 802.11n channel width changes.

Currently, a channel width change updates the 802.11n HT info data in
net80211 but it doesn't trigger any device changes.  So the device
driver may decide that HT40 frames can be transmitted but the last
device channel set only had HT20 set.

Now, a task is scheduled so a hardware reset or change isn't done
during any active ongoing RX. It also means that it's serialised
with the other task operations (eg channel change.)

This isn't the final incantation of this work, see below.

For now, any unmodified drivers will simply receive a channel
change log entry.  A subsequent patch to ath(4) will introduce
some basic channel change handling (by resetting the NIC.)
Other NICs may need to update their rate control information.

TODO:

* There's still a small window at the present moment where the
  channel width has been updated but the task hasn't been fired.
  The final version of this should likely pass in a channel width
  field to the driver and let the driver atomically do whatever
  it needs to before changing the channel.

PR: kern/166286

12 years agoUpdate manual pages for MIPS-related CPUs:
gonzo [Sun, 25 Mar 2012 02:22:32 +0000 (02:22 +0000)]
Update manual pages for MIPS-related CPUs:

- Rename pmc.mips to pmc.mips24k since it covers just one CPU,
    no whole architecture
- Add documetnations for Octeon's PMC counters
- Remove CAVEATS section from pmc.mips24k page: PMC for MIPS supports
    sampling now.