Ram wrote:
Andrew, I have verified the patches against my standard benchmarks
and did not see any bad effects.
Also I have reviewd the patch and it looked clean and correct.
RP
I have not had a chance to benchmark, but visual inspection looks good.
Steve
On Thu, 2005-02-24 at 11:37, Oleg Nesterov wrote:
I think that do_page_cache_readahead() can be inlined in blockable_page_cache_readahead(), this makes the code a bit more readable in my opinion.
Also makes check_ra_success() static inline.
Signed-off-by: Oleg Nesterov <[EMAIL PROTECTED]>
--- 2.6.11-rc5/mm/readahead.c~ 2005-01-29 15:51:04.000000000 +0300 +++ 2.6.11-rc5/mm/readahead.c 2005-01-29 16:37:05.000000000 +0300 @@ -348,8 +348,8 @@ int force_page_cache_readahead(struct ad * readahead isn't helping. * */ -int check_ra_success(struct file_ra_state *ra, unsigned long nr_to_read, - unsigned long actual) +static inline int check_ra_success(struct file_ra_state *ra, + unsigned long nr_to_read, unsigned long actual) { if (actual == 0) { ra->cache_hit += nr_to_read; @@ -394,15 +394,11 @@ blockable_page_cache_readahead(struct ad { int actual;
- if (block) {
- actual = __do_page_cache_readahead(mapping, filp,
- offset, nr_to_read);
- } else {
- actual = do_page_cache_readahead(mapping, filp,
- offset, nr_to_read);
- if (actual == -1)
- return 0;
- }
+ if (!block && bdi_read_congested(mapping->backing_dev_info))
+ return 0;
+
+ actual = __do_page_cache_readahead(mapping, filp, offset, nr_to_read);
+
return check_ra_success(ra, nr_to_read, actual);
}
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

