Comment 55 for bug 1795453

@sasikumarpc -
We observed this scenario where the PERC goes offline:
sgl_ptr->Address = fffffffffffff000
sgl_ptr->Length = 1000

We do not see a roll-over here..

Kernel is indicating to read 0x1000 bytes starting from address 0xfffffffffffff000 i.e till 0xffffffffffffffff which very well aligns with 64 bit dma_mask being assigned by megaraid_sas driver.

Looks like kernel is working as expected based on the dma_mask set by megaraid_sas driver.
Once the 32bit address gets exhausted, the kernel tries to get buffer based on 64bit dma_mask top-down.

We are suspecting that the PERC firmware might not be able to handle this corner case.
PERC did not go offline by changing the dma_mask to 63, and these initial results looks to be supporting this stance on fw.
Can you please check this and revert?