主权项 |
1. A system coupled to a host, wherein the system is coupled to a dynamic random access memory (DRAM) cache and a flash cache, wherein the DRAM cache is smaller in size than the flash cache, the system comprising:
a memory; and
a processor coupled to the memory, wherein the processor performs operations, the operations comprising:receiving, from the host, a command to release space;determining whether to discard tracks from the DRAM cache or the flash cache based on comparing a size of a corresponding cache directory with a threshold size;in response to determining that the tracks in the DRAM cache have to be discarded to release the space requested by the command, synchronously discarding tracks via a synchronous discard scan process from the DRAM cache, wherein the command to release the space waits for completion while the synchronous discard scan process is being execute, and wherein in response to completion of execution of the synchronous discard scan process, responding to the host that the tracks in the DRAM cache have been released; and in response to determining that tracks in flash cache have to be discarded to release the space requested by the command, asynchronously discarding tracks via an asynchronous discard scan process from the flash cache, wherein the command to release the space does not wait for completion while the asynchronous discard scan process is being executed, wherein prior to completion of execution of the asynchronous discard scan process, responding to the host that space release operation has been started for the flash cache, and wherein the command to release the space fails via timeout if the command to release the space waits for the asynchronous discard scan process to complete. |