Pre súborový systém btrfs asynchrónna implementácia operácie DISCARD (označenie oslobodených blokov, ktoré už nemusíme fyzicky uchovávať), realizovaná inžiniermi spoločnosti Facebook.
Podstata problému: v pôvodnej implementácii sa DISCARD vykonáva synchronne s ostatnými operáciami, čo v niektorých prípadoch vedie k problémom s výkonom, pretože musíme čakať na dokončenie prislúchajúcich príkazov úložiskami, čo si vyžaduje ďalší čas. To môže byť problémom v prípade, ak implementácia DISCARD úložiskom funguje pomaly.
Pri asynchrónnej implementácii nie je potrebné čakať na dokončenie DISCARD úložiskom pri bežnej práci FS, čím sa problém vyrieši a prevádza túto operáciu do pozadia. Predstavená implementácia tiež vykonáva niektoré optimalizácie. Napríklad, čaká určitý čas, aby zohľadnila, že blok bude možno čoskoro použitý, takže by nemalo zmysel vykonávať procedúru DISCARD, a tiež sa snaží zlúčiť oblasti pred skutočným vykonaním DISCARD s cieľom znížiť celkový počet operácií.
Zdroj: opennet.ru
