#
355198 |
|
29-Nov-2019 |
mav |
MFC r345812 (by tychon): ioatcontrol(8) could exercise 8k-aligned copy with page-break, crc and crc-copy modes.
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
300868 |
|
27-May-2016 |
ngie |
Remove note about bogus chain-len maximum
There's no current limit on chain-len with Broadwell DE chips; it isn't enforced in software, and there doesn't appear to be a hardware limitation either on the Intel Xeon D-1527 (Broadwell-DE) chip.
MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
|
#
300858 |
|
27-May-2016 |
ngie |
Fix description for -V in the -r case
t.verify_test = true is always set when -V is specified, regardless of whether or not the tool is being run in raw mode
MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
|
#
300857 |
|
27-May-2016 |
ngie |
Document the default behavior for -c (0)
Bump .Dd for the change
MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
|
#
292229 |
|
14-Dec-2015 |
cem |
ioatcontrol(8): Add support for interrupt coalescing
The new flag, -c <period>, sets the interrupt coalescing period in microseconds through the new ioat(4) API ioat_set_interrupt_coalesce().
Also add a -z flag to zero ioat statistics before tests, to make it easy to measure results.
Sponsored by: EMC / Isilon Storage Division
|
#
292044 |
|
10-Dec-2015 |
cem |
ioat(4): Add ioatcontrol(8) testing for copy_8k
Add -E ("Eight k") and -m ("Memcpy") modes to the ioatcontrol(8) tool.
Prompted by: rpokala Sponsored by: EMC / Isilon Storage Division
|
#
290129 |
|
29-Oct-2015 |
cem |
ioatcontrol(8): Add and document "raw" testing mode
Allows DMA from/to arbitrary KVA or physical address. /dev/ioat_test must be enabled by root and is only R/W root, so this is approximately as dangerous as /dev/mem and /dev/kmem.
Sponsored by: EMC / Isilon Storage Division
|
#
290021 |
|
26-Oct-2015 |
cem |
ioat: Add support for Block Fill operations
The IOAT hardware supports writing a 64-bit pattern to some destination buffer. The same limitations on buffer length apply as for copy operations. Throughput is a bit higher (probably because fill does not have to spend bandwidth reading from a source in memory).
Support for testing Block Fill has been added to ioatcontrol(8) and the ioat_test device. ioatcontrol(8) accepts the '-f' flag, which tests Block Fill. (If the flag is omitted, the tool tests copy by default.) The '-V' flag, in conjunction with '-f', verifies that buffers are filled in the expected pattern.
Tested on: Broadwell DE (Xeon D-1500) Sponsored by: EMC / Isilon Storage Division
|
#
289733 |
|
22-Oct-2015 |
cem |
Improve flexibility of ioat_test / ioatcontrol(8)
The test logic now preallocates memory before running the test.
The buffer size is now configurable. Post-copy verification is configurable. The number of copies to chain into one transaction (one interrupt) is configurable.
A 'duration' mode is added, which repeats the test until the duration has elapsed, reporting the B/s and transactions completed.
ioatcontrol.8 has been updated to document the new arguments.
Initial limits (on this particular Broadwell-DE) (and when the interrupts are working) seem to be: 256 interrupts/sec or ~6 GB/s, whichever limit is more restrictive.
Unfortunately, it seems the interrupt-reset handling on Broadwell isn't working as intended. That will be fixed in a later commit.
Sponsored by: EMC / Isilon Storage Division
|
#
287117 |
|
24-Aug-2015 |
cem |
Import ioat(4) driver
I/OAT is also referred to as Crystal Beach DMA and is a Platform Storage Extension (PSE) on some Intel server platforms.
This driver currently supports DMA descriptors only and is part of a larger effort to upstream an interconnect between multiple systems using the Non-Transparent Bridge (NTB) PSE.
For now, this driver is only built on AMD64 platforms. It may be ported to work on i386 later, if that is desired. The hardware is exclusive to x86.
Further documentation on ioat(4), including API documentation and usage, can be found in the new manual page.
Bring in a test tool, ioatcontrol(8), in tools/tools/ioat. The test tool is not hooked up to the build and is not intended for end users.
Submitted by: jimharris, Carl Delsey <carl.r.delsey@intel.com> Reviewed by: jimharris (reviewed my changes) Approved by: markj (mentor) Relnotes: yes Sponsored by: Intel Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3456
|