1cf0ca9feSPeter ZijlstraWhat: /sys/class/bdi/<bdi>/ 2cf0ca9feSPeter ZijlstraDate: January 2008 3cf0ca9feSPeter ZijlstraContact: Peter Zijlstra <a.p.zijlstra@chello.nl> 4cf0ca9feSPeter ZijlstraDescription: 5cf0ca9feSPeter Zijlstra 676f1418bSMiklos SzerediProvide a place in sysfs for the backing_dev_info object. This allows 776f1418bSMiklos Szeredisetting and retrieving various BDI specific variables. 8cf0ca9feSPeter Zijlstra 9cf0ca9feSPeter ZijlstraThe <bdi> identifier can be either of the following: 10cf0ca9feSPeter Zijlstra 11cf0ca9feSPeter ZijlstraMAJOR:MINOR 12cf0ca9feSPeter Zijlstra 13cf0ca9feSPeter Zijlstra Device number for block devices, or value of st_dev on 14cf0ca9feSPeter Zijlstra non-block filesystems which provide their own BDI, such as NFS 15cf0ca9feSPeter Zijlstra and FUSE. 16cf0ca9feSPeter Zijlstra 1703fb0bceSMiklos SzerediMAJOR:MINOR-fuseblk 1803fb0bceSMiklos Szeredi 1903fb0bceSMiklos Szeredi Value of st_dev on fuseblk filesystems. 2003fb0bceSMiklos Szeredi 21cf0ca9feSPeter Zijlstradefault 22cf0ca9feSPeter Zijlstra 23cf0ca9feSPeter Zijlstra The default backing dev, used for non-block device backed 24cf0ca9feSPeter Zijlstra filesystems which do not provide their own BDI. 25cf0ca9feSPeter Zijlstra 268a609589SMauro Carvalho ChehabWhat: /sys/class/bdi/<bdi>/read_ahead_kb 278a609589SMauro Carvalho ChehabDate: January 2008 288a609589SMauro Carvalho ChehabContact: Peter Zijlstra <a.p.zijlstra@chello.nl> 298a609589SMauro Carvalho ChehabDescription: 30cf0ca9feSPeter Zijlstra Size of the read-ahead window in kilobytes 31cf0ca9feSPeter Zijlstra 328a609589SMauro Carvalho Chehab (read-write) 338a609589SMauro Carvalho ChehabWhat: /sys/class/bdi/<bdi>/min_ratio 348a609589SMauro Carvalho ChehabDate: January 2008 358a609589SMauro Carvalho ChehabContact: Peter Zijlstra <a.p.zijlstra@chello.nl> 368a609589SMauro Carvalho ChehabDescription: 3776f1418bSMiklos Szeredi Under normal circumstances each device is given a part of the 3876f1418bSMiklos Szeredi total write-back cache that relates to its current average 3976f1418bSMiklos Szeredi writeout speed in relation to the other devices. 4076f1418bSMiklos Szeredi 4176f1418bSMiklos Szeredi The 'min_ratio' parameter allows assigning a minimum 4276f1418bSMiklos Szeredi percentage of the write-back cache to a particular device. 4376f1418bSMiklos Szeredi For example, this is useful for providing a minimum QoS. 44a42dde04SPeter Zijlstra 458a609589SMauro Carvalho Chehab (read-write) 46a42dde04SPeter Zijlstra 478a609589SMauro Carvalho ChehabWhat: /sys/class/bdi/<bdi>/max_ratio 488a609589SMauro Carvalho ChehabDate: January 2008 498a609589SMauro Carvalho ChehabContact: Peter Zijlstra <a.p.zijlstra@chello.nl> 508a609589SMauro Carvalho ChehabDescription: 5176f1418bSMiklos Szeredi Allows limiting a particular device to use not more than the 5276f1418bSMiklos Szeredi given percentage of the write-back cache. This is useful in 5376f1418bSMiklos Szeredi situations where we want to avoid one device taking all or 5476f1418bSMiklos Szeredi most of the write-back cache. For example in case of an NFS 5576f1418bSMiklos Szeredi mount that is prone to get stuck, or a FUSE mount which cannot 5676f1418bSMiklos Szeredi be trusted to play fair. 577d311cdaSDarrick J. Wong 588a609589SMauro Carvalho Chehab (read-write) 59c354d926SStefan Roesch 60*54790f30SStefan RoeschWhat: /sys/class/bdi/<bdi>/max_ratio_fine 61*54790f30SStefan RoeschDate: November 2022 62*54790f30SStefan RoeschContact: Stefan Roesch <shr@devkernel.io> 63*54790f30SStefan RoeschDescription: 64*54790f30SStefan Roesch Allows limiting a particular device to use not more than the 65*54790f30SStefan Roesch given value of the write-back cache. The value is given as part 66*54790f30SStefan Roesch of 1 million. This is useful in situations where we want to avoid 67*54790f30SStefan Roesch one device taking all or most of the write-back cache. For example 68*54790f30SStefan Roesch in case of an NFS mount that is prone to get stuck, or a FUSE mount 69*54790f30SStefan Roesch which cannot be trusted to play fair. 70*54790f30SStefan Roesch 71*54790f30SStefan Roesch (read-write) 72*54790f30SStefan Roesch 739c832a8dSStefan RoeschWhat: /sys/class/bdi/<bdi>/min_bytes 749c832a8dSStefan RoeschDate: October 2022 759c832a8dSStefan RoeschContact: Stefan Roesch <shr@devkernel.io> 769c832a8dSStefan RoeschDescription: 779c832a8dSStefan Roesch Under normal circumstances each device is given a part of the 789c832a8dSStefan Roesch total write-back cache that relates to its current average 799c832a8dSStefan Roesch writeout speed in relation to the other devices. 809c832a8dSStefan Roesch 819c832a8dSStefan Roesch The 'min_bytes' parameter allows assigning a minimum 829c832a8dSStefan Roesch percentage of the write-back cache to a particular device 839c832a8dSStefan Roesch expressed in bytes. 849c832a8dSStefan Roesch For example, this is useful for providing a minimum QoS. 859c832a8dSStefan Roesch 869c832a8dSStefan Roesch (read-write) 879c832a8dSStefan Roesch 88c354d926SStefan RoeschWhat: /sys/class/bdi/<bdi>/max_bytes 89c354d926SStefan RoeschDate: October 2022 90c354d926SStefan RoeschContact: Stefan Roesch <shr@devkernel.io> 91c354d926SStefan RoeschDescription: 92c354d926SStefan Roesch Allows limiting a particular device to use not more than the 93c354d926SStefan Roesch given 'max_bytes' of the write-back cache. This is useful in 94c354d926SStefan Roesch situations where we want to avoid one device taking all or 95c354d926SStefan Roesch most of the write-back cache. For example in case of an NFS 96c354d926SStefan Roesch mount that is prone to get stuck, a FUSE mount which cannot be 97c354d926SStefan Roesch trusted to play fair, or a nbd device. 98c354d926SStefan Roesch 99c354d926SStefan Roesch (read-write) 100c354d926SStefan Roesch 10116b837ebSStefan RoeschWhat: /sys/class/bdi/<bdi>/strict_limit 10216b837ebSStefan RoeschDate: October 2022 10316b837ebSStefan RoeschContact: Stefan Roesch <shr@devkernel.io> 10416b837ebSStefan RoeschDescription: 10516b837ebSStefan Roesch Forces per-BDI checks for the share of given device in the write-back 10616b837ebSStefan Roesch cache even before the global background dirty limit is reached. This 10716b837ebSStefan Roesch is useful in situations where the global limit is much higher than 10816b837ebSStefan Roesch affordable for given relatively slow (or untrusted) device. Turning 10916b837ebSStefan Roesch strictlimit on has no visible effect if max_ratio is equal to 100%. 11016b837ebSStefan Roesch 11116b837ebSStefan Roesch (read-write) 1128a609589SMauro Carvalho ChehabWhat: /sys/class/bdi/<bdi>/stable_pages_required 1138a609589SMauro Carvalho ChehabDate: January 2008 1148a609589SMauro Carvalho ChehabContact: Peter Zijlstra <a.p.zijlstra@chello.nl> 1158a609589SMauro Carvalho ChehabDescription: 1167d311cdaSDarrick J. Wong If set, the backing device requires that all pages comprising a write 1177d311cdaSDarrick J. Wong request must not be changed until writeout is complete. 1188a609589SMauro Carvalho Chehab 1198a609589SMauro Carvalho Chehab (read-only) 120