]> xenbits.xensource.com Git - people/julieng/freebsd.git/log
people/julieng/freebsd.git
10 years agoClean up the machine dependent headers
Andrew Turner [Thu, 19 Mar 2015 15:28:32 +0000 (15:28 +0000)]
Clean up the machine dependent headers

 * Use the format _MACHINE_FOO_H_ as the header guard
 * Make sure we use #define<tab>
 * Have empty files just contain /* $FreeBSD$ */
 * Remove machine/utrap.h a it's not needed

10 years agoUpdate the copyright for my prior work and the Foundation project.
Andrew Turner [Wed, 18 Mar 2015 15:49:14 +0000 (15:49 +0000)]
Update the copyright for my prior work and the Foundation project.

10 years agoStart using the cache.
Andrew Turner [Wed, 18 Feb 2015 13:16:56 +0000 (13:16 +0000)]
Start using the cache.

We will still need to either use the ASID or flush the icache when the
hardware uses a VIVT icache, however neither of the initial targets
have this option.

10 years agoInitial cache handling functions
Andrew Turner [Thu, 5 Mar 2015 11:17:09 +0000 (11:17 +0000)]
Initial cache handling functions

This adds the functions to write back and invalidate the data,
instruction, and unified caches. Further work is needed to call these
functions in pmap to flush the cache when mappings change.

These were written by Robin Randhawa. I have merged common code and
tested them on the Fixed Virtual Platform modeling the cache.

10 years agoMerge branch 'upstream_head' into arm64-merge
Andrew Turner [Wed, 18 Mar 2015 14:02:13 +0000 (14:02 +0000)]
Merge branch 'upstream_head' into arm64-merge

10 years agoAllowus to exclude a.out support from ldd and use it with arm64 as it won't
andrew [Wed, 18 Mar 2015 13:59:04 +0000 (13:59 +0000)]
Allowus to exclude a.out support from ldd and use it with arm64 as it won't
support the a.out format.

Reviewed by: emaste
Sponsored by: The FreeBSD Foundation

10 years agoWe won't support a.out on arm64/aarch64. As such there will be no need to
andrew [Wed, 18 Mar 2015 13:54:53 +0000 (13:54 +0000)]
We won't support a.out on arm64/aarch64. As such there will be no need to
support it in nlist(3).

Reviewed by: emaste
Sponsored by: The FreeBSD Foundation

10 years agoxlint: add arm64 #define
emaste [Wed, 18 Mar 2015 13:07:19 +0000 (13:07 +0000)]
xlint: add arm64 #define

Submitted by: andrew@
Sponsored by: The FreeBSD Foundation

10 years agoMerge branch 'upstream_head' into arm64-merge
Andrew Turner [Wed, 18 Mar 2015 11:58:59 +0000 (11:58 +0000)]
Merge branch 'upstream_head' into arm64-merge

10 years agoClean up the headers.
Andrew Turner [Tue, 17 Mar 2015 16:59:34 +0000 (16:59 +0000)]
Clean up the headers.

Based on reviews from https://reviews.freebsd.org/D2057

10 years agoAdd missing void pointer argument to SYSINIT() functions.
hselasky [Wed, 18 Mar 2015 10:50:10 +0000 (10:50 +0000)]
Add missing void pointer argument to SYSINIT() functions.

MFC after: 3 days
Sponsored by: Mellanox Technologies

10 years agoFix problems about 32-bit ticks wraparound and unsigned long
hselasky [Wed, 18 Mar 2015 10:49:17 +0000 (10:49 +0000)]
Fix problems about 32-bit ticks wraparound and unsigned long
conversion:
- The linux compat API layer casts the ticks to unsigned long which
might cause problems when the ticks value is negative.
- Guard against already expired ticks values, by checking if the
passed expiry tick is already elapsed.
- While at it avoid referring the address of an inlined function.

MFC after: 3 days
Sponsored by: Mellanox Technologies

10 years agoDeclare missing symbol and inline macro which is only used once.
hselasky [Wed, 18 Mar 2015 08:46:08 +0000 (08:46 +0000)]
Declare missing symbol and inline macro which is only used once.

MFC after: 2 weeks
Sponsored by: Mellanox Technologies
Submitted by: glebius@

10 years agoImplement pax -O option to permit limiting a PAX archive to a single volume.
eadler [Wed, 18 Mar 2015 05:48:05 +0000 (05:48 +0000)]
Implement pax -O option to permit limiting a PAX archive to a single volume.

-O Force the archive to be one volume.  If a volume ends prematurely, pax will
not prompt for a new volume.

PR: 198481
Submitted by: Sevan Janiyan
Reviewed by: allanjude (doc)

10 years agoFix ixgbe(4) to compile - with RSS; with ix+ixv in the kernel.
adrian [Wed, 18 Mar 2015 05:05:30 +0000 (05:05 +0000)]
Fix ixgbe(4) to compile - with RSS; with ix+ixv in the kernel.

* Fix the multiple same-named devclasses; the duplicate name
  trips up the linker.

* Re-do the taskqueue stuff to use the new cpuset API, not the old
  pinned API.

* Add includes for the new location of the RSS configuration routines.

This allows ixgbe to compile as a module /and/ linked into the kernel,
along with RSS working.

Sponsored by: Norse Corp, Inc.

10 years agoFix ixgbe(4) - add ix_txrx to compile in the kernel.
adrian [Wed, 18 Mar 2015 05:03:07 +0000 (05:03 +0000)]
Fix ixgbe(4) - add ix_txrx to compile in the kernel.

Sponsored by: Norse Corp, Inc.

10 years agoCorrectly const-ify things.
adrian [Wed, 18 Mar 2015 04:40:36 +0000 (04:40 +0000)]
Correctly const-ify things.

Found by: clang 3.6

10 years agoResolve a few build issues, add module directories back into Makefile,
jfv [Tue, 17 Mar 2015 22:40:50 +0000 (22:40 +0000)]
Resolve a few build issues, add module directories back into Makefile,
then correct a NETMAP problem resulting from the split, and finally
temporarily disable the X550 functionality.

10 years agoWhen initial placement of the new entry crosses the boundary,
kib [Tue, 17 Mar 2015 22:00:11 +0000 (22:00 +0000)]
When initial placement of the new entry crosses the boundary,
allocator tries to move the entry up, after the boundary.  The new
location may still fail to satisfy boundary requirement, for instance,
if the boundary is set to page size, and allocation is of multiple
pages.

Recheck that boundary is not crossed after the move.  If it is
crossed, give up on allocating the whole entry and split it.

Reported by: Michael Fuckner <michael@fuckner.net>, running nvme(4)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week

10 years agoWhen inserting new entry into the address map, ensure that not only
kib [Tue, 17 Mar 2015 21:55:33 +0000 (21:55 +0000)]
When inserting new entry into the address map, ensure that not only
next entry does not intersect with the tail of the new entry, but also
that previous entry is also before new entry start.

Sponsored by: The FreeBSD Foundation
MFC after: 1 week

10 years agoFix fdt_platform_fixups() mem region handling. It turns out u-boot puts
ian [Tue, 17 Mar 2015 21:15:24 +0000 (21:15 +0000)]
Fix fdt_platform_fixups() mem region handling.  It turns out u-boot puts
several types of data into the mem-info array (DRAM, SRAM, flash).  We
need to extract just the DRAM entries for translation into fdt memory
properties.

Also, increase the number of regions we can handle from 5 to 16.

Submitted by: Michal Meloun

10 years agoThe minimum sbuf buffer size is 2 bytes (a byte plus a nulterm), assert that.
ian [Tue, 17 Mar 2015 21:00:31 +0000 (21:00 +0000)]
The minimum sbuf buffer size is 2 bytes (a byte plus a nulterm), assert that.

Values smaller than two lead to strange asserts that have nothing to do
with the actual problem (in the case of size=0), or to writing beyond the
end of the allocated buffer in sbuf_finish() (in the case of size=1).

10 years agoIn sbuf_new_for_sysctl(), default the buffer size to 64 bytes if the
ian [Tue, 17 Mar 2015 20:56:24 +0000 (20:56 +0000)]
In sbuf_new_for_sysctl(), default the buffer size to 64 bytes if the
passed-in pointer is NULL and the length is zero.

10 years agoDocument that nextboot(8) doesn't work as expected with ZFS
allanjude [Tue, 17 Mar 2015 20:15:49 +0000 (20:15 +0000)]
Document that nextboot(8) doesn't work as expected with ZFS

Differential Revision: https://reviews.freebsd.org/D2087
Submitted by: feld (request)
Reviewed by: feld
Approved by: bcr (mentor)
Sponsored by: ScaleEngine Inc.

10 years agoWhen cross-building with an external toolchain we still need a target strip
emaste [Tue, 17 Mar 2015 19:35:50 +0000 (19:35 +0000)]
When cross-building with an external toolchain we still need a target strip

It is used by at least crunchide(1).

10 years agoo Enhance vm_pager_free_nonreq() function:
glebius [Tue, 17 Mar 2015 19:19:19 +0000 (19:19 +0000)]
o Enhance vm_pager_free_nonreq() function:
  - Allow to call the function with vm object lock held.
  - Allow to specify reqpage that doesn't match any page in the region,
    meaning freeing all pages.
o Utilize the new function in couple more places in vnode pager.

Reviewed by: alc, kib
Sponsored by: Netflix
Sponsored by: Nginx, Inc.

10 years agoAdd arm64 xlint support.
emaste [Tue, 17 Mar 2015 19:16:51 +0000 (19:16 +0000)]
Add arm64 xlint support.

Obtained from: NetBSD
Sponsored by: The FreeBSD Foundation

10 years agoFix build.
glebius [Tue, 17 Mar 2015 19:13:11 +0000 (19:13 +0000)]
Fix build.

Reviewed by: dumbbell

10 years agoFix build after r280182.
glebius [Tue, 17 Mar 2015 19:07:43 +0000 (19:07 +0000)]
Fix build after r280182.

10 years agoIntroduce Annapurna Labs AHCI support
zbb [Tue, 17 Mar 2015 18:59:47 +0000 (18:59 +0000)]
Introduce Annapurna Labs AHCI support

Overview:
* implemented quirk for forcing SATA interface enable
* restore value to status register - this enables link autonegotiation

Modifications:
* devid:vendorid field
* quirk for forcing PI setting (BIOS is doing that on PC-like systems)
* write to capabilites field to enable phy link initialization

Submitted by:  Wojciech Macek <wma@semihalf.com>
Reviewed by:   imp, mav
Obtained from: Semihalf

10 years agodrm: Update the device-independent code to match Linux 3.8.13
dumbbell [Tue, 17 Mar 2015 18:50:33 +0000 (18:50 +0000)]
drm: Update the device-independent code to match Linux 3.8.13

This update brings few features:
    o  Support for the setmaster/dropmaster ioctls. For instance, they
       are used to run multiple X servers simultaneously.
    o  Support for minor devices. The only user-visible change is a new
       entry in /dev/dri but it is useless at the moment. This is a
       first step to support render nodes [1].

The main benefit is to greatly reduce the diff with Linux (at the
expense of an unreadable commit diff). Hopefully, next upgrades will be
easier.

No updates were made to the drivers, beside adapting them to API
changes.

[1] https://en.wikipedia.org/wiki/Direct_Rendering_Manager#Render_nodes

Tested by: Many people
MFC after: 1 month
Relnotes: yes

10 years agoUpdate to the Intel ixgbe driver:
jfv [Tue, 17 Mar 2015 18:32:28 +0000 (18:32 +0000)]
Update to the Intel ixgbe driver:
- Split the driver into independent pf and vf loadables. This is
  in preparation for SRIOV support which will be following shortly.
  This also allows us to keep a seperate revision control over the
  two parts, making for easier sustaining.
- Make the TX/RX code a shared/seperated file, in the old code base
  the ixv code would miss fixes that went into ixgbe, this model
  will eliminate that problem.
- The driver loadables will now match the device names, something that
  has been requested for some time.
- Rather than a modules/ixgbe there is now modules/ix and modules/ixv
- It will also be possible to make your static kernel with only one
  or the other for streamlined installs, or both.

Enjoy!

Submitted by: jfv and erj

10 years agoFix the register to get ps_strings from.
Andrew Turner [Tue, 17 Mar 2015 15:36:30 +0000 (15:36 +0000)]
Fix the register to get ps_strings from.

It should br x0, x2 could have anything in it.

10 years agoAlso build multc3.c to get __multc3.
Andrew Turner [Mon, 16 Mar 2015 14:04:55 +0000 (14:04 +0000)]
Also build multc3.c to get __multc3.

This is needed by libm when built with clang 3.6.

10 years agoUpdate the types used for fpcr and fpsr.
Andrew Turner [Mon, 16 Mar 2015 13:40:45 +0000 (13:40 +0000)]
Update the types used for fpcr and fpsr.

The special registers need to be accessed using a 64-bit general purpose
register, even if the special register is 32-bits.

Clang 3.6 adds a check to make sure the type and general purpose register
sizes line up. To fix this we need to use the correct sized type to get
the correct register size.

10 years agoReplace crt1.c with one based on amd64
Andrew Turner [Fri, 13 Mar 2015 15:59:24 +0000 (15:59 +0000)]
Replace crt1.c with one based on amd64

This also cleanus up:
 * Remove __ps_strings, it's not being used, we get this from sysctl
 * Remove the elf note, we only need it on arm for pkg

10 years agoImport compiler-rt r232125 by Joerg Sonnenberger
emaste [Tue, 17 Mar 2015 15:48:19 +0000 (15:48 +0000)]
Import compiler-rt r232125 by Joerg Sonnenberger

  We want single precision here.

10 years agoDocument LIB and LIB_CXX.
bdrewery [Tue, 17 Mar 2015 15:21:01 +0000 (15:21 +0000)]
Document LIB and LIB_CXX.

MFC after: 2 weeks
X-MFC-With: r280179

10 years agoAdd support for the fu* functions to fail
Andrew Turner [Wed, 4 Feb 2015 16:44:08 +0000 (16:44 +0000)]
Add support for the fu* functions to fail

10 years agoRework how we read the pcpu data
Andrew Turner [Wed, 21 Jan 2015 14:45:47 +0000 (14:45 +0000)]
Rework how we read the pcpu data

This will be needed to scale past 1 cluster. With this we reserve x18
in the kernel to hold the address on the cores pcpu data. This allows
us to read curthread in a single instruction as will be needed when we
enable more cores.

10 years agoAdd LIB_CXX so that C++ libraries will use CXX to link.
bdrewery [Tue, 17 Mar 2015 15:16:36 +0000 (15:16 +0000)]
Add LIB_CXX so that C++ libraries will use CXX to link.

This fixes C++ libraries not implicitly linking in libc++.  This is
generally not an issue because the final linking with the compiled binary
will involve CXX via PROG_CXX or other means.  It is however
inconsistent with libraries implicitly linking in libc and problematic
for trying to build libraries with '-z defs' to ensure all direct
dependencies are linked in.

libatf-c++ is currently the only consumer of this new feature.

Differential Revision: https://reviews.freebsd.org/D2039
Reviewed by: imp
Discussed with: bapt
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division

10 years agoUnhide linker line for libraries.
bdrewery [Tue, 17 Mar 2015 15:12:52 +0000 (15:12 +0000)]
Unhide linker line for libraries.

The compilation lines are not hidden and there is not much reason to
hide the linker line. It is useful to see.

Discussed at: https://reviews.freebsd.org/D2039
MFC after: 2 weeks

10 years agoRemove unneeded handling of undefined NM.
bdrewery [Tue, 17 Mar 2015 15:11:45 +0000 (15:11 +0000)]
Remove unneeded handling of undefined NM.

Pointed out by: imp
Discussed at: https://reviews.freebsd.org/D2039
MFC after: 2 weeks

10 years agoReduce header pollution.
glebius [Tue, 17 Mar 2015 14:16:50 +0000 (14:16 +0000)]
Reduce header pollution.

10 years agoImprove ATA and SCSI versions printing.
mav [Tue, 17 Mar 2015 13:21:49 +0000 (13:21 +0000)]
Improve ATA and SCSI versions printing.

There is no "SCSI-6" and "ATA-9", but there is "SPC-4" and "ACS-2".

MFC after: 2 weeks

10 years agoUse 24h timestamps in the ps(1) STARTED column
feld [Tue, 17 Mar 2015 12:40:33 +0000 (12:40 +0000)]
Use 24h timestamps in the ps(1) STARTED column

The previous 12h AM/PM format was perplexing as it didn't follow the
locale of the user and was a minor annoyance to FreeBSD users coming
from Linux. Additionally, the man page was incorrect about the strftime
format.

There are three time formats that may be displayed in the STARTED
column depending on the age of the process. Below is an example.

For a process started at 14:30 on Monday 16 March 2015, the following
formats may be used:

14:30 for process < 24h old (24h Timestamp)
Mon14 for process > 24h, < 1 week old (Weekday Hour)
16Mar15 for process > 1 week old (Day Month Year)

Differential Revision: https://reviews.freebsd.org/D1620
Reviewed by: brd
Approved by: trasz

10 years agoAlways lock the hash row of a source node when updating its 'states' counter.
glebius [Tue, 17 Mar 2015 12:19:28 +0000 (12:19 +0000)]
Always lock the hash row of a source node when updating its 'states' counter.

PR: 182401
Sponsored by: Nginx, Inc.

10 years agoRemove no longer used allocation type.
hselasky [Tue, 17 Mar 2015 11:07:59 +0000 (11:07 +0000)]
Remove no longer used allocation type.

Submitted by: Dmitry Luhtionov <dmitryluhtionov@gmail.com>

10 years agoMake ATA power management commands to work on SCSI HBAs via PASS THROUGH.
mav [Tue, 17 Mar 2015 09:21:31 +0000 (09:21 +0000)]
Make ATA power management commands to work on SCSI HBAs via PASS THROUGH.

MFC after: 2 weeks
Sponsored by: iXsystems, Inc.

10 years agoUse define instead of constant.
hselasky [Tue, 17 Mar 2015 08:42:09 +0000 (08:42 +0000)]
Use define instead of constant.

Submitted by: Dmitry Luhtionov <dmitryluhtionov@gmail.com>

10 years agosfxge: increase default put-list limit to 1024
arybchik [Tue, 17 Mar 2015 08:23:46 +0000 (08:23 +0000)]
sfxge: increase default put-list limit to 1024

Drops are observed under multi-stream TCP traffic due to put-list
overflow with limit equal to 64.

Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)

10 years agosfxge: prefetch txq->common if TxQ is started only
arybchik [Tue, 17 Mar 2015 08:23:15 +0000 (08:23 +0000)]
sfxge: prefetch txq->common if TxQ is started only

Transmit may be called when TxQ is not started yet (i.e. txq->common is
invalid). TxQ state is checked below when mbuf is processed and dropped
if TxQ is not started.

Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)

10 years agosfxge: adding version info to device description
arybchik [Tue, 17 Mar 2015 08:21:31 +0000 (08:21 +0000)]
sfxge: adding version info to device description

The information is required for NIC update and config tools.

Submitted by:   Artem V. Andreev <Artem.Andreev at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)

10 years agosfxge: move deferred packet list statistics to dedicated node
arybchik [Tue, 17 Mar 2015 08:16:37 +0000 (08:16 +0000)]
sfxge: move deferred packet list statistics to dedicated node

It is done to structure sysctl and do not mix with Tx queue statistics
to be added.

Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)

10 years agosfxge: add tunables to control LRO parameters on driver load time
arybchik [Tue, 17 Mar 2015 08:14:46 +0000 (08:14 +0000)]
sfxge: add tunables to control LRO parameters on driver load time

Sponsored by:   Solarflare Communications, Inc.
Approved by:    gnn (mentor)

10 years agoCatch up with Clang 3.6.0.
jkim [Tue, 17 Mar 2015 05:48:45 +0000 (05:48 +0000)]
Catch up with Clang 3.6.0.

10 years agoBump the date after the `show devmap` addition.
stas [Tue, 17 Mar 2015 00:15:55 +0000 (00:15 +0000)]
Bump the date after the `show devmap` addition.

10 years agoDocument the `show devmap` DDB command.
stas [Tue, 17 Mar 2015 00:12:29 +0000 (00:12 +0000)]
Document the `show devmap` DDB command.

10 years agoFix minor fallout from sysctl strings being nulterminated now. The dmesg
ian [Mon, 16 Mar 2015 21:09:11 +0000 (21:09 +0000)]
Fix minor fallout from sysctl strings being nulterminated now.  The dmesg
code can read the buffer via sysctl or from a core file.  In the core file
case there will be no nulterm, and the code copes with that, but now in the
sysctl case there is a nulterm (there didn't used to be).  The least
disruptive way to restore the old behavior (and eliminate a spurious '\000'
at the end of the output) is to remove the nulterm (by decrementing the
buffer length) in the sysctl case.

10 years agoDefault to turning off OpenSSL SSL_OP_TLSEXT_PADDING as it breaks
gshapiro [Mon, 16 Mar 2015 20:24:37 +0000 (20:24 +0000)]
Default to turning off OpenSSL SSL_OP_TLSEXT_PADDING as it breaks
compatibility with some sites

This change comes from 8.15 but is being backported to FreeBSD releases
not yet using 8.15.

MFC after: 3 days
Noted by: julian@

10 years agoReport that we may have write cache, and that we do support FLUSH.
mav [Mon, 16 Mar 2015 20:13:25 +0000 (20:13 +0000)]
Report that we may have write cache, and that we do support FLUSH.

FreeBSD guest driver does not use that legacy flag, but Linux seems does.

MFC after: 2 weeks

10 years agoReset bp->bio_done to unmapped_buf when removing a transient map in biodone.
benno [Mon, 16 Mar 2015 20:00:09 +0000 (20:00 +0000)]
Reset bp->bio_done to unmapped_buf when removing a transient map in biodone.

Submitted by: Scott Ferris <scott.ferris@isilon.com>
Sponsored by: EMC / Isilon Storage Division
Reviewed by: kib

10 years agoTrivial change / forced-commit to document prior change that slipped in
ian [Mon, 16 Mar 2015 19:29:19 +0000 (19:29 +0000)]
Trivial change / forced-commit to document prior change that slipped in
without a commit message...

Use sbuf_new() + SYSCTL_OUT() instead of wiring the userland buffer and
using sbuf_new_for_sysctl().  The preallocated 256 byte buffer is always
going to be big enough to hold these results, and this should be more
efficient than wiring the old buffer.

10 years ago(no commit message)
ian [Mon, 16 Mar 2015 19:25:03 +0000 (19:25 +0000)]

10 years agoUse a regular sbuf + SYSCTL_OUT() rather than sbuf_new_for_sysctl() with
ian [Mon, 16 Mar 2015 19:18:45 +0000 (19:18 +0000)]
Use a regular sbuf + SYSCTL_OUT() rather than sbuf_new_for_sysctl() with
auto-draining, to avoid a potential copyout fault while holding a lock.

Pointed out by:   jhb
Pointy hat to:   ian

10 years agoUpdate an sbuf assertion to allow for the new SBUF_INCLUDENUL flag. If
ian [Mon, 16 Mar 2015 17:45:41 +0000 (17:45 +0000)]
Update an sbuf assertion to allow for the new SBUF_INCLUDENUL flag.  If
INCLUDENUL is set and sbuf_finish() has been called, the length has been
incremented to count the nulterm byte, and in that case current length is
allowed to be equal to buffer size, otherwise it must be less than.

Add a predicate macro to test for SBUF_INCLUDENUL, and use it in tests, to
be consistant with the style in the rest of this file.

10 years agoIntroduce a cap_ioctl_t used for the 'cmds' arguments to cap_ioctls_limit()
rwatson [Mon, 16 Mar 2015 17:42:53 +0000 (17:42 +0000)]
Introduce a cap_ioctl_t used for the 'cmds' arguments to cap_ioctls_limit()
and cap_ioctls_get().  On FreeBSD, these are 'unsigned long', but on Linux,
ioctl(2) takes an 'int', making mild abstraction desirable.

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

10 years agoConvert PTE eviction lock from an RW lock to a RM lock. It is held for
nwhitehorn [Mon, 16 Mar 2015 16:29:33 +0000 (16:29 +0000)]
Convert PTE eviction lock from an RW lock to a RM lock. It is held for
writing approximately never (< 0.00000001% under heavy VM load, and it can
go for months without ever being acquired in normal operation). This
provides a 10% (2-minute) improvement in wall clock time for make -j32
buildworld on a 4-core 32-thread POWER8.

10 years agoMove special DDP handling for closing a connection into a new
jhb [Mon, 16 Mar 2015 15:56:06 +0000 (15:56 +0000)]
Move special DDP handling for closing a connection into a new
handle_ddp_close() function in t4_ddp.c as the logic is similar
to handle_ddp_data().  This allows all knowledge of the special
DDP mbufs to be private to t4_ddp.c as well.

10 years agoDocument r279663, qsort(3) enhancements.
gjb [Mon, 16 Mar 2015 15:54:53 +0000 (15:54 +0000)]
Document r279663, qsort(3) enhancements.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279571, freebsd-update(8) will not download updates when
gjb [Mon, 16 Mar 2015 15:54:50 +0000 (15:54 +0000)]
Document r279571, freebsd-update(8) will not download updates when
a previous upgrade is not complete.
Add ScaleEngine Inc to sponsors.ent.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279463, iovctl(8) rc(8) script.
gjb [Mon, 16 Mar 2015 15:54:47 +0000 (15:54 +0000)]
Document r279463, iovctl(8) rc(8) script.
Add Sandvine Inc to sponsors.ent.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279361, kern.osrelease and kern.osreldate sysctls are
gjb [Mon, 16 Mar 2015 15:54:43 +0000 (15:54 +0000)]
Document r279361, kern.osrelease and kern.osreldate sysctls are
now configurable jail(8) parameters.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279315, uefisign(8) addition.
gjb [Mon, 16 Mar 2015 15:54:41 +0000 (15:54 +0000)]
Document r279315, uefisign(8) addition.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279252, pmap(9) overhaul for 64-bit PowerPC processors.
gjb [Mon, 16 Mar 2015 15:54:38 +0000 (15:54 +0000)]
Document r279252, pmap(9) overhaul for 64-bit PowerPC processors.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279189, VSX support.
gjb [Mon, 16 Mar 2015 15:54:35 +0000 (15:54 +0000)]
Document r279189, VSX support.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r279186, setmode(3) set errno on failure.
gjb [Mon, 16 Mar 2015 15:54:32 +0000 (15:54 +0000)]
Document r279186, setmode(3) set errno on failure.

Sponsored by: The FreeBSD Foundation

10 years agoDocument r278970, acpi(4) update to 20150204.
gjb [Mon, 16 Mar 2015 15:54:29 +0000 (15:54 +0000)]
Document r278970, acpi(4) update to 20150204.

Sponsored by: The FreeBSD Foundation

10 years agoProvide a comment explaining r279688.
glebius [Mon, 16 Mar 2015 14:24:47 +0000 (14:24 +0000)]
Provide a comment explaining r279688.

Suggested by: alc

10 years agoReport ARAT (APIC-Timer-always-running) feature for virtual CPU.
mav [Mon, 16 Mar 2015 11:57:03 +0000 (11:57 +0000)]
Report ARAT (APIC-Timer-always-running) feature for virtual CPU.

This makes FreeBSD guest to not avoid using LAPIC timer, preferring HPET
due to worries about non-existing for virtual CPUs deep sleep states.

Benchmarks of usleep(1) on guest and host show such extra latencies:
 - 51us for virtual HPET,
 - 22us for virtual LAPIC timer,
 - 22us for host HPET and
 - 3us for host LAPIC timer.

MFC after: 2 weeks

10 years agoIncrease S/G list size of 32 to 33 entries.
mav [Mon, 16 Mar 2015 09:15:59 +0000 (09:15 +0000)]
Increase S/G list size of 32 to 33 entries.

32 entries are not enough for the worst case of misaligned 128KB request,
that made FreeBSD to chunk large quests in odd pieces.

MFC after: 2 weeks

10 years agoRemove unused upstream DTrace provider implementations that are duplicates
markj [Mon, 16 Mar 2015 01:15:08 +0000 (01:15 +0000)]
Remove unused upstream DTrace provider implementations that are duplicates
of providers under sys/cddl/dev/. Also remove sdt_subr.c, which isn't used
in FreeBSD's SDT implementation.

Suggested by: rwatson

10 years agoproc: get rid of proc lock + unlock pair in proc_reap
mjg [Mon, 16 Mar 2015 01:09:49 +0000 (01:09 +0000)]
proc: get rid of proc lock + unlock pair in proc_reap

A comment in the code stated we PROC_LOCK and as a side effect guarantee
all writers released process lock. But at that point such lock was already
taken while we were removing the process from all lists, so it should be already
unreachable.

10 years agocred: add proc_set_cred helper
mjg [Mon, 16 Mar 2015 00:10:03 +0000 (00:10 +0000)]
cred: add proc_set_cred helper

The goal here is to provide one place altering process credentials.

This eases debugging and opens up posibilities to do additional work when such
an action is performed.

10 years agoFix DESTDIR support
bapt [Sun, 15 Mar 2015 23:40:50 +0000 (23:40 +0000)]
Fix DESTDIR support

10 years agoRemove bad and useless LINKS
bapt [Sun, 15 Mar 2015 23:31:20 +0000 (23:31 +0000)]
Remove bad and useless LINKS

10 years agoFix build with clang 3.6, silence -Wcast-qual warning.
kib [Sun, 15 Mar 2015 23:05:36 +0000 (23:05 +0000)]
Fix build with clang 3.6, silence -Wcast-qual warning.

Sponsored by: The FreeBSD Foundation
Acked by: adrian

10 years agoPre-allocate one extra request per processing thread.
mav [Sun, 15 Mar 2015 22:44:53 +0000 (22:44 +0000)]
Pre-allocate one extra request per processing thread.

Processing threads call callbacks before freeing requests.  As result,
new requests may arrive before old ones are freed.

MFC after: 2 weeks

10 years agoAdd a missing format string argument.
markj [Sun, 15 Mar 2015 21:57:44 +0000 (21:57 +0000)]
Add a missing format string argument.

PR: 197391
MFC after: 3 days

10 years agoUse ar71xx_mac_addr_random_init() instead of a hand-rolled random
adrian [Sun, 15 Mar 2015 21:56:41 +0000 (21:56 +0000)]
Use ar71xx_mac_addr_random_init() instead of a hand-rolled random
MAC address.

10 years agoStart fleshing out some MAC address helper functions.
adrian [Sun, 15 Mar 2015 21:56:12 +0000 (21:56 +0000)]
Start fleshing out some MAC address helper functions.

A lot of these embedded boards don't have a unique MAC address per
device stored somewhere unique - sometimes they'll have one MAC
for both arge NICs; someties they'll have one MAC for both arge NICs
/and/ the ath NICs.  In these instances, we need to derive device
specific MAC addresses from the base MAC address.

These functions will be used by some follow-up code that'll slot
into if_arge and if_ath.

10 years agoSymplify links installation by using multi variable for loop
bapt [Sun, 15 Mar 2015 21:50:58 +0000 (21:50 +0000)]
Symplify links installation by using multi variable for loop

Using multi variable for loop not only simplify the code, it also ensures that
the LINKS and SYMLINKS input have the right number of words

Differential Revision: https://reviews.freebsd.org/D2069
Reviewed by: imp

10 years agoaudit: fix cred assignment when A_SETPMASK is used
mjg [Sun, 15 Mar 2015 21:43:43 +0000 (21:43 +0000)]
audit: fix cred assignment when A_SETPMASK is used

The code used to modify curproc instead of the target process.

Discussed with: rwatson
MFC after: 3 days

10 years agoAdd a new taskqueue (device specific, not net80211 ic->tq); use it for
adrian [Sun, 15 Mar 2015 21:32:11 +0000 (21:32 +0000)]
Add a new taskqueue (device specific, not net80211 ic->tq); use it for
device restart.

(Committers note - once scan overhaul and a few other things have been
fixed in net80211 to not block things in the taskqueue, this can disappear
and the device specific taskqueues in other drivers can also go away.)

PR: kern/197143
Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>

10 years agoWorkaround delays caused by vmem_check().
adrian [Sun, 15 Mar 2015 21:30:20 +0000 (21:30 +0000)]
Workaround delays caused by vmem_check().

PR: kern/197143
Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>

10 years agoFix scan timeouts with powersave enabled.
adrian [Sun, 15 Mar 2015 21:29:36 +0000 (21:29 +0000)]
Fix scan timeouts with powersave enabled.

PR: kern/197143
Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>

10 years agounzip: Don't subvert vfs.timestamp_precision when setting atime to now.
jilles [Sun, 15 Mar 2015 21:29:20 +0000 (21:29 +0000)]
unzip: Don't subvert vfs.timestamp_precision when setting atime to now.

Also, preserve nanoseconds from libarchive, even though the zip file format
does not currently support nanoseconds in timestamps.

10 years agoDon't unlock mutex in interrupt thread (except for wpi_rx_done() - for now) -
adrian [Sun, 15 Mar 2015 21:29:18 +0000 (21:29 +0000)]
Don't unlock mutex in interrupt thread (except for wpi_rx_done() - for now) -
fixes various races between wpi_notif_intr() and wpi_stop_locked().

(attachment 154381)

Committers note: yes, unlock/if_input/lock has to go away, but that'll
have to be done later.

PR: kern/197143
Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>

10 years agoReformatting changes.
adrian [Sun, 15 Mar 2015 21:27:50 +0000 (21:27 +0000)]
Reformatting changes.

(attachment 154380)

PR: kern/197143
Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>

10 years agoUse correct types
adrian [Sun, 15 Mar 2015 21:27:03 +0000 (21:27 +0000)]
Use correct types

(attachment 154379)

PR: kern/197143
Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>