If you receive a MemRdLk then you have to respond in some way becuase its a non-posted packet. If you don't respond, it will cause a completion timeout on the host which will hang some systems. If you don't support MemRdLk you should return a Completion Lock with status Unsupported Request. This needs to be returned using the cores configuraiton error port because in doing so you must set the UR bit in the device status register. The user does not have direct access to this register and by using the configuration error port it causes this bit to get set in the core.
Please see UG341 (Block Plus User's Guide) for more information on this port.
Also, note that there is a known issue regarding sending CplLock with UR packets with the core currently. Please see the release notes AR: http://www.xilinx.com/support/answers/29468.htm
Also, you will seldom receive a memory read lock in most systems, but its good to cover all your basis.