| |
| |
| |
| What is bcache |
| |
| Bcache history |
| - Kent overstreet |
| - merge in 3.10 |
| - part of contributors |
| - enterprise stabled since 5.3 |
| |
| How to install bcache |
| |
| How to use bcache |
| |
| Config and manage bcache via sysfs |
| |
| Bcache concepts |
| - Cache device and (cached) backing device |
| - Closure |
| - Bucket |
| - bkey |
| - Btree and bset |
| - journal |
| - generation |
| - garbage collection |
| - fifo |
| - Cache modes |
| - Flash only volume |
| |
| Device registration and unregistartion |
| |
| Cache attache and detach |
| |
| Bcache initialization and shutdown |
| |
| Read request handling |
| - Without cache device |
| - With cache device |
| - Write-back mode |
| - Write-through mode |
| - Write-around and read-around mode |
| Write request handling |
| - Write-back mode |
| - Write-through mode |
| - Write-around mode |
| |
| Journaling |
| - journaling and journal flush |
| - journal reclaim |
| - journal replay |
| - journal space reservation |
| |
| Btree, bset and bkey |
| - Btree allocation |
| from memory and from ssd |
| btree canibalize |
| - in-memory btree node cache shrink |
| - bkey search, insert, delete |
| - extent management |
| - check key? |
| |
| Garbage collection, |
| - garbage collection |
| - moving gc |
| - replacement policies |
| - proactive gc |
| |
| Hot plug and I/O error handling |
| |
| Zoned devices |
| - As backing device |
| - As cache device |
| |
| |
| |
| FIFO and merge sort |
| |
| Tracing |
| |
| Bcache internal debugging |
| |
| States and statistics |
| |
| All the lockes used in bcache code |
| |
| |
| |
| |
| |
| |
| |