Commit Graph

189663 Commits

Author SHA1 Message Date
Patrick Kelsey
df4c1b5ce1 MFC r283093:
Added description of POSIX-specified behavior when invoked on a key from within that key's destructor.
2015-05-24 01:52:22 +00:00
Patrick Kelsey
14426da9a4 MFC r282978:
When a netmap process terminates without the full set of buffers it
was granted via rings and ni_bufs_list_head represented in those rings
and lists (e.g., via SIGKILL), those buffers are no longer available
for subsequent users for the lifetime of the system. To mitigate this
resource leak, reset the allocator state when the last ref to that
allocator is released.

Note that this only recovers leaked resources for an allocator when
there are no longer any users of that allocator, so there remain
circumstances in which leaked allocator resources may not ever be
recovered - consider a set of multiple netmap processes that are all
using the same allocator (say, the global allocator) where members of
that set may be killed and restarted over time but at any given point
there is one member of that set running.
2015-05-24 01:48:33 +00:00
Ian Lepore
de810ddb89 MFC r280221:
Update ucom(4) with information about the new PPS capture abilities.
2015-05-24 01:09:51 +00:00
Ian Lepore
ef85165404 MFC r279728, r279729, r279756, r279773, r282424, r281367:
Add mutex support to the pps_ioctl() API in the kernel.

  Add PPS support to USB serial drivers.

  Use correct mode variable for PPS support.

  Switch polarity of USB serial PPS events.

  The ftdi "get latency" and "get bitmode" device commands are read
  operations, not writes.

  Implement a mechanism for making changes in the kernel<->driver PPS
  interface without breaking ABI or API compatibility with existing drivers.

  Bump version number to indicate the new PPS ABI version changes in the
  pps_state structure.
2015-05-24 00:53:43 +00:00
Ian Lepore
c6aa4e7e08 MFC r262409, r267129, r267130, r280709:
Move the declaration for mpentry() into a header file

  Fix broken SMP startup on Armada XP after r265694

  Avoid using hard-coded SoC's register address in mptramp code for Armada XP

  Use pmap_mapdev()/unmapdev() to temporarily map on-chip sram while copying
  the startup trampoline code.
2015-05-23 23:35:19 +00:00
Ian Lepore
c4c2cd97e6 MFC r280278, r280402:
Allow to override default kernel virtual address assignment on ARM.

  Do not save/restore the TLS pointer on context switch for armv6.
2015-05-23 23:27:00 +00:00
Ian Lepore
e562ec03a4 MFC r279816, r279826:
Attach the prcm clock driver early, so it can set the mpcore timer frequency.

  Change the name of the dmtimer pps device from /dev/ppsN to /dev/dmtppsN.
2015-05-23 23:08:54 +00:00
Ian Lepore
d1b0dbea87 MFC r279810, r279811:
Clean data cache before instruction cache in armv7_icache_sync_range().

  Add minimum cache line sizes to struct cpuinfo, use them in the new cache
  maintenance routines.  Also add a routine to invalidate the branch cache.
2015-05-23 23:05:31 +00:00
Ian Lepore
285cdab071 MFC r278518: Resolve cache line size from CP15 instead of hard-coded 32. 2015-05-23 22:48:54 +00:00
Ian Lepore
eb3f6291ee MFC r277098, r279235:
Introduce ofw_bus_reg_to_rl() to replace part of common bus code

  Fix endianness on FDT read in ARM GIC
2015-05-23 22:36:41 +00:00
Ian Lepore
d1cc357a85 MFC r274711:
Stop using early_putc immediately after configuring console with cninit()
2015-05-23 22:34:25 +00:00
Ian Lepore
a4fab69e92 MFC r274249, r274484, r275583:
Avoid panic in ofwbus caused by not released resource list entry

  Fix typo in ARM GIC device_printf()

  Fix buffer overflow in Marvell PCI/PCIe driver
2015-05-23 22:33:06 +00:00
Ian Lepore
dcca5792ae MFC r276021, r279766:
Reduce the diff in the Ti aintc between head and arm_intrng

  Fix spurious interrupts on arm am335x (beaglebone), by doing the EOI in
  both the post-filter and post-thread callbacks.
2015-05-23 21:12:51 +00:00
Ian Lepore
ce1563f570 MFC r279723, r279724:
Define new linker set, UART_FDT_CLASS_AND_DEVICE, for registering full
  (class and device) FDT UART. Define second one, UART_FDT_CLASS, for UART
  class only.

  Move the uart_class definitions and fdt compat data into the individual
  uart implementations, and export them using the new linker-set mechanism.
2015-05-23 20:54:25 +00:00
Ian Lepore
5bd402568f MFC r268137, r268138:
Define a "__weak" macro for declaring symbols "weak".

  Add support for empty data sets. Data set begin and end pointers
  should resolve to "NULL" when not present. This is done by declaring
  the data set begin and end symbols as "weak".
2015-05-23 20:53:19 +00:00
Ian Lepore
da48392c81 MFC r279239:
Enable 'receive timeout' interrupt allowing us to not
  loose 'rx buffer full' event.
2015-05-23 20:01:20 +00:00
Ian Lepore
c7c143173c MFC r277132: Rename Exynos UART driver functions. No functional change. 2015-05-23 19:57:44 +00:00
Ian Lepore
dc874795e5 MFC r266942, r266944:
Do only receive chars if there are some data in the buffer.
  This fixes operation on newer Exynos boards.

  Rename exynos uart driver filenames.
2015-05-23 19:50:14 +00:00
Ian Lepore
678278e199 MFC r272399, r272602, r274451, r274452:
Add uart driver for Qualcomm MSM 7000/8000 series chips.
  It is working on IFC6410 board which has Qualcomm Snapdragon SoC.

  Use documented compat string for msm uart.

  Make PL011 UART to wait on putc only when TX FIFO is full

  Make uart_bus_fdt a decendant of ofwbus
2015-05-23 19:27:04 +00:00
Ian Lepore
e36b1a943b MFC r279702: Update a comment that had drifted out of date. 2015-05-23 17:48:09 +00:00
Ian Lepore
c59e0ae9d5 MFC r279359, r279360:
For new eMMC chips, we must signal controller HC capability in OP_COND command.

Detect, report and use 8-bit bus if is available.
2015-05-23 17:43:02 +00:00
Ian Lepore
c09d49e81a MFC r278770, r279114, r279215, r279338, r279543:
Add logic for handling new-style ARM cpu ID info.

  Correct a comment which was exactly backwards from reality.

  There is no reason to do i+dcache writeback and invalidate when changing
  the translation table (this may be left over from armv5 days).  It's
  especially bad to do so using a cache operation that isn't coherent on
  SMP systems.

  Add casting to make atomic ops work for pointers.  (Apparently nobody has
  ever done atomic ops on pointers before now on arm).

  Revert incorrect casting.
2015-05-23 17:30:30 +00:00
Craig Rodrigues
7626a38234 Merge: 278618 278633 278636 278653 278742 278776 279121
Multiple fixes for pgrep and pkill tests.

PR: 19109
2015-05-23 09:48:59 +00:00
Craig Rodrigues
135ebb82cc Merge: r277829
Revert r277357 as expr has been enhanced to better detect overflow conditions,
and now the tests pass

PR: 196867
X-MFC with: r277798
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-05-23 09:16:35 +00:00
Konstantin Belousov
16cbfd691f MFC r282690:
Call uma_reclaim() from the additional pagedaemon thread to reclaim kmem
arena address space.
2015-05-23 09:14:29 +00:00
John Baldwin
39ae466a0f MFC 282273:
Update this page to note that XENHVM now works on i386.  (It shipped
enabled in GENERIC in 10.0.)
2015-05-22 23:55:59 +00:00
John Baldwin
575faaff3d MFC 281872:
Fix some incorrect #if conditions around older workarounds for bus
numbering goofs.
2015-05-22 23:54:12 +00:00
John Baldwin
eb5102d36d MFC 266852,270223:
- Fix pf(4) to build with MAXCPU set to 256.  MAXCPU is actually a count,
  not a maximum ID value (so it is a cap on mp_ncpus, not mp_maxid).
- Bump MAXCPU on amd64 from 64 to 256.  In practice APIC only permits 255
  CPUs (IDs 0 through 254).  Getting above that limit requires x2APIC.
2015-05-22 21:51:36 +00:00
Glen Barber
91e9fd67fd MFC r281011 (jkim):
Fix powerpc, powerpc64 build.

Sponsored by:	The FreeBSD Foundation
2015-05-22 16:38:55 +00:00
Wei Hu
71f32584e5 Fix a i386 build failure cause by commit r283280. 2015-05-22 11:20:59 +00:00
Wei Hu
e2e50e87ae MFC r282212:
Microsoft vmbus, storage and other related driver enhancements for HyperV.
    - Vmbus multi channel support.
    - Vector interrupt support.
    - Signal optimization.
    - Storvsc driver performance improvement.
    - Scatter and gather support for storvsc driver.
    - Minor bug fix for KVP driver.
Thanks royger, jhb and delphij from FreeBSD community for the reviews
and comments. Also thanks Hovy Xu from NetApp for the contributions to
the storvsc driver.

PR:     195238
Submitted by:   whu
Reviewed by:    royger
Approved by:    royger
Relnotes:       yes
Sponsored by:   Microsoft OSTC
Differential Revision:  https://reviews.freebsd.org/D2575
2015-05-22 09:03:55 +00:00
Konstantin Belousov
61b1feb8aa MFC r282944:
Decrement p_boundary_count in the single-threading thread, during making
other thread runnable.  This guarantees that upon return from the
thread_single_end(), p_boundary_count is zero.
2015-05-22 08:11:31 +00:00
Xin LI
fc78a78015 MFC r282613: MFV r282611: netcat from OpenBSD 5.7. 2015-05-21 21:45:37 +00:00
Pedro F. Giffuni
31c849094a MFC r282863:
Adjust visibility macros.

The GCC visibility attributes were introduced in GCC 4.0.
Apparently the "protected" attribute was introduced only
until GCC 4.2, but we are not currently using it.
2015-05-21 20:39:39 +00:00
Ed Maste
e9657e79d5 MFC r258431: Disable amd64 boot time memory test by default
The page presence memory test takes a long time on large memory systems
  and has little value on contemporary amd64 hardware.

Relnotes:	Yes
Reviewed by:	jhb, kib
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D1544
2015-05-21 19:40:31 +00:00
Ed Maste
c56ea14eb0 MFC r282144: crunchide: add basic string table sanity checks
Reported by:	Coverity Scan
CID:		978805, 980919
Sponsored by:	The FreeBSD Foundation
2015-05-21 19:16:28 +00:00
Xin LI
e5a5e8b772 MFC r282932: MFV r282927,r282928,r282930 (kientzle):
Don't segfault when reading malformed cpio archives.
2015-05-21 19:05:47 +00:00
Xin LI
a27b4fc908 MFC r282608:
date(1): Make -r behave like GNU's version when the option can not be
interpreted as a number, which checks the file's modification time and
use that as the date/time value.

This improves compatibility with GNU coreutils's version of date(1).
2015-05-21 18:59:11 +00:00
Bryan Drewery
4fdc363408 MFC r282574:
Remove references to Giant in namei(9).  This was removed in r241896.
2015-05-21 16:44:31 +00:00
Edward Tomasz Napierala
dce8a3a2d4 MFC r279955:
Add -noauto autofs map, for automatic handling of fstab entries
marked "noauto".

Relnotes:	yes
Sponsored by:	The FreeBSD Foundation
2015-05-21 13:42:37 +00:00
Edward Tomasz Napierala
a4d0cdbf4b MFC r279954:
Get executable direct maps to work.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:41:08 +00:00
Edward Tomasz Napierala
e6576ee56d MFC r279953:
Rework the concat() algorithm to be correct in all cases.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:39:38 +00:00
Edward Tomasz Napierala
0c9e5ab67e MFC r279916:
Make "automount -LL -o whatever" present options in the same order
as used by automountd(8).

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:37:48 +00:00
Edward Tomasz Napierala
a6f04bd871 MFC r279915:
Make concat() accept NULL arguments.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:36:00 +00:00
Edward Tomasz Napierala
eb16db3145 MFC r279914:
Options from auto_master must be appended to options from maps,
not prepended.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:34:33 +00:00
Edward Tomasz Napierala
b3a742bce8 MFC r279851:
Fix typo.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:33:06 +00:00
Edward Tomasz Napierala
b65ade49f8 MFC r279846:
Properly pass options for direct maps.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:31:44 +00:00
Ed Maste
6a0493a4d2 MFC r276774: ar: Avoid null pointer deref while reading corrupt archives
ELF Tool Chain ticket #467

Reported by:	Alexander Cherepanov <cherepan@mccme.ru>
Sponsored by:	The FreeBSD Foundation
2015-05-21 13:30:10 +00:00
Edward Tomasz Napierala
e8319c522f MFC r279845:
Fix handling of direct maps, broken in r275756.  Previously, running
automount(8) would unmount direct map trigger nodes every second time.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:29:34 +00:00
Edward Tomasz Napierala
36c9aacaf1 MFC r279843:
Refactor.

Sponsored by:	The FreeBSD Foundation
2015-05-21 13:26:52 +00:00