Re: [PATCHv1.5 2/3] sunrpc/cache: don't use custom hex_to_bin()converter

From: J. Bruce Fields
Date: Wed Sep 22 2010 - 15:05:19 EST


On Tue, Sep 21, 2010 at 09:40:25AM +0300, Andy Shevchenko wrote:
> Signed-off-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
> Cc: Trond Myklebust <Trond.Myklebust@xxxxxxxxxx>
> Cc: linux-nfs@xxxxxxxxxxxxxxx

Thanks, applied for 2.6.37.

--b.

> ---
> net/sunrpc/cache.c | 20 +++++++++++++-------
> 1 files changed, 13 insertions(+), 7 deletions(-)
>
> diff --git a/net/sunrpc/cache.c b/net/sunrpc/cache.c
> index 5b7b56f..c944a24 100644
> --- a/net/sunrpc/cache.c
> +++ b/net/sunrpc/cache.c
> @@ -1171,13 +1171,19 @@ int qword_get(char **bpp, char *dest, int bufsize)
> if (bp[0] == '\\' && bp[1] == 'x') {
> /* HEX STRING */
> bp += 2;
> - while (isxdigit(bp[0]) && isxdigit(bp[1]) && len < bufsize) {
> - int byte = isdigit(*bp) ? *bp-'0' : toupper(*bp)-'A'+10;
> - bp++;
> - byte <<= 4;
> - byte |= isdigit(*bp) ? *bp-'0' : toupper(*bp)-'A'+10;
> - *dest++ = byte;
> - bp++;
> + while (len < bufsize) {
> + int h, l;
> +
> + h = hex_to_bin(bp[0]);
> + if (h < 0)
> + break;
> +
> + l = hex_to_bin(bp[1]);
> + if (l < 0)
> + break;
> +
> + *dest++ = (h << 4) | l;
> + bp += 2;
> len++;
> }
> } else {
> --
> 1.7.2.2
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/