Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 May 2020 04:24:49 +0300
From:      Yuri Pankov <ypankov@fastmail.com>
To:        current@freebsd.org
Subject:   Re: nvme on 2019 macbooks
Message-ID:  <79fec490-d3b1-b91b-652c-e9bf0d121d7c@fastmail.com>
In-Reply-To: <cb02bcb1-482b-0920-507e-79213c1ba1ff@fastmail.com>
References:  <cb02bcb1-482b-0920-507e-79213c1ba1ff@fastmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------A6596766C38AEAEA6873BEF1
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

Yuri Pankov wrote:
> I have tried booting latest -current snapshot on 2019 macbook pro 16, 
> and noticed that nvme driver didn't attach, as class reported is 
> 0x018002 and not 0x010802 that we expect in nvme_pci.c.
> 
> The following linux changes seem to be related:
> https://github.com/torvalds/linux/commit/66341331ba0d2de4ff421cdc401a1e34de50502a 
> 
> https://github.com/torvalds/linux/commit/d38e9f04ebf667d9cb8185b45bff747485f1d3e9 
> 
> 
> I have tried adding the exact PCI IDs, but that also fails as number of 
> msix vectors seems to be 0 in nvme_ctrlr_setup_interrupts() and 
> nvme_ctrlr_configure_intx() fails with "unable to allocate shared IRQ".
> 
> Any hints on how to proceed here?

So it looks like we need to fallback to MSI if we failed to enable 
MSI-X.  With the attached patch we still fail to attach the target 
device (as below) most likely due to the quirks needed as seen in linux 
driver, but it's definitely a start:

nvme0: CREATE IO CQ (05) sqid:0 cid:15 nsid:0 cdw10:00800001 cdw11:00010003
nvme0: INVALID_FIELD (00/02) sqid:0 cid:15 cdw0:0
nvme0: nvme_create_io_cq failed!

--------------A6596766C38AEAEA6873BEF1
Content-Type: text/plain; charset=UTF-8;
 name="nvme.diff.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="nvme.diff.txt"

ZGlmZiAtLWdpdCBhL3N5cy9kZXYvbnZtZS9udm1lX3BjaS5jIGIvc3lzL2Rldi9udm1lL252
bWVfcGNpLmMKaW5kZXggNDQ4YmZkYTZhNzE4Li5lNjA5OTY3YjUzZmUgMTAwNjQ0Ci0tLSBh
L3N5cy9kZXYvbnZtZS9udm1lX3BjaS5jCisrKyBiL3N5cy9kZXYvbnZtZS9udm1lX3BjaS5j
CkBAIC05MCw2ICs5MCw3IEBAIHN0YXRpYyBzdHJ1Y3QgX3Bjc2lkCiAJeyAweDA1NDAxYzVm
LAkJMCwgMCwgIk1lbWJsYXplIFBibGF6ZTQiLCBRVUlSS19ERUxBWV9CNF9DSEtfUkRZIH0s
CiAJeyAweGE4MjExNDRkLAkJMCwgMCwgIlNhbXN1bmcgUE0xNzI1IiwgUVVJUktfREVMQVlf
QjRfQ0hLX1JEWSB9LAogCXsgMHhhODIyMTQ0ZCwJCTAsIDAsICJTYW1zdW5nIFBNMTcyNWEi
LCBRVUlSS19ERUxBWV9CNF9DSEtfUkRZIH0sCisJeyAweDIwMDUxMDZiLAkJMCwgMCwgIkFO
UzIgTlZNZSBDb250cm9sbGVyIiB9LAogCXsgMHgwMDAwMDAwMCwJCTAsIDAsIE5VTEwgIH0K
IH07CiAKQEAgLTI2Nyw3ICsyNjgsNyBAQCBudm1lX2N0cmxyX3NldHVwX2ludGVycnVwdHMo
c3RydWN0IG52bWVfY29udHJvbGxlciAqY3RybHIpCiAKIAlmb3JjZV9pbnR4ID0gMDsKIAlU
VU5BQkxFX0lOVF9GRVRDSCgiaHcubnZtZS5mb3JjZV9pbnR4IiwgJmZvcmNlX2ludHgpOwot
CWlmIChmb3JjZV9pbnR4IHx8IHBjaV9tc2l4X2NvdW50KGRldikgPCAyKSB7CisJaWYgKGZv
cmNlX2ludHgpIHsKIAkJbnZtZV9jdHJscl9jb25maWd1cmVfaW50eChjdHJscik7CiAJCXJl
dHVybjsKIAl9CkBAIC0yOTcsOSArMjk4LDE0IEBAIG52bWVfY3RybHJfc2V0dXBfaW50ZXJy
dXB0cyhzdHJ1Y3QgbnZtZV9jb250cm9sbGVyICpjdHJscikKIAkvKiBPbmUgdmVjdG9yIGZv
ciBwZXIgY29yZSBJL08gcXVldWUsIHBsdXMgb25lIHZlY3RvciBmb3IgYWRtaW4gcXVldWUu
ICovCiAJbnVtX3ZlY3RvcnNfcmVxdWVzdGVkID0gbnVtX2lvX3F1ZXVlcyArIDE7CiAJbnVt
X3ZlY3RvcnNfYWxsb2NhdGVkID0gbnVtX3ZlY3RvcnNfcmVxdWVzdGVkOworCisJLyogVHJ5
IE1TSS1YICovCiAJaWYgKHBjaV9hbGxvY19tc2l4KGRldiwgJm51bV92ZWN0b3JzX2FsbG9j
YXRlZCkgIT0gMCkgewotCQludm1lX2N0cmxyX2NvbmZpZ3VyZV9pbnR4KGN0cmxyKTsKLQkJ
cmV0dXJuOworCQkvKiBNU0ktWCBmYWlsZWQsIHRyeSBNU0kgKi8KKwkJaWYgKHBjaV9hbGxv
Y19tc2koZGV2LCAmbnVtX3ZlY3RvcnNfYWxsb2NhdGVkKSAhPSAwKSB7CisJCQludm1lX2N0
cmxyX2NvbmZpZ3VyZV9pbnR4KGN0cmxyKTsKKwkJCXJldHVybjsKKwkJfQogCX0KIAlpZiAo
bnVtX3ZlY3RvcnNfYWxsb2NhdGVkIDwgMikgewogCQlwY2lfcmVsZWFzZV9tc2koZGV2KTsK

--------------A6596766C38AEAEA6873BEF1--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?79fec490-d3b1-b91b-652c-e9bf0d121d7c>