In addition to disk drives with internally tiered-storage (solid-state + magnetic media) the kernel has also grown native I/O-caching / tiered-storage implementations in bcache and dm-cache. Currently, all these solutions depend on heuristics to determine what tier the data referenced in an I/O belongs. However, the presence of hinting proposals from SCSI [1], ATA [2], and bcache [3] indicate that these devices (hardware or virtual) want to consume explicit hints indicating the value of caching data in a higher performing tier. At LSF I want to discuss options and opportunities for plumbing cache hints from userspace, through the I/O stack to devices. My colleague, Jason Akers, is also interested in this discussion as he is investigating how to exploit these hints from userspace. I participated in the LSF 2012 discussion of this topic, see that it was raised again at LSF 2013, and note that we have not settled on an enabling path. What's new for this year is an effort to set aside, for now, the deeper complexities of the device specification proposals and focus on a minimal set of hints that can be specified per-process (ionice) and maybe per-file (fadvise). My suspicion is that AIO attributes is useful for applications that want access to the full range of access hints exposed by a device. However, for the general buffered-I/O / tiered-storage case, a small set of hints achieves the bulk of the value. I am also interested in: Volatile ranges SMR Enabling Integrity passthrough -- Dan [1] T10 LBA Access Hints [2] T13 Hybrid Information Feature [3] AIO Attributes: http://marc.info/?l=linux-aio&m=136580574523674&w=2 -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel