Reading GPU Memory fails for GPUDirect RDMA driver

I have written a driver handles the communication to and from an FPGA. Using the driver the FPGA can write data to the GPU memory but when it initiates a read from the GPU memory the DMA transfer never finishes. I can read from system memory using the same FPGA bitstream and driver so it should be able to handle reads. I was wondering if I am missing some API call that should make a read possible. I have followed this documentation to build my kernel: Developing a Linux Kernel Module using GPUDirect RDMA