On Sun, 2025-08-03 at 14:24 -0700, Eric Biggers wrote: > Since the Linux kernel's sprintf() has conversion to hex built-in via > "%*phN", delete md5_to_hex() and just use that. Also add an explicit > array bound to the dname parameter of nfs4_make_rec_clidname() to make > its size clear. No functional change. > > Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx> > --- > fs/nfsd/nfs4recover.c | 18 ++---------------- > 1 file changed, 2 insertions(+), 16 deletions(-) > > diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c > index 2231192ec33f5..54f5e5392ef9d 100644 > --- a/fs/nfsd/nfs4recover.c > +++ b/fs/nfsd/nfs4recover.c > @@ -90,26 +90,12 @@ static void > nfs4_reset_creds(const struct cred *original) > { > put_cred(revert_creds(original)); > } > > -static void > -md5_to_hex(char *out, char *md5) > -{ > - int i; > - > - for (i=0; i<16; i++) { > - unsigned char c = md5[i]; > - > - *out++ = '0' + ((c&0xf0)>>4) + (c>=0xa0)*('a'-'9'-1); > - *out++ = '0' + (c&0x0f) + ((c&0x0f)>=0x0a)*('a'-'9'-1); > - } > - *out = '\0'; > -} > - > static int > -nfs4_make_rec_clidname(char *dname, const struct xdr_netobj *clname) > +nfs4_make_rec_clidname(char dname[HEXDIR_LEN], const struct xdr_netobj *clname) > { > struct xdr_netobj cksum; > struct crypto_shash *tfm; > int status; > > @@ -131,11 +117,11 @@ nfs4_make_rec_clidname(char *dname, const struct xdr_netobj *clname) > status = crypto_shash_tfm_digest(tfm, clname->data, clname->len, > cksum.data); > if (status) > goto out; > > - md5_to_hex(dname, cksum.data); > + sprintf(dname, "%*phN", 16, cksum.data); > > status = 0; > out: > kfree(cksum.data); > crypto_free_shash(tfm); > > base-commit: 186f3edfdd41f2ae87fc40a9ccba52a3bf930994 Reviewed-by: Jeff Layton <jlayton@xxxxxxxxxx>