On Tue, Jun 11, 2019 at 08:50:45AM +0300, Oded Gabbay wrote: > 2. The pci_set_dma_mask() is a generic Linux kernel call, so the driver > can't tell why it got an error when it tried to set the DMA mask to 48 > bits. And upon such failure, the driver must fall-back to set the mask > to 32 bits.
In the current kernel pci_set_dma_mask only fails if the DMA mask is to small to be supportable at all. So you very obviously did not actually test this against mainline.