Commit Graph

195635 Commits

Author SHA1 Message Date
jhb
0a175e57d1 MFC 260469:
Fix issue with the virtio descriptor region being truncated
if it was above 4GB.
2014-05-23 19:06:35 +00:00
alc
5b014c7d3e MFC r259107
Eliminate a redundant parameter to vm_radix_replace().

  Improve the wording of the comment describing vm_radix_replace().
2014-05-23 17:47:49 +00:00
emaste
e761352067 MFC r266208: Speed up pmcstat by improving string hash
In one case generating callgraph output from a 24MB system-wide sampling
  data file took 17.4 seconds on average.  Profiling showed pmcstat
  spending a lot of time in strcmp, due to hash collisions.

  Replacing the XOR-only hash with FNV-1a reduces the run time for my
  test by 40%.
2014-05-23 17:46:00 +00:00
alc
80044281eb MFC r265886, r265948
With the new-and-improved vm_fault_copy_entry() (r265843), we can always
  avoid soft page faults when adding write access to user wired entries in
  vm_map_protect().  Previously, we only avoided the soft page fault when
  the underlying pages were copy-on-write.  In other words, we avoided the
  pages faults that might sleep on page allocation, but not the trivial
  page faults to update the physical map.

  On a fork allow read-only wired pages to be copy-on-write shared between
  the parent and child processes.  Previously, we copied these pages even
  though they are read only.  However, the reason for copying them is
  historical and no longer exists.  In recent times, vm_map_protect() has
  developed the ability to copy pages when write access is added to wired
  copy-on-write pages.  So, in this case, copy-on-write sharing of wired
  pages is not to be feared.  It is not going to lead to copy-on-write
  faults on wired memory.
2014-05-23 16:46:50 +00:00
kib
476a11c228 MFC r266464:
In execve(2), postpone the free of old vmspace until the threads are resumed
and exited.
2014-05-23 09:29:04 +00:00
hselasky
2975fdd0c2 MFC r257543, r264912, r264972, r264982 and r266472:
- Add preliminary support for the Realtek RTL8188EUS and RTL8188ETV chipsets.
- Add device ID for 'Sanoxy 802.11N' USB
- Initialize rssi variable.
- Fix gcc build, initialize off variable.
- The DELAY() should not be used in USB drivers.
- The usb_pause_mtx() function takes ticks and not milliseconds as last argument.
2014-05-23 06:47:47 +00:00
hselasky
a2758dea62 MFC r266466, r266471, r266484, r266505, r266535 and r266542:
Fix multiple issues in the RSU driver.
2014-05-23 06:35:45 +00:00
hselasky
6e5f8e9e85 MFC r265359 and r265780:
Remove ISA load dependency for the kernel sound
driver module for ARM and MIPS.
2014-05-23 06:28:31 +00:00
hselasky
db2ff6972d MFC r265358, r265427, r265777, r265783,
r265806, r265872, r266012 and r266394:

- Multiple DWC OTG host mode related fixes, improvements and optimisations.
- Add full support for ISOCHRONOUS transfers to the DWC OTG driver.
- Use the interrupt filter to handle basic USB FIFO interrupts.
- Fixed unbalanced unlock in case of "dwc_otg_init_fifo()" failure.
- Add common spinlock to the USB bus structure.
2014-05-23 06:20:25 +00:00
dteske
4ea8710a4b MFC r266297: Update example portion of comment to coincide with r264840 2014-05-22 22:10:16 +00:00
gavin
e38b7d8add Merge r266261 from head:
USB endpoints are almost always single-digits, fix the path in the man
  page to be clearer.

PR:		docs/175560
Submitted by:	Andreas Gustafsson <gson gson.org>
2014-05-22 21:08:32 +00:00
gavin
d5a24169ed Merge r266111 from head:
Fix typo.  Note that although this file is under contrib, it has diverged
  sufficiently from upstream (including a full whitespace commit and large
  portions rewritten) that this change does not move us further from the
  upstream.

PR:		docs/186608
Submitted by:	Jamie Landeg-Jones <jamie@dyslexicfish.net>
2014-05-22 20:55:57 +00:00
ken
085ec42db4 MFC mpr(4) changes: r265484, r265485, r265709 and r265712
------------------------------------------------------------------------
  r265484 | ken | 2014-05-06 23:11:16 -0600 (Tue, 06 May 2014) | 5 lines

  Remove some debugging code.

  Submitted by:	Steve McConnell <stephen.mcconnell@avagotech.com>

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265485 | ken | 2014-05-06 23:14:48 -0600 (Tue, 06 May 2014) | 9 lines

  Hold the SIM lock when calling xpt_create_path() and xpt_action() in
  mprsas_SSU_to_SATA_devices().

  This fixes an assertion on shutdown with INVARIANTS enabled with SATA
  drives present on an IR firmware controller.

  Reviewed by:	Steve McConnell <stephen.mcconnell@avagotech.com>.

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265709 | ken | 2014-05-08 14:28:22 -0600 (Thu, 08 May 2014) | 15 lines

  Fix TLR (Transport Layer Retry) support in the mps(4) and mpr(4) drivers.

  TLR is necessary for reliable communication with SAS tape drives.

  This was broken by change 246713 in the mps(4) driver.  It changed the
  cm_data field for SCSI I/O requests to point to the CCB instead of the data
  buffer.  So, instead, look at the CCB's data pointer to determine whether
  or not we're talking to a tape drive.

  Also, take the residual into account to make sure that we don't go off the
  end of the request.

  Sponsored by:	Spectra Logic Corporation

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265712 | ken | 2014-05-08 14:46:46 -0600 (Thu, 08 May 2014) | 10 lines

  Add #ifdefs in the mpr(4) driver so that versions of stable/9 that
  have implemented the PIM_NOSCAN rescan functionality will have it
  enabled.

  This is a no-op for head.

  Reviewed by:	slm
  Sponsored by:	Spectra Logic Corporation

  ------------------------------------------------------------------------

Sponsored by:	Spectra Logic, Avago
2014-05-22 16:34:00 +00:00
jhibbits
e699c2d438 MFC r266116,r266136
A page mask size is 12-bits, not 11.
2014-05-22 05:20:21 +00:00
truckman
9993a98863 MFC r266426
Slightly restructure the final loop in rman_reserve_resource_bound().
Replace with the existing loop termination test with a similar
condition from the nested "if" that may terminate the loop a bit
sooner, but still not too early.   This condition can then be removed
from the nested "if".  Relocate an operator to be style(9) compliant.
2014-05-22 00:39:49 +00:00
gjb
b8b04794bc Fix a typo.
Submitted by:	Hilko Meyer <hilko.meyer@gmx.de>
Sponsored by:	The FreeBSD Foundation
2014-05-21 18:58:31 +00:00
pho
a3e5dd5421 MFC r265534:
msync(2) must return ENOMEM and not EINVAL when the address is outside the
allowed range or when one or more pages are not mapped. This according to
The Open Group Base Specifications Issue 7.

Sponsored by:	EMC / Isilon storage division
2014-05-21 09:19:05 +00:00
thomas
e767419662 MFC rev. 265593:
(dd_out): Fix handling of all-zeroes block at end of input with
conv=sparse.

PR:		bin/189174
PR:		bin/189284
Reviewed by:	kib
2014-05-21 07:21:36 +00:00
hselasky
b658133ca6 MFC r266006 and r266011:
Fix unload of USB audio kernel module.
2014-05-21 06:29:52 +00:00
pluknet
ba3f74daf2 Add FreeBSD version 11.0.
This is a direct commit to stable/10.
2014-05-20 21:15:47 +00:00
jhb
eb31f23e07 MFC 260237:
Fix a bug in the HPET emulation where a timer interrupt could be lost when the
guest disables the HPET.

The HPET timer interrupt is triggered from the callout handler associated with
the timer. It is possible for the callout handler to be delayed before it gets
a chance to execute. If the guest disables the HPET during this window then the
handler never gets a chance to execute and the timer interrupt is lost.

This is now fixed by injecting a timer interrupt into the guest if the callout
time is detected to be in the past when the HPET is disabled.
2014-05-20 21:05:36 +00:00
gjb
309eceb395 Document r266279 and r266280, '-J' flag to ps(1), and
corresponding top(1) change.

Sponsored by:	The FreeBSD Foundation
2014-05-20 01:17:52 +00:00
delphij
b102c46490 MFC r265465:
Don't reply monlist request when it's not enabled.
2014-05-20 00:57:00 +00:00
markj
9613c1fd29 MFC r266195:
Remove some prototypes for undefined functions.
2014-05-19 19:49:06 +00:00
thomas
d893dda26b MFC rev. 265926:
(NANO_CONFIG): New variable containing path of config file, so that
the configuration can reference additional files relative to its own
location.

(NANO_MODULES): If set to "default", install all built modules.

Reviewed by:	imp
2014-05-19 10:08:05 +00:00
marius
3526290075 MFC: r257808
Add new AMT serial port PCI ID on Intel Lynx Point chipset
2014-05-19 09:29:59 +00:00
truckman
1c84835558 Be even more paranoid about overflow.
Requested by:	ache
2014-05-19 04:55:53 +00:00
truckman
0d5a1c60ff Nuke a couple of unnecessary assigments. Nothing uses the values of rstart
and rend after this point.
2014-05-19 04:53:43 +00:00
ian
1202107523 MFC r256790:
Fix the VCVT instruction. It must round towards zero when converting from
  a floating-point to an integer value. This was not the case causing issues
  when printing certain values.
2014-05-18 19:28:15 +00:00
ian
369b19b027 MFC 258287: Implement pmap_align_superpage(). 2014-05-18 17:46:48 +00:00
ian
de1f6cfd90 MFC 257233: Use size of the MACHINE_ARCH string instead of sizeof(uint32_t). 2014-05-18 16:43:47 +00:00
ian
37b56a8b54 MFC 257231:
Make sure the PCB is aligned on 8 bytes, we may use ldrd/strd to access it,
  which may have strong alignment requirements.
2014-05-18 16:39:47 +00:00
ian
8f8f979e4b MFC 257189:
Fix an itt instruction. We need to execute both the mov and b instructions
  when building for Thumb.
2014-05-18 16:17:13 +00:00
ian
3799a70c01 MFC 256942, 256943:
- Fix a typo.
  - Use bus_dmamap_unload(), it is not optional.
  - The new allocator won't return coherent memory for any size > PAGE_SIZE,
  so don't assume we have coherent memory, and explicitely use
  bus_dmamap_sync().
2014-05-18 16:07:35 +00:00
ian
de4ccf451c MFC 256873: Make watchdog function conform watchdog(9): 2014-05-18 16:03:34 +00:00
ian
de651b30e7 MFC 256941: make sure the frame is indeed in the kernel memory. 2014-05-18 16:02:56 +00:00
jhb
4670db3f86 MFC 264765,264766:
- Don't claim the adapter is idle if it is clearing a drive.
- Fix an off by one error when checking for the stop event.  This
  resulted in not showing the most recent event by default.
- When the stop even is hit, break out of the outer loop to stop
  fetching more events.
2014-05-18 15:28:25 +00:00
ian
a7f85b6451 MFC 265624, 265739: Fix interrupt parent property in dts, add SMP support. 2014-05-18 13:05:07 +00:00
jhb
5e2f766c6c MFC 259737, 262646:
Fix a couple of issues with vcpu state:
- Add a parameter to 'vcpu_set_state()' to enforce that the vcpu is in the
  IDLE state before the requested state transition. This guarantees that
  there is exactly one ioctl() operating on a vcpu at any point in time and
  prevents unintended state transitions.
- Fix a race between VMRUN() and vcpu_notify_event() due to 'vcpu->hostcpu'
  being updated outside of the vcpu_lock().
2014-05-18 04:33:24 +00:00
ian
79fa7e0a74 MFC 265913, 265914:
Interrupts need to be disabled on entry to cpu_sleep() for ARM.  Given
  that and the need to be in a critical section when switching to idleclock
  mode for event timers, use spinlock_enter()/exit() to achieve both needs.

  Clean up some style nits.
2014-05-18 01:18:42 +00:00
ian
7bb0883aa0 MFC 265861, 265870:
Make the hardware memory and instruction barrier functions work on armv4
  and armv5 as well.

  Add cpu_l2cache_drain_writebuf(), use it to implement generic_bs_barrier().
2014-05-18 00:55:26 +00:00
ian
4fe09963e2 MFC 265852: Map device memory using PTE_DEVICE rather than PTE_NOCACHE. 2014-05-18 00:32:35 +00:00
ian
94d02a4a34 MFC 265694, 265705, 265784:
Move the mptramp code which is specific to the Marvell ArmadaXP SoC out of
  the common locore.S file and into the mv/armadaxp directory.

  Consolidate all the AP core startup stuff under a single #ifdef SMP block

  Call idcache_inv_all from the AP core entry code before turning on the MMU.
  Also, enable instruction and branch caches, which should be safe now that
  they're properly initialized/invalidated first.
2014-05-18 00:30:04 +00:00
ian
3991eff3e4 MFC 265440, 265441, 265444, 265445, 265446, 265447:
Move the pl310.enabled tunable to hw.pl310.enabled.  Clean up a few minor
  style(9) nits.  Use DEVMETHOD_END.

  Break out the code that figures out the L2 cache geometry to its own
  routine, so that it can be called from multiple places in upcoming changes.

  Call platform_pl310_init() before enabling the controller, and handle the
  case where the controller is already enabled.

  Add defines for the bits in the PL310 debug control register.

  Add a public routine to set the L2 cache ram latencies.  This can be
  called by platform init routines to fine-tune cache performance.

  Enable PL310 power-saving modes and tune the cache ram latencies for imx6.
2014-05-18 00:26:42 +00:00
ian
1facc10d63 MFC 265155, 265254:
Omit from the universe build all config files tagged with #NO_UNIVERSE.

  Add FDT to the VYBRID kernel.
2014-05-18 00:21:14 +00:00
ian
407aec60d3 MFC 265208: Honor the max-frequency property if it appears in the fdt data. 2014-05-18 00:15:48 +00:00
ian
5a2fe5ecc4 MFC 265207: Use arm_devmap_add_entry() to setup static device mapping. 2014-05-17 23:29:45 +00:00
ian
22104636f4 MFC 265156: Remove WANDBOARD.common, it was replaced by IMX6. 2014-05-17 23:27:02 +00:00
ian
769f5f0ca9 MFC 265099, 265148, 265690:
Add SMP support for Zedboard.

  Use edge-triggered interrupts rather than polling loops to avoid missing
  transitions of the INIT_B line.  Also, release the mutex during uiomove().

  Convert the Zynq SoC support to the new routines for static device mapping.
2014-05-17 23:25:20 +00:00
ian
51fdb0a630 MFC 265111: Make a declaration into a proper function prototype. 2014-05-17 23:21:53 +00:00