Re: [PATCH net-next v3 10/18] nvme/host: Use sendmsg(MSG_SPLICE_PAGES) rather then sendpage

From: Aurelien Aptel
Date: Thu Jun 29 2023 - 11:02:40 EST


Sagi Grimberg <sagi@xxxxxxxxxxx> writes:
> Most likely this also reproduces with blktests?
> https://github.com/osandov/blktests
>
> simple way to check is to run:
> nvme_trtype=tcp ./check nvme
>
> This runs nvme tests over nvme-tcp.

Yes, it crashes similarly during test 10:

root@ktest:~/blktests# nvme_trtype=tcp ./check nvme
nvme/002 (create many subsystems and test discovery) [not run]
nvme_trtype=tcp is not supported in this test
nvme/003 (test if we're sending keep-alives to a discovery controller) [passed]
runtime ... 10.389s
nvme/004 (test nvme and nvmet UUID NS descriptors) [passed]
runtime ... 1.264s
nvme/005 (reset local loopback target) [passed]
runtime ... 1.403s
nvme/006 (create an NVMeOF target with a block device-backed ns) [passed]
runtime ... 0.129s
nvme/007 (create an NVMeOF target with a file-backed ns) [passed]
runtime ... 0.083s
nvme/008 (create an NVMeOF host with a block device-backed ns) [passed]
runtime ... 1.239s
nvme/009 (create an NVMeOF host with a file-backed ns) [passed]
runtime ... 1.229s
nvme/010 (run data verification fio job on NVMeOF block device-backed
ns)

Same trace, null ptr deref at skb_splice_from_iter+0x10a/0x370

Cheers,