]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
11 years agoAdd decoding of the missed VI_ and VV_ flags to ddb "show vnode" command.
kib [Sun, 4 Nov 2012 13:32:45 +0000 (13:32 +0000)]
Add decoding of the missed VI_ and VV_ flags to ddb "show vnode" command.

MFC after: 3 days

11 years agoOrder the enumeration of the MNT_ flags to be the same as the order of
kib [Sun, 4 Nov 2012 13:31:41 +0000 (13:31 +0000)]
Order the enumeration of the MNT_ flags to be the same as the order of
their definitions.

MFC after: 3 days

11 years agoNew sentence, new line.
joel [Sun, 4 Nov 2012 09:27:01 +0000 (09:27 +0000)]
New sentence, new line.

Submitted by: brueffer

11 years agoAdd a few basic examples.
joel [Sun, 4 Nov 2012 09:08:17 +0000 (09:08 +0000)]
Add a few basic examples.

11 years ago- Add my mentor relationships to committers-ports.dot
gblach [Sun, 4 Nov 2012 08:47:41 +0000 (08:47 +0000)]
- Add my mentor relationships to committers-ports.dot
- Add myself to calendar.freebsd

Approved by: tabthorpe (mentor)

11 years agoAdd an example showing the use of gnop(8) to skip over header data.
wblock [Sun, 4 Nov 2012 03:19:07 +0000 (03:19 +0000)]
Add an example showing the use of gnop(8) to skip over header data.

PR: kern/145999
Reviewed by: mjg
MFC after: 1 week

11 years agoChange default prompt to show ~ again for the home directory
bapt [Sun, 4 Nov 2012 01:00:35 +0000 (01:00 +0000)]
Change default prompt to show ~ again for the home directory

Submitted by: flo
Approved by: eadler

11 years agoOops - conditionalise that.
adrian [Sun, 4 Nov 2012 00:46:01 +0000 (00:46 +0000)]
Oops - conditionalise that.

11 years agoFix a bug where operations was carried on even if not implemented,
attilio [Sat, 3 Nov 2012 23:32:32 +0000 (23:32 +0000)]
Fix a bug where operations was carried on even if not implemented,
leading to handling of an invalid fdip object.

Reported and tested by: flo
MFC after: 2 months
X-MFC: 241519

11 years agoReplace all uses of the page queues lock by a R/W lock that is private
alc [Sat, 3 Nov 2012 23:22:49 +0000 (23:22 +0000)]
Replace all uses of the page queues lock by a R/W lock that is private
to this pmap.

Eliminate two redundant #include's.

Tested by: marcel

11 years agoRework the known rwlock to benefit about staying on their own
attilio [Sat, 3 Nov 2012 23:03:14 +0000 (23:03 +0000)]
Rework the known rwlock to benefit about staying on their own
cache line in order to avoid manual frobbing but using
struct rwlock_padalign.

Reviewed by: alc, jimharris

11 years agoEDMA TX tweaks:
adrian [Sat, 3 Nov 2012 22:54:42 +0000 (22:54 +0000)]
EDMA TX tweaks:

* don't poke ath_hal_txstart() if nothing was pushed into the FIFO during
  the refill process;

* shuffle around the TX debugging output a little so it's logged at
  TX hardware enqueue;

* Add logging of the TX status processing.

11 years agoMerge the FDT versions of initarm.
andrew [Sat, 3 Nov 2012 22:39:07 +0000 (22:39 +0000)]
Merge the FDT versions of initarm.

The copies of initarm used on platforms with FDT support were almost
identical. The differences were pulled out into separate functions that
were called by initarm.

This change merges the, now identical, copies of initarm and a few of it's
support functions. This is a step towards a common kernel on ARMv6.

11 years agosh: Use C99 flexible array instead of accessing array beyond bounds.
jilles [Sat, 3 Nov 2012 22:23:08 +0000 (22:23 +0000)]
sh: Use C99 flexible array instead of accessing array beyond bounds.

Although sufficient memory is available for a longer string in cmdname,
this is undefined behaviour anyway.

Side effect: for alignment reasons, an additional byte of memory is
allocated per hashed command.

11 years agoAdd tty_set_winsize().
ed [Sat, 3 Nov 2012 22:21:37 +0000 (22:21 +0000)]
Add tty_set_winsize().

This removes some of the signalling magic from the Syscons driver and
puts it in the TTY layer, where it belongs.

11 years agoFor AR9380 NICs - the non-enterprise versions don't support RTS protection
adrian [Sat, 3 Nov 2012 22:13:42 +0000 (22:13 +0000)]
For AR9380 NICs - the non-enterprise versions don't support RTS protection
of small (< 256 byte) aggregate frames.

This needs to be done or 11n aggregation TX just simply doesn't work
on these NICs.

Whilst here, extend some debug printing; I was using this whilst
debugging the TX power setup in the TX descriptor(s) on the AR9380.

11 years agoAdd a new HAL call to extract out the HAL enterprise bits from the
adrian [Sat, 3 Nov 2012 22:12:35 +0000 (22:12 +0000)]
Add a new HAL call to extract out the HAL enterprise bits from the
AR9300 HAL.

11 years ago1. Have the APs initialize the TLB1 entries from what has been
marcel [Sat, 3 Nov 2012 22:02:12 +0000 (22:02 +0000)]
1.  Have the APs initialize the TLB1 entries from what has been
    programmed on the BSP during (early) boot. This makes sure
    that the APs get configured the same as the BSP, irrspective
    of how FreeBSD was loaded.
2.  Make sure to flush the dcache after writing the TLB1 entries
    to the boot page. The APs aren't part of the coherency domain
    just yet.
3.  Set pmap_bootstrapped after calling pmap_bootstrap(). The
    FDT code now maps the devices (like OF), and this resulted
    in a panic.
4.  Since we pre-wire the CCSR, make sure not to map chunks of
    it in pmap_mapdev().

11 years agoAdd a MD_ROOT_FSTYPE kernel option. The option specifies the
marcel [Sat, 3 Nov 2012 21:20:55 +0000 (21:20 +0000)]
Add a MD_ROOT_FSTYPE kernel option. The option specifies the
file system part for the MD_ROOT mount string. Hardcoding the
the file system type as "ufs" is too restrictive.

11 years agoAdd the bus attachment for the embedded EHCI HC.
marcel [Sat, 3 Nov 2012 21:08:27 +0000 (21:08 +0000)]
Add the bus attachment for the embedded EHCI HC.

11 years agoAllow using the embedded EHCI host controller in Freescale SoCs
marcel [Sat, 3 Nov 2012 21:05:32 +0000 (21:05 +0000)]
Allow using the embedded EHCI host controller in Freescale SoCs
by adding the missing bits. See ehci_fsl.c for their use.

11 years agoAdd the buildLINT convenience target, handy for build automation.
marcel [Sat, 3 Nov 2012 20:43:12 +0000 (20:43 +0000)]
Add the buildLINT convenience target, handy for build automation.
The automation can set TARGET_ARCH and TARGET and then make various
top-level targets, including buildLINT and buildkernel (with
KERNCONF=LINT). Previously there was no way to generate the LINT
kernel configuration without having to do something exceptionally
painful.

11 years agoo DragonFly 2.3.1 added.
maxim [Sat, 3 Nov 2012 19:26:08 +0000 (19:26 +0000)]
o DragonFly 2.3.1 added.

11 years agoWhen a file is first being written, the dynamic block reallocation
mckusick [Sat, 3 Nov 2012 18:55:55 +0000 (18:55 +0000)]
When a file is first being written, the dynamic block reallocation
(implemented by ffs_reallocblks_ufs[12]) relocates the file's blocks
so as to cluster them together into a contiguous set of blocks on
the disk.

When the cluster crosses the boundary into the first indirect block,
the first indirect block is initially allocated in a position
immediately following the last direct block.  Block reallocation
would usually destroy locality by moving the indirect block out of
the way to keep the data blocks contiguous.  This change compensates
for this problem by noting that the first indirect block should be
left immediately following the last direct block.  It then tries
to start a new cluster of contiguous blocks (referenced by the
indirect block) immediately following the indirect block.

We should also do this for other indirect block boundaries, but it
is only important for the first one.

Suggested by: Bruce Evans
MFC:          2 weeks

11 years agoReplace log(3) with flsll(3) for watchdogd(8) and drop libm dependency.
delphij [Sat, 3 Nov 2012 18:38:28 +0000 (18:38 +0000)]
Replace log(3) with flsll(3) for watchdogd(8) and drop libm dependency.

MFC after: 2 weeks

11 years agoMerge r242395,242483 from mutex implementation:
attilio [Sat, 3 Nov 2012 15:57:37 +0000 (15:57 +0000)]
Merge r242395,242483 from mutex implementation:
give rwlock(9) the ability to crunch different type of structures, with
the only constraint that they have a lock cookie named rw_lock.
This name, then, becames reserved from the struct that wants to use
the rwlock(9) KPI and other locking primitives cannot reuse it for
their members.

Namely such structs are the current struct rwlock and the new struct
rwlock_padalign. The new structure will define an object which has the
same layout of a struct rwlock but will be allocated in areas aligned
to the cache line size and will be as big as a cache line.

For further details check comments on above mentioned revisions.

Reviewed by: jimharris, jeff

11 years agoRevert the change that makes less default.
eadler [Sat, 3 Nov 2012 14:46:15 +0000 (14:46 +0000)]
Revert the change that makes less default.

Since I've committed this I've receieved roughly an equal
amount of email thanking me for making this change
and asking me to revert it.

I've resisted making this change because
new users tend to prefer less over more
and these users are the least likely to know
how to change the PAGER on their own.

Requested by: many
Objected to: just as many
Decision made by: core
Approved by: cperciva
MFC after: 3 days

11 years agoFix errno in a couple of error cases.
tuexen [Sat, 3 Nov 2012 13:22:25 +0000 (13:22 +0000)]
Fix errno in a couple of error cases.

MFC after: 3 days

11 years agoPrint a newline after the error message.
jh [Sat, 3 Nov 2012 09:18:37 +0000 (09:18 +0000)]
Print a newline after the error message.

PR: bin/168447
Submitted by: Boris Kochergin

11 years agoHAL API updates, from the previous couple of HAL commits.
adrian [Sat, 3 Nov 2012 04:56:08 +0000 (04:56 +0000)]
HAL API updates, from the previous couple of HAL commits.

11 years agoHAL API changes!
adrian [Sat, 3 Nov 2012 04:55:43 +0000 (04:55 +0000)]
HAL API changes!

* introduce a new HAL API method to pull out the TX status descriptor
  contents.

* Add num_delims to the 11n first aggr method.  This isn't used by the
  driver at the moment so it won't affect anything.

11 years agoAdd a debug method to dump the EDMA TX status descriptor contents out.
adrian [Sat, 3 Nov 2012 04:53:44 +0000 (04:53 +0000)]
Add a debug method to dump the EDMA TX status descriptor contents out.

This requires some HAL API changes to be useful, as there's no way
right now to pull out the TX status descriptor contents.

11 years agoSync strlcpy with userland version.
delphij [Sat, 3 Nov 2012 04:29:24 +0000 (04:29 +0000)]
Sync strlcpy with userland version.

MFC after: 1 month

11 years agoSync strlen with userland implementation.
delphij [Sat, 3 Nov 2012 04:28:53 +0000 (04:28 +0000)]
Sync strlen with userland implementation.

MFC after: 1 month

11 years agoFix typo
bapt [Sat, 3 Nov 2012 00:30:22 +0000 (00:30 +0000)]
Fix typo

11 years agoIf no contents keyword is specified, the default for files is
sjg [Sat, 3 Nov 2012 00:10:30 +0000 (00:10 +0000)]
If no contents keyword is specified, the default for files is
the named file.

Approved by: marcel (mentor)

11 years agoAdd a couple of examples.
joel [Fri, 2 Nov 2012 22:32:47 +0000 (22:32 +0000)]
Add a couple of examples.

Obtained from: OpenBSD

11 years agoCopy code from scsi_read_write() as mfi_build_syspd_cdb() to build SCSI
delphij [Fri, 2 Nov 2012 22:07:45 +0000 (22:07 +0000)]
Copy code from scsi_read_write() as mfi_build_syspd_cdb() to build SCSI
command properly.  Without this change, mfi(4) always sends 10 byte READ
and WRITE commands, which will cause data corruption when device is
larger than 2^32 sectors.

PR: kern/173291
Submitted by: Steven Hartland <steven.hartland multiplay.co.uk>
Reviewed by: mav
MFC after: 2 weeks

11 years agoUpdate nsamples and nbuffers defaults to match reality.
jimharris [Fri, 2 Nov 2012 22:03:39 +0000 (22:03 +0000)]
Update nsamples and nbuffers defaults to match reality.

11 years agoA few minor adjustments after r242424:
joel [Fri, 2 Nov 2012 21:47:21 +0000 (21:47 +0000)]
A few minor adjustments after r242424:

- Sort entries in SYNOPSIS.
- Start sentence on a new line.
- Remove redundant textdump dump description.

Submitted by: bde

11 years ago - In cancel_mkdir_dotdot don't panic if the inodedep is not available. If
jeff [Fri, 2 Nov 2012 21:04:06 +0000 (21:04 +0000)]
 - In cancel_mkdir_dotdot don't panic if the inodedep is not available.  If
   the previous diradd had already finished it could have been reclaimed
   already.  This would only happen under heavy dependency pressure.

Reported by: Andrey Zonov <zont@FreeBSD.org>
Discussed with: mckusick
MFC after: 1 week

11 years agoMerge 242488, better use of strlcpy.
alfred [Fri, 2 Nov 2012 18:57:38 +0000 (18:57 +0000)]
Merge 242488, better use of strlcpy.

Submitted by: Eric van Gyzen <eric@vangyzen.net>

11 years agoDocument that you can use -v along with -l.
alfred [Fri, 2 Nov 2012 17:30:08 +0000 (17:30 +0000)]
Document that you can use -v along with -l.

Noticed by: pjd

11 years agoTweak comment to make more clear why it will fail.
attilio [Fri, 2 Nov 2012 16:31:01 +0000 (16:31 +0000)]
Tweak comment to make more clear why it will fail.

Submitted by: jimharris

11 years agokdump: Also decode fcntl commands containing underscores and digits.
jilles [Fri, 2 Nov 2012 16:07:21 +0000 (16:07 +0000)]
kdump: Also decode fcntl commands containing underscores and digits.

The commands F_SETLK_REMOTE, F_DUPFD_CLOEXEC and F_DUP2FD_CLOEXEC were not
decoded.

11 years agoAdd more obsolete files.
antoine [Fri, 2 Nov 2012 15:06:01 +0000 (15:06 +0000)]
Add more obsolete files.

11 years agoDon't allow for more than one segment for the control space since
mjacob [Fri, 2 Nov 2012 14:38:57 +0000 (14:38 +0000)]
Don't allow for more than one segment for the control space since
we're not set up to deal with that.

X-MFC: 242479
MFC after: 1 week

11 years agoDon't allow for more than one segment for the control space since
mjacob [Fri, 2 Nov 2012 14:37:21 +0000 (14:37 +0000)]
Don't allow for more than one segment for the control space since
we're not set up to deal with that.

MFC after: 1 week

11 years agoThe r241025 fixed the case when a binary, executed from nullfs mount,
kib [Fri, 2 Nov 2012 13:56:36 +0000 (13:56 +0000)]
The r241025 fixed the case when a binary, executed from nullfs mount,
was still possible to open for write from the lower filesystem.  There
is a symmetric situation where the binary could already has file
descriptors opened for write, but it can be executed from the nullfs
overlay.

Handle the issue by passing one v_writecount reference to the lower
vnode if nullfs vnode has non-zero v_writecount.  Note that only one
write reference can be donated, since nullfs only keeps one use
reference on the lower vnode.  Always use the lower vnode v_writecount
for the checks.

Introduce the VOP_GET_WRITECOUNT to read v_writecount, which is
currently always bypassed to the lower vnode, and VOP_ADD_WRITECOUNT
to manipulate the v_writecount value, which manages a single bypass
reference to the lower vnode.  Caling the VOPs instead of directly
accessing v_writecount provide the fix described in the previous
paragraph.

Tested by: pho
MFC after: 3 weeks

11 years ago- Fix struct and struct fields names.
glebius [Fri, 2 Nov 2012 13:54:06 +0000 (13:54 +0000)]
- Fix struct and struct fields names.
- Remove NGM_ATM_CARRIER_CHANGE, which was removed in r118175.

Submitted by: Mamontov Roman <mr.xanto gmail.com>

11 years ago Remove separate paragraph on ASCII messages and instead
glebius [Fri, 2 Nov 2012 13:51:47 +0000 (13:51 +0000)]
 Remove separate paragraph on ASCII messages and instead
provide this information along with messages documentation,
like this done in manual pages for other netgraph nodes.

Submitted by: Mamontov Roman <mr.xanto gmail.com>

11 years agoFix broken macro checking in the libc++ Makefile, introduced in r241909.
dim [Fri, 2 Nov 2012 12:18:38 +0000 (12:18 +0000)]
Fix broken macro checking in the libc++ Makefile, introduced in r241909.
This caused -std=c++0x not to be passed to the build by default.

Pointy hat to: dim
MFC after: 3 days

11 years agoMFV pciids-20121024, r242469
philip [Fri, 2 Nov 2012 11:13:44 +0000 (11:13 +0000)]
MFV pciids-20121024, r242469

Update to use the latest version of the PCI IDs Repository.

MFC after: 1 week

11 years agoo OpenBSD 5.2 added.
maxim [Fri, 2 Nov 2012 07:36:16 +0000 (07:36 +0000)]
o OpenBSD 5.2 added.

11 years ago- If DRM_DEBUG_DEFAULT_ON is defined, then initialize drm_debug_flagi to
glebius [Fri, 2 Nov 2012 05:26:33 +0000 (05:26 +0000)]
- If DRM_DEBUG_DEFAULT_ON is defined, then initialize drm_debug_flagi to
  all supported debugging bits.
- If DRM_DEBUG_DEFAULT_ON isn't defined, then initialize drm_debug_flag
  to zero.

DRM_DEBUG_DEFAULT_ON is defined when module is build with -DDEBUG_DRM
or if kernel config has 'options DEBUG_DRM'.

Reviewed by: kib

11 years agoDrop this from 500 to 128, to save a little space on memory constrained
adrian [Fri, 2 Nov 2012 05:23:05 +0000 (05:23 +0000)]
Drop this from 500 to 128, to save a little space on memory constrained
platforms.

11 years agoFree the dma map -after- it's checked, not before. Or you'll be
adrian [Fri, 2 Nov 2012 05:22:32 +0000 (05:22 +0000)]
Free the dma map -after- it's checked, not before. Or you'll be
potentially referencing already-freed memory.

11 years agoRemove the recently added sysctl variable net.pfil.forward.
ae [Fri, 2 Nov 2012 01:20:55 +0000 (01:20 +0000)]
Remove the recently added sysctl variable net.pfil.forward.
Instead, add protocol specific mbuf flags M_IP_NEXTHOP and
M_IP6_NEXTHOP. Use them to indicate that the mbuf's chain
contains the PACKET_TAG_IPFORWARD tag. And do a tag lookup
only when this flag is set.

Suggested by: andre

11 years ago10 years too late add support for "2.88MB 3.5in Extra High Density"
eadler [Fri, 2 Nov 2012 00:17:30 +0000 (00:17 +0000)]
10 years too late add support for "2.88MB 3.5in Extra High Density"
floppies.

Its unlikely that anyone actually uses these or cares about these
anymore, since we support other floppy types and this change doesn't
hurt - just add it.

PR: conf/40777
Submitted by: Antti Kantee <pooka@cubical.fi>
Arrival-Date: Fri Jul 19 08:50:02 PDT 2002
Approved by: cperciva (implicit)
MFC after: 1 week

11 years agofopen(3): Mention that the "x" mode option is from C11.
jilles [Thu, 1 Nov 2012 22:47:42 +0000 (22:47 +0000)]
fopen(3): Mention that the "x" mode option is from C11.

MFC after: 1 week

11 years agoAdd descriptions for callout_reset_on and callout_schedule_on and
jimharris [Thu, 1 Nov 2012 21:00:13 +0000 (21:00 +0000)]
Add descriptions for callout_reset_on and callout_schedule_on and
their curcpu variants.

Discussed with: mav, davide
MFC after: 1 week

11 years agoCorrect buffer size printout.
hselasky [Thu, 1 Nov 2012 20:58:55 +0000 (20:58 +0000)]
Correct buffer size printout.

MFC after: 1 week

11 years agoIncrease default volume for FastTracker playback channels.
hselasky [Thu, 1 Nov 2012 20:43:23 +0000 (20:43 +0000)]
Increase default volume for FastTracker playback channels.

MFC after: 1 week

11 years agoDon't disable PCIe just because the host is not a PCI host; the latter flag
jmallett [Thu, 1 Nov 2012 20:39:39 +0000 (20:39 +0000)]
Don't disable PCIe just because the host is not a PCI host; the latter flag
only applies to non-PCIe systems.  If PCIe is in target mode, it will simply
and gracefully fail to attach of its own accord.

11 years agoFix sysctl free bug in last commit, which eventually leads to a panic.
hselasky [Thu, 1 Nov 2012 20:09:48 +0000 (20:09 +0000)]
Fix sysctl free bug in last commit, which eventually leads to a panic.
Add software mixer table for FastTrack Ultra.
Only set volume controls which are valid at startup for standard
USB audio devices, so that settings like treble and bass use
the reset defaults.

MFC after: 1 week

11 years agoThe test fails with "exit 1" if /usr/games/fortune doesn't actually
eadler [Thu, 1 Nov 2012 19:38:03 +0000 (19:38 +0000)]
The test fails with "exit 1" if /usr/games/fortune doesn't actually
exist.  Fix that.

PR: conf/71994
Submitted by: Mikael Eklund <rma@ludd.ltu.se>
Reviewed by: crees
Reviewed by: jilles
Approved by: cperciva (implicit)
MFC after: 3 days

11 years agoAdd an option to display the current dump device via dumpon -l.
alfred [Thu, 1 Nov 2012 18:59:19 +0000 (18:59 +0000)]
Add an option to display the current dump device via dumpon -l.

MFC after: 2 weeks

11 years agoSort textdump options list.
joel [Thu, 1 Nov 2012 17:17:05 +0000 (17:17 +0000)]
Sort textdump options list.

Submitted by: bde

11 years agoAdd whitespace between mandatory and optional kernel
alfred [Thu, 1 Nov 2012 17:13:04 +0000 (17:13 +0000)]
Add whitespace between mandatory and optional kernel
config options.

Approved by: joel

11 years agoProvide a device name in the sysctl tree for programs to query the
alfred [Thu, 1 Nov 2012 17:01:05 +0000 (17:01 +0000)]
Provide a device name in the sysctl tree for programs to query the
state of crashdump target devices.

This will be used to add a "-l" (ell) flag to dumpon(8) to list the
currently configured dumpdev.

Reviewed by: phk

11 years agoExport all mixer nodes into dev.pcm.X.mixer.Y sysctl nodes, hence the
hselasky [Thu, 1 Nov 2012 16:54:26 +0000 (16:54 +0000)]
Export all mixer nodes into dev.pcm.X.mixer.Y sysctl nodes, hence the
PCM API doesn't support showing all the knobs. Make sure all the USB audio
mixer nodes are freed at detach. Before this patch USB audio would leak
some memory at detach. Print out buffer sizes in number of samples at attach.
Fix setting of volume controls when the number of channels is greater than two.

MFC after: 1 week

11 years agoAdd missing inclusion guard.
hselasky [Thu, 1 Nov 2012 16:39:01 +0000 (16:39 +0000)]
Add missing inclusion guard.

11 years agoIn general, we call pmap_remove_all() before calling vm_page_cache(). So,
alc [Thu, 1 Nov 2012 16:20:02 +0000 (16:20 +0000)]
In general, we call pmap_remove_all() before calling vm_page_cache().  So,
the call to pmap_remove_all() within vm_page_cache() is usually redundant.
This change eliminates that call to pmap_remove_all() and introduces a
call to pmap_remove_all() before vm_page_cache() in the one place where
it didn't already exist.

When iterating over a paging queue, if the object containing the current
page has a zero reference count, then the page can't have any managed
mappings.  So, a call to pmap_remove_all() is pointless.

Change a panic() call in vm_page_cache() to a KASSERT().

MFC after: 6 weeks

11 years agoEnable the new instructions for reading and writing bases for %fs,
kib [Thu, 1 Nov 2012 15:17:43 +0000 (15:17 +0000)]
Enable the new instructions for reading and writing bases for %fs,
%gs, when supported.  Note that WRFSBASE and WRGSBASE are not very
useful on FreeBSD right now, because a return from the kernel mode to
userspace reloads the bases specified by the sysarch(2) syscall, most
likely.

Enable the Supervisor Mode Execution Prevention (SMEP) when
supported. Since the loader(8) performs hand-off to the kernel with
the page tables which contradict the SMEP, postpone enabling the SMEP
on BSP until pmap switched for the proper kernel tables.

Debugged with the help from: avg
Tested by: avg, Michael Moll <kvedulv@kvedulv.de>
MFC after: 1 month

11 years agoProvide the reading and display of the Standard Extended Features,
kib [Thu, 1 Nov 2012 15:14:37 +0000 (15:14 +0000)]
Provide the reading and display of the Standard Extended Features,
introduced with the IvyBridge CPUs.  Provide the definitions for new
bits in CR3 and CR4 registers.

Tested by: avg, Michael Moll <kvedulv@kvedulv.de>
MFC after: 2 weeks

11 years agoFix build for SMP.
cognet [Thu, 1 Nov 2012 12:26:31 +0000 (12:26 +0000)]
Fix build for SMP.

Submitted by: Giovanni Trematerra <gianni at freebsd DOT org>

11 years ago- Portability changes for ARM
gabor [Thu, 1 Nov 2012 11:38:34 +0000 (11:38 +0000)]
- Portability changes for ARM
- Allow larger sort memory on 64-bit platforms

Submitted by: Oleg Moskalenko <oleg.moskalenko@citrix.com>

11 years agofcntl(2): Fix typos in name of constant "F_DUP2FD_CLOEXEC".
jilles [Thu, 1 Nov 2012 09:38:28 +0000 (09:38 +0000)]
fcntl(2): Fix typos in name of constant "F_DUP2FD_CLOEXEC".

MFC after: 1 week

11 years agoNuke whitespace.
joel [Thu, 1 Nov 2012 07:53:21 +0000 (07:53 +0000)]
Nuke whitespace.

11 years agoMinor mdoc fix.
joel [Thu, 1 Nov 2012 07:51:50 +0000 (07:51 +0000)]
Minor mdoc fix.

11 years agoTCP/UDP checksum offloading feature for IP fragmented datagram was
yongari [Thu, 1 Nov 2012 06:02:27 +0000 (06:02 +0000)]
TCP/UDP checksum offloading feature for IP fragmented datagram was
removed in r99417.  bge(4) controllers can do TCP checksum offload
for IP fragmented datagrams but unlike ti(4), it lacks UDP checksum
offloading for IP fragmented datagrams. The problem was bge(4)
blindly requested TCP/UDP checksum for IP fragmented datagrams such
that it resulted in corrupted UDP datagrams before r99417.
Remove remaining code for TCP checksum offloading for IP fragmented
datagrams which should have been removed in r99417.

11 years agoRemove TCP/UDP checksum offloading feature for IP fragmented
yongari [Thu, 1 Nov 2012 05:39:21 +0000 (05:39 +0000)]
Remove TCP/UDP checksum offloading feature for IP fragmented
datagrams.  Traditionally upper stack fragmented packets without
computing TCP/UDP checksum and these datagrams were passed to
driver.  But there are chances that other packets slip into the
interface queue in SMP world. If this happens firmware running on
MIPS 4000 processor in the controller would see mixed packets and
it shall send out corrupted packets.
While I'm here simplify checksum offloading setup.

MFC After: 1 week

11 years agoSmall textdump enhancements.
alfred [Thu, 1 Nov 2012 04:07:08 +0000 (04:07 +0000)]
Small textdump enhancements.

Allow textdumps to be called explicitly from DDB.

If "dump" is called in DDB and textdumps are enabled then abort the
dump and tell the user to turn off textdumps.

Add options TEXTDUMP_PREFERRED to turn textdumps on by default.
Add options TEXTDUMP_VERBOSE to be a bit more verbose while textdumping.

Reviewed by: rwatson

MFC after: 2 weeks

11 years agoHandle the management port on the EBT5600 and disable loopback. The XAUI
jmallett [Thu, 1 Nov 2012 03:45:33 +0000 (03:45 +0000)]
Handle the management port on the EBT5600 and disable loopback.  The XAUI
port connected to the Broadcom switch does not seem operable, but it's unclear
if that's simply due to a lack of configuration information for the switch.
The switch does not seem to present any identifying information via MDIO,
and is a BCM56512.

11 years agoOnly four specific ATA PIO commands transfer several sectors per DRQ block
mav [Thu, 1 Nov 2012 00:09:01 +0000 (00:09 +0000)]
Only four specific ATA PIO commands transfer several sectors per DRQ block
(interrupt).  All other ATA PIO commands transfer one sector or 512 bytes
at one time.  Hardcode these exceptions in ata(4) with ATA_CAM option.
This fixes timeout of READ LOG EXT command used by `smartctl -x /dev/adaX`.

11 years agoA few important fixes:
jfv [Wed, 31 Oct 2012 23:50:36 +0000 (23:50 +0000)]
A few important fixes:
  - Testing TSO6 has led me to discover that HW RSC is
    a problematic feature, it is ONLY designed to work
    with IPv4 in the first place, and if IP forwarding
    is done it can't be disabled as LRO in the stack,
    also initial testing we've done at Intel shows an
    equal performance using TSO[46] on the TX and LRO
    on RX, if you ran older code on 82599 or later hardware
    you actually could have detrimental performance for
    this reason. So I am disabling the feature by default
    and all our adapters will now use LRO instead.

  - If you have flow control off and multiple queues it
    was possible when the buffer of one queue becomes
    full that all RX movement is stalled, to eliminate
    this problem a feature bit is now set that will allow
    packets to be dropped when full rather than stall.
    Note, the default is to have flow control on, and this
    keeps this from happening.

  - Because of the recent fixes in the stack, LRO is now
    auto-disabled when problematic, so I have decided to
    enable it by default in the capabilities in the driver.

  - There are some 1G modules used by some customers, a couple
    small tweaks to properly support those in the media code.

  - A note: we have now done some testing of TSO6 and using
    LRO with IPv6 and it all works great!! Seeing line rate
    in both directions in best cases. Thanks bz for your
    excellent work!!

11 years agoUse callout_reset_curcpu to allow the callout to be handled by the
jimharris [Wed, 31 Oct 2012 23:44:19 +0000 (23:44 +0000)]
Use callout_reset_curcpu to allow the callout to be handled by the
current CPU and not always CPU 0.

This has the added benefit of reducing a huge amount of spinlock
contention on the callout_cpu spinlock for CPU 0.

Sponsored by: Intel

11 years agoASUS EeePC 1001px has strange variant of ALC269 CODEC, that mutes speaker
mav [Wed, 31 Oct 2012 22:11:51 +0000 (22:11 +0000)]
ASUS EeePC 1001px has strange variant of ALC269 CODEC, that mutes speaker
if unused in that configuration mixer at NID 15 is muted.  Probably CODEC
incorrectly reports its internal connections.  Hide that muter from the
driver to avoid muting and make built-in speaker work.

There are several different CODECs sharing this ID and I have not enough
information about them and the bug to implement more universal solution.

Tested by: Big Yuuta <init.py@gmail.com>
MFC after: 2 weeks

11 years agoSince the PLL changes aren't in here yet for the AR9130 half/quarter
adrian [Wed, 31 Oct 2012 21:14:25 +0000 (21:14 +0000)]
Since the PLL changes aren't in here yet for the AR9130 half/quarter
rate support, disable it.

11 years agoOops - this was incorrectly removed in a previous commit.
adrian [Wed, 31 Oct 2012 21:06:55 +0000 (21:06 +0000)]
Oops - this was incorrectly removed in a previous commit.

11 years agoOops - missing from the last commit - add ANI immunity levels for AR9160.
adrian [Wed, 31 Oct 2012 21:04:23 +0000 (21:04 +0000)]
Oops - missing from the last commit - add ANI immunity levels for AR9160.

Obtained from: Qualcomm Atheros

11 years agoHAL updates!
adrian [Wed, 31 Oct 2012 21:03:55 +0000 (21:03 +0000)]
HAL updates!

* Add some more ANI spur immunity levels.
* For AR5111 radios attached to an AR5212, limit the 5GHz channels
  that are available. A later revision of the AR5111 supports the 4.9GHz
  PSB channels but right now there's no check in place for the radio
  revision.

  If someone wants PSB support on AR5212+AR5111 radios then please let
  me know and I'll add the relevant version check.

Obtained from: Qualcomm Atheros

11 years agoAdd in the last random assortment of missing bits for the AR9380 HAL.
adrian [Wed, 31 Oct 2012 21:00:01 +0000 (21:00 +0000)]
Add in the last random assortment of missing bits for the AR9380 HAL.

Obtained from: Qualcomm Atheros

11 years agoAdd the emulation PCI device id - these days, 0xabcd shows up all over
adrian [Wed, 31 Oct 2012 20:58:24 +0000 (20:58 +0000)]
Add the emulation PCI device id - these days, 0xabcd shows up all over
the internet as "AR9380 and later which didn't get its PCI ID written
in at power-on", so it's hardly an unknown constant.

Obtained from: Qualcomm Atheros

11 years agoCorrect code that was lost somewhere in the past,
jfv [Wed, 31 Oct 2012 18:16:42 +0000 (18:16 +0000)]
Correct code that was lost somewhere in the past,
this was designed to keep duplicate null vlan tags from
being added. When doing vlans purely via the switch
this problem will occur. Reported by external customer.

11 years agoRework the known mutexes to benefit about staying on their own
attilio [Wed, 31 Oct 2012 18:07:18 +0000 (18:07 +0000)]
Rework the known mutexes to benefit about staying on their own
cache line in order to avoid manual frobbing but using
struct mtx_padalign.

The sole exception being nvme and sxfge drivers, where the author
redefined CACHE_LINE_SIZE manually, so they need to be analyzed and
dealt with separately.

Reviwed by: jimharris, alc

11 years agoPad and align the callout_cpu mtx to its own cacheline to reduce false
jimharris [Wed, 31 Oct 2012 17:12:12 +0000 (17:12 +0000)]
Pad and align the callout_cpu mtx to its own cacheline to reduce false
sharing especially on the default CPU 0 callout_cpu structure.

This will be followed up by attilio@ with a conversion to the new struct
mtx_padalign but doing this manual conversion first gives an easy MFC
candidate since mtx_padalign is a more extensive system change.

Sponsored by: Intel
Reviewed by: jeff, attilio
MFC after: 1 week

11 years agoCorrect attribution.
des [Wed, 31 Oct 2012 15:04:27 +0000 (15:04 +0000)]
Correct attribution.

11 years agoGenericise the (out of date) instructions from moving from stable to
gavin [Wed, 31 Oct 2012 13:52:03 +0000 (13:52 +0000)]
Genericise the (out of date) instructions from moving from stable to
current.

MFC after: 3 days

11 years agoGive mtx(9) the ability to crunch different type of structures, with the
attilio [Wed, 31 Oct 2012 13:38:56 +0000 (13:38 +0000)]
Give mtx(9) the ability to crunch different type of structures, with the
only constraint that they have a lock cookie named mtx_lock.
This name, then, becames reserved from the struct that wants to use the
mtx(9) KPI and other locking primitives cannot reuse it for their
members.

Namely such structs are the current struct mtx and the new
struct mtx_padalign.  The new structure will define an object which is
the same as the same layout of a struct mtx but will be allocated in
areas aligned to the cache line size and will be as big as a cache line.

This is supposed to give higher performance for highly contented mutexes
both spin or sleep (because of the adaptive spinning), where the cache
line contention results in too much traffic on the system bus.

The struct mtx_padalign can be used in a completely transparent way
with the mtx(9) KPI.

At the moment, a possibility to MFC the patch should be carefully
evaluated because this patch breaks the low level KPI
(not its representation though).

Discussed with: jhb
Reviewed by: jeff, andre
Reviewed by: mdf (earlier version)
Tested by: jimharris