1. A method for data storage, comprising: in a system that comprises multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, storing on the storage devices compressed data belonging to a user volume; specifying storage locations, in which the compressed data is stored on the storage devices, in a shared data structure that is shared and modified by the servers using remote direct memory access; and coordinating access to the compressed data by the servers by querying the shared data structure, without executing code on a processor of the storage controller, wherein storing the compressed data comprises applying a background compression process, which compresses data that has already been stored on the storage devices, and updates the shared data structure so that the servers are able to access the compressed data concurrently and without executing code on the storage controller.