Messages in this thread | | | Subject | Re: [PATCH] iov_iter: Fix build error without CONFIG_CRYPTO | From | YueHaibing <> | Date | Thu, 4 Apr 2019 10:18:03 +0800 |
| |
On 2019/4/4 0:52, Al Viro wrote: > On Wed, Apr 03, 2019 at 05:50:31PM +0800, Yue Haibing wrote: >> From: YueHaibing <yuehaibing@huawei.com> >> >> If CONFIG_CRYPTO is not set or set to m, >> gcc building warn this: >> >> lib/iov_iter.o: In function `hash_and_copy_to_iter': >> iov_iter.c:(.text+0x9129): undefined reference to `crypto_stats_get' >> iov_iter.c:(.text+0x9152): undefined reference to `crypto_stats_ahash_update' >> >> Reported-by: Hulk Robot <hulkci@huawei.com> >> Fixes: d05f443554b3 ("iov_iter: introduce hash_and_copy_to_iter helper") >> Signed-off-by: YueHaibing <yuehaibing@huawei.com> > > I'm not sure it's the right fix; might be better to have something like > > size_t hash_and_copy_to_iter(const void *addr, size_t bytes, void *hashp, > struct iov_iter *i) > { > #ifdef CONFIG_CRYPTO > struct ahash_request *hash = hashp; > struct scatterlist sg; > size_t copied; > > copied = copy_to_iter(addr, bytes, i); > sg_init_one(&sg, addr, copied); > ahash_request_set_crypt(hash, &sg, NULL, copied); > crypto_ahash_update(hash); > return copied; > #else > return 0; > #endif > } > EXPORT_SYMBOL(hash_and_copy_to_iter); > > instead. Objections?
Indeed, this seems better. I can post v2 as your suggestion.
> > . >
| |