FIFO cs policy: QUEUE_FIFO eventually starves other queues
FIFO has 3 queues QUEUE_FIFO, QUEUE_STALE, and QUEUE_UNSOLICITED. When the cache is full it begins to evict from QUEUE_UNSOLICITED, then QUEUE_STALE, and finally QUEUE_FIFO. Eventually QUEUE_FIFO will starve other queues.
For instance, if QUEUE_FIFO is filled to the cs limit. When an unsolicited data packet comes it in will evict one cs entry from QUEUE_FIFO. However, when another unsolicited data packet comes in the policy will see one entry in QUEUE_UNSOLICITED and evict it. Once QUEUE_FIFO is filled the policy will only allow one entry in any other lower priority queue until the CS is cleared.