net/sunrpc/cache: simplify code by using hex_pack_byte()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Thu, 12 Dec 2013 13:49:21 +0000 (15:49 +0200)
committerJ. Bruce Fields <bfields@redhat.com>
Thu, 12 Dec 2013 16:37:17 +0000 (11:37 -0500)
hex_pack_byte() is a fast way to convert a byte in its ASCII representation. We
may use it instead of custom approach.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
net/sunrpc/cache.c

index a72de07..0877db0 100644 (file)
@@ -1111,9 +1111,7 @@ void qword_addhex(char **bpp, int *lp, char *buf, int blen)
                *bp++ = 'x';
                len -= 2;
                while (blen && len >= 2) {
-                       unsigned char c = *buf++;
-                       *bp++ = '0' + ((c&0xf0)>>4) + (c>=0xa0)*('a'-'9'-1);
-                       *bp++ = '0' + (c&0x0f) + ((c&0x0f)>=0x0a)*('a'-'9'-1);
+                       bp = hex_byte_pack(bp, *buf++);
                        len -= 2;
                        blen--;
                }