Hi All, I am having two dual port mlx_5 and I am on Ubuntu 22.04. My use case is as follows 1. I allocated a large buffer using posix_memalign and registered it. 2. From the registered buffer I carved out smaller buffers and used them for usual RDMA communication over RC QP. 3. I have 4 cq, each corresponding to 2x2 RNIC interfaces. And these cq's can be shared across 1,2,3,4 QPs. 4. The communication works fine but when I run some load, I observe IBV_WC_LOC_PROT_ERR after some time while processing a cq entry corresponding to a receive WR. The size of the cq I sent to ibv_create_cq is 1024 but I checked the cqe field, it is 2047. I checked the buffers and the lkeys and found no discrepancies there so I doubt if by any chance the MRs got deregistered in the RNIC. Normally I deregister the MR and free the buffer while tearing down the entire connection, but I was wondering is there any way to find if the MR is valid through some IB API ? I can get the affected process in gdb and if any data item need to be looked at in userland I could do that. Regards, Arka