| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
driver successfully compiles on one or more of amd64, i386, hppa.
|
|
|
|
|
| |
somehow. Cleaning it out and config/compile from scratch and all seems
well.
|
| |
|
| |
|
|
|
|
| |
"Bump nvme(4) max physio() i/o size to 128K"
|
|
|
|
|
|
| |
The coverity-related diff breaks sparc64's ability to read the disk.
ok deraadt
|
| |
|
|
|
|
|
|
|
|
|
| |
sgl (scatter gather list) and prpl (physical region page list) are two
different things in the NVMe world. Only the latter is currently
implemented in nvme(4) so rename sc_max_sgl to sc_max_prpl to reflect
this.
No functional change.
|
|
|
|
|
|
|
|
|
| |
and ffs(16)-1 with the constant results (i.e. 6 and 4). Add comments
to clarify use of these constants. Net result, one less invocation of
ffs(), softc smaller by one u_int, and less potential confusion over
'mps'.
No functional change.
|
|
|
|
|
|
|
|
| |
only active during hibernation, preallocating the the submission and completion
queues during attach as they need to be page-aligned.
tested on an x270 that successfully hibernates now.
ok dlg@
|
|
|
|
|
|
|
| |
Based on an initial patch by ehrhardt@ . Thanks to claudio@ for testing
and deraadt@ for advice.
"go ahead" deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it seems devices using levelled intx interrupts need to explicitely ack
interrupts by masking and unmasking the source around the completion
ring handling. without this completions can be lost, which in turn
causes long (permanent?) stalls in the block layer under heavy write
load.
ive experienced this problem with an intel nvme part that only has
intx and msix support. because we dont support msix yet we only
use intx on it. it appeared to lock up before this fix.
this has been tested on both that intel board and a samsung with msi.
this fix was based on work found in code by nonaka
|
| |
|
| |
|
| |
|
|
|
|
| |
so far the only useful info is namespace identify info
|
|
|
|
|
| |
the nn is used to size the scsi bus, and the controller identify is used
to build responses for various scsi commands.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
steps, but unfortunately the next step after "talk to the chips
registers" was "get command queues working" which ended up being a
huge amount of plumbing.
anyway, this lets me successfully run an identify controller command
against the chip and should be cut up the right way to be usable
for io command submissions. will need to think about how to avoid
overflowing rings though.
|
|
|