The calculation of iod and avg_seg_size maybe meaningless if nvme_pci_use_sgls returns before uses them. So calculate just before use them.The compiler will do the right thing here, but I see what you mean. I think Christoph has some SGL improvements coming, though, that will obviate this.
I think that if its not coming for 4.16, it should be easy enough to take it in. FWIW, Reviewed-by: Sagi Grimberg <s...@grimberg.me>