Greg Kroah-Hartman | b244131 | 2017-11-01 15:07:57 +0100 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 2 | #ifndef WB_THROTTLE_H |
| 3 | #define WB_THROTTLE_H |
| 4 | |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 5 | #ifdef CONFIG_BLK_WBT |
| 6 | |
Christoph Hellwig | 958f296 | 2023-02-03 16:03:50 +0100 | [diff] [blame] | 7 | int wbt_init(struct gendisk *disk); |
Christoph Hellwig | 04aad37 | 2023-02-03 16:03:49 +0100 | [diff] [blame] | 8 | void wbt_disable_default(struct gendisk *disk); |
| 9 | void wbt_enable_default(struct gendisk *disk); |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 10 | |
Josef Bacik | a790504 | 2018-07-03 09:32:35 -0600 | [diff] [blame] | 11 | u64 wbt_get_min_lat(struct request_queue *q); |
| 12 | void wbt_set_min_lat(struct request_queue *q, u64 val); |
Yu Kuai | 3642ef4 | 2022-10-19 20:15:16 +0800 | [diff] [blame] | 13 | bool wbt_disabled(struct request_queue *); |
Josef Bacik | a790504 | 2018-07-03 09:32:35 -0600 | [diff] [blame] | 14 | |
Josef Bacik | a790504 | 2018-07-03 09:32:35 -0600 | [diff] [blame] | 15 | void wbt_set_write_cache(struct request_queue *, bool); |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 16 | |
Jens Axboe | 80e091d | 2016-11-28 09:22:47 -0700 | [diff] [blame] | 17 | u64 wbt_default_latency_nsec(struct request_queue *); |
| 18 | |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 19 | #else |
| 20 | |
Christoph Hellwig | 04aad37 | 2023-02-03 16:03:49 +0100 | [diff] [blame] | 21 | static inline void wbt_disable_default(struct gendisk *disk) |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 22 | { |
| 23 | } |
Christoph Hellwig | 04aad37 | 2023-02-03 16:03:49 +0100 | [diff] [blame] | 24 | static inline void wbt_enable_default(struct gendisk *disk) |
Jan Kara | 8330cdb | 2017-04-19 11:33:27 +0200 | [diff] [blame] | 25 | { |
| 26 | } |
Josef Bacik | a790504 | 2018-07-03 09:32:35 -0600 | [diff] [blame] | 27 | static inline void wbt_set_write_cache(struct request_queue *q, bool wc) |
| 28 | { |
| 29 | } |
Jens Axboe | e34cbd3 | 2016-11-09 12:36:15 -0700 | [diff] [blame] | 30 | |
| 31 | #endif /* CONFIG_BLK_WBT */ |
| 32 | |
| 33 | #endif |