lkml.org 
[lkml]   [2002]   [Apr]   [16]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 16 Apr 2002 10:21:34 +0200
FromMartin Dalecki <>
SubjectRe: [PATCH] 2.5.8 IDE 36
Norbert Kiesel wrote:
> Hi,
> 
> while trying to understand recent kernel changes I stumbled over
> the following patch to
> 
> diff -urN linux-2.5.8/drivers/ide/ide.c linux/drivers/ide/ide.c
> --- linux-2.5.8/drivers/ide/ide.c	Tue Apr 16 06:01:07 2002
> +++ linux/drivers/ide/ide.c	Tue Apr 16 05:38:37 2002
> 
> ...
>  while (i > 0) {
> -		u32 buffer[16];
> -		unsigned int wcount = (i > 16) ? 16 : i;
> -		i -= wcount;
> -		ata_input_data (drive, buffer, wcount);
> +		u32 buffer[SECTOR_WORDS];
> +		unsigned int count = (i > 1) ? 1 : i;
> +
> +		ata_read(drive, buffer, count * SECTOR_WORDS);
> +		i -= count;
>  	}
>  }
> ...
> 
> While the old code called ata_input_read() with [0:16] as last param,
> the new code calls the (renamed) ata_read() with either 0 or 16. Also,
> the new code loops "i" times while the old code looped "i/16+1" times.
> Was this intended or should the patch better read like:
> 
> ...
>  while (i > 0) {
> -               u32 buffer[16];
> -               unsigned int wcount = (i > 16) ? 16 : i;
> -               i -= wcount;
> -               ata_input_data (drive, buffer, wcount);
> +               u32 buffer[SECTOR_WORDS];
> +               unsigned int count = max(i, SECTOR_WORDS);
> +
> +               ata_read(drive, buffer, count);
> +               i -= count;
>         }
>  }
> ...
> 
> so long

It's fine as it is I think. Please look up at the initialization of i.
I have just divded the SECTROT_WORDS (== 16) factor out
of all the places above ata_read.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:25    [W:0.179 / U:0.050 seconds]
©2003-2008 Jasper Spaans