Satya Tangirala
10f1b43cbc
FROMLIST: block: Add encryption context to struct bio
...
We must have some way of letting a storage device driver know what
encryption context it should use for en/decrypting a request. However,
it's the filesystem/fscrypt that knows about and manages encryption
contexts. As such, when the filesystem layer submits a bio to the block
layer, and this bio eventually reaches a device driver with support for
inline encryption, the device driver will need to have been told the
encryption context for that bio.
We want to communicate the encryption context from the filesystem layer
to the storage device along with the bio, when the bio is submitted to the
block layer. To do this, we add a struct bio_crypt_ctx to struct bio, which
can represent an encryption context (note that we can't use the bi_private
field in struct bio to do this because that field does not function to pass
information across layers in the storage stack). We also introduce various
functions to manipulate the bio_crypt_ctx and make the bio/request merging
logic aware of the bio_crypt_ctx.
Bug: 137270441
Test: tested as series; see Ie1b77f7615d6a7a60fdc9105c7ab2200d17636a8
Change-Id: I479de9ec13758f1978b34d897e6956e680caeb92
Signed-off-by: Satya Tangirala <satyat@google.com>
Link: https://patchwork.kernel.org/patch/11214719/
2019-10-30 14:14:59 -07:00
..
bcache
for-5.4/block-2019-09-16
2019-09-17 16:57:47 -07:00
persistent-data
dm space map common: remove check for impossible sm_find_free() return value
2019-08-26 15:39:53 -04:00
dm-bio-prison-v1.c
dm-bio-prison-v1.h
dm-bio-prison-v2.c
dm-bio-prison-v2.h
dm-bio-record.h
dm-bow.c
ANDROID: dm-bow: Fix 32 bit compile errors
2019-05-03 10:44:55 -07:00
dm-bufio.c
dm bufio: introduce a global cache replacement
2019-09-13 17:00:21 -04:00
dm-builtin.c
dm-cache-background-tracker.c
dm-cache-background-tracker.h
dm-cache-block-types.h
dm-cache-metadata.c
dm cache metadata: Fix loading discard bitset
2019-04-18 16:18:25 -04:00
dm-cache-metadata.h
dm-cache-policy-internal.h
dm-cache-policy-smq.c
dm-cache-policy.c
dm-cache-policy.h
dm-cache-target.c
dm cache: fix bugs when a GFP_NOWAIT allocation fails
2019-10-17 11:13:50 -04:00
dm-clone-metadata.c
dm: add clone target
2019-09-12 09:32:31 -04:00
dm-clone-metadata.h
dm: add clone target
2019-09-12 09:32:31 -04:00
dm-clone-target.c
dm clone: Make __hash_find static
2019-10-08 14:04:54 -04:00
dm-core.h
dm-crypt.c
dm crypt: omit parsing of the encapsulated cipher
2019-09-03 16:46:16 -04:00
dm-delay.c
dm delay: fix a crash when invalid device is specified
2019-04-26 11:29:32 -04:00
dm-dust.c
dm dust: use dust block size for badblocklist index
2019-08-21 11:27:17 -04:00
dm-era-target.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
dm-exception-store.c
dm-exception-store.h
- Improve DM snapshot target's scalability by using finer grained
2019-05-16 15:55:48 -07:00
dm-flakey.c
block: Kill gfp_t argument of blkdev_report_zones()
2019-07-11 20:04:37 -06:00
dm-init.c
docs: device-mapper: move it to the admin-guide
2019-07-15 11:03:01 -03:00
dm-integrity.c
block: centralize PI remapping logic to the block layer
2019-09-17 20:03:49 -06:00
dm-io.c
dm-ioctl.c
dm: introduce DM_GET_TARGET_VERSION
2019-09-16 10:18:01 -04:00
dm-kcopyd.c
dm kcopyd: always complete failed jobs
2019-08-15 15:57:39 -04:00
dm-linear.c
block: Kill gfp_t argument of blkdev_report_zones()
2019-07-11 20:04:37 -06:00
dm-log-userspace-base.c
dm-log-userspace-transfer.c
dm-log-userspace-transfer.h
dm-log-writes.c
dm log writes: fix incorrect comment about the logged sequence example
2019-07-09 14:13:33 -04:00
dm-log.c
dm-mpath.c
dm mpath: always free attached_handler_name in parse_path()
2019-04-30 16:51:30 -04:00
dm-mpath.h
dm-path-selector.c
dm-path-selector.h
dm-queue-length.c
dm-raid.c
dm raid: fix updating of max_discard_sectors limit
2019-09-11 16:18:23 -04:00
dm-raid1.c
dm raid1: use struct_size() with kzalloc()
2019-08-26 11:05:32 -04:00
dm-region-hash.c
dm-round-robin.c
dm-rq.c
block: Delay default elevator initialization
2019-09-05 19:52:34 -06:00
dm-rq.h
dm-service-time.c
dm-snap-persistent.c
dm-snap-transient.c
dm-snap.c
dm snapshot: rework COW throttling to fix deadlock
2019-10-10 09:46:05 -04:00
dm-stats.c
dm stats: use struct_size() helper
2019-09-04 09:39:22 -04:00
dm-stats.h
dm-stripe.c
dm-switch.c
dm-sysfs.c
dm-table.c
dm: make dm_table_find_target return NULL
2019-08-23 10:13:12 -04:00
dm-target.c
dm mpath: fix missing call of path selector type->end_io
2019-04-25 15:38:52 -04:00
dm-thin-metadata.c
dm thin metadata: check if in fail_io mode when setting needs_check
2019-07-02 15:50:08 -04:00
dm-thin-metadata.h
dm-thin.c
dm-uevent.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
2019-05-30 11:26:35 -07:00
dm-uevent.h
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
2019-05-30 11:26:35 -07:00
dm-unstripe.c
dm-verity-avb.c
ANDROID: AVB error handler to invalidate vbmeta partition.
2019-05-03 10:40:05 -07:00
dm-verity-fec.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
dm-verity-fec.h
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
dm-verity-target.c
Merge 5.4-rc1-prereleae into android-mainline
2019-09-23 14:14:08 +02:00
dm-verity-verify-sig.c
dm verity: add root hash pkcs#7 signature verification
2019-08-23 10:13:14 -04:00
dm-verity-verify-sig.h
dm verity: add root hash pkcs#7 signature verification
2019-08-23 10:13:14 -04:00
dm-verity.h
Merge 5.4-rc1-prereleae into android-mainline
2019-09-23 14:14:08 +02:00
dm-writecache.c
dm writecache: skip writecache_wait for pmem mode
2019-09-05 13:22:05 -04:00
dm-zero.c
dm-zoned-metadata.c
dm zoned: fix potential NULL dereference in dmz_do_reclaim()
2019-08-21 11:29:30 -04:00
dm-zoned-reclaim.c
dm zoned: fix a few typos
2019-08-15 15:57:43 -04:00
dm-zoned-target.c
dm zoned: fix invalid memory access
2019-08-26 10:33:58 -04:00
dm-zoned.h
dm zoned: add SPDX license identifiers
2019-08-15 15:57:42 -04:00
dm.c
FROMLIST: block: Add encryption context to struct bio
2019-10-30 14:14:59 -07:00
dm.h
dm: make dm_table_find_target return NULL
2019-08-23 10:13:12 -04:00
Kconfig
Merge 5.4-rc1-prereleae into android-mainline
2019-09-23 14:14:08 +02:00
Makefile
Merge 5.4-rc1-prereleae into android-mainline
2019-09-23 14:14:08 +02:00
md-bitmap.c
md-bitmap: create and destroy wb_info_pool with the change of bitmap
2019-06-20 16:36:00 -07:00
md-bitmap.h
md-cluster.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45
2019-05-24 17:27:12 +02:00
md-cluster.h
md-faulty.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47
2019-05-24 17:27:13 +02:00
md-linear.c
md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone
2019-09-03 14:49:28 -07:00
md-linear.h
md-multipath.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47
2019-05-24 17:27:13 +02:00
md-multipath.h
md.c
md: add feature flag MD_FEATURE_RAID0_LAYOUT
2019-09-13 13:10:06 -07:00
md.h
md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone
2019-09-03 14:49:28 -07:00
raid0.c
md/raid0: fix warning message for parameter default_layout
2019-10-16 09:43:02 -07:00
raid0.h
md/raid0: avoid RAID0 data corruption due to layout confusion.
2019-09-13 13:10:05 -07:00
raid1-10.c
md: raid1-10: Unify r{1,10}bio_pool_free
2019-06-15 01:37:35 -06:00
raid1.c
md/raid1: fail run raid1 array when active disk less than one
2019-09-03 14:52:03 -07:00
raid1.h
raid5-cache.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288
2019-06-05 17:36:37 +02:00
raid5-log.h
raid5-ppl.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288
2019-06-05 17:36:37 +02:00
raid5.c
raid5: remove STRIPE_OPS_REQ_PENDING
2019-09-13 13:14:39 -07:00
raid5.h
raid5: use bio_end_sector in r5_next_bio
2019-09-13 13:14:43 -07:00
raid10.c
md: allow last device to be forcibly removed from RAID1/RAID10.
2019-08-07 10:25:02 -07:00
raid10.h