nfs: fix pg_test page count calculation
We really want sizeof(struct page *) instead. Otherwise we limit
maximum IO size to 64 pages rather than 512 pages on a 64bit system.
Fixes 2e11f829(nfs: cap request size to fit a kmalloced page array).
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Peng Tao <tao.peng@primarydata.com>
Fixes: 2e11f8296d ("nfs: cap request size to fit a kmalloced page array")
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
			
			
This commit is contained in:
		
							parent
							
								
									a41cbe86df
								
							
						
					
					
						commit
						048883e0b9
					
				| @ -508,7 +508,7 @@ size_t nfs_generic_pg_test(struct nfs_pageio_descriptor *desc, | ||||
| 	 * for it without upsetting the slab allocator. | ||||
| 	 */ | ||||
| 	if (((mirror->pg_count + req->wb_bytes) >> PAGE_SHIFT) * | ||||
| 			sizeof(struct page) > PAGE_SIZE) | ||||
| 			sizeof(struct page *) > PAGE_SIZE) | ||||
| 		return 0; | ||||
| 
 | ||||
| 	return min(mirror->pg_bsize - mirror->pg_count, (size_t)req->wb_bytes); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user