purge linux/scatterlist.h usage

There are only 4 users of this scatterlist API:
- dm-bht.c: dm_bht_verify_block (and internal funcs only it calls)
- dm-bht-userspace.c: dm_bht_compute_hash
- crypto.c: crypto_hash_digest & crypto_hash_update

For crypto.c, nothing calls crypto_hash_digest.  So purge that.

For dm-bht.c, dm_bht_verify_block has long required that offset == 0.
This allows us to inline that offset down through dm_bht_compute_hash.
That leaves dm_bht_compute_hash which is processing a single buffer to
crypto_hash_update ...

For dm-bht-userspace.c, we see the same pattern.  dm_bht_compute_hash
always has an offset == 0, and passes a single buffer at a time down
to crypto_hash_update ...

That leaves us with crypto_hash_update.  Since it only cares about a
single buffer, rewrite the crypto API to accept the buffer directly
rather than going through the scatterlist structure.

At this point, nothing uses scatterlist, so drop it entirely.

BUG=chromium:878440
TEST=build works

Change-Id: I5188263b19df79d58a3f34ee1eeb6d31e75c151e
Reviewed-on: https://chromium-review.googlesource.com/1215182
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
6 files changed