Hello, On Wed, May 15, 2024 at 09:23:50AM +0800, zhaoyang.huang wrote: > +static unsigned long get_next_ra_size(struct readahead_control *ractl, > unsigned long max) > { > + unsigned long cur = ractl->ra->size; > + struct inode *inode = ractl->mapping->host; > + unsigned long budgt = inode->i_sb->s_bdev ? > + blk_throttle_budgt(inode->i_sb->s_bdev) : 0; Technical correctness aside, I'm not convinced it's generally a good idea to bubble up one specific IO control mechanism's detail all the way upto RA layer. Besides what's the gain here? For continuous IO stream, whether some RA bios are oversized or not shouldn't matter, no? Doesn't this just affect the accuracy of the last RA IO of a finite read stream? Thanks. -- tejun