diff options
Diffstat (limited to 'drivers/edac/amd64_edac.c')
| -rw-r--r-- | drivers/edac/amd64_edac.c | 11 | 
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c index 5a297a26211..cc8e7c78a23 100644 --- a/drivers/edac/amd64_edac.c +++ b/drivers/edac/amd64_edac.c @@ -170,8 +170,11 @@ static int __amd64_set_scrub_rate(struct pci_dev *ctl, u32 new_bw, u32 min_rate)  	 * memory controller and apply to register. Search for the first  	 * bandwidth entry that is greater or equal than the setting requested  	 * and program that. If at last entry, turn off DRAM scrubbing. +	 * +	 * If no suitable bandwidth is found, turn off DRAM scrubbing entirely +	 * by falling back to the last element in scrubrates[].  	 */ -	for (i = 0; i < ARRAY_SIZE(scrubrates); i++) { +	for (i = 0; i < ARRAY_SIZE(scrubrates) - 1; i++) {  		/*  		 * skip scrub rates which aren't recommended  		 * (see F10 BKDG, F3x58) @@ -181,12 +184,6 @@ static int __amd64_set_scrub_rate(struct pci_dev *ctl, u32 new_bw, u32 min_rate)  		if (scrubrates[i].bandwidth <= new_bw)  			break; - -		/* -		 * if no suitable bandwidth found, turn off DRAM scrubbing -		 * entirely by falling back to the last element in the -		 * scrubrates array. -		 */  	}  	scrubval = scrubrates[i].scrubval;  |