Eric Biggers
0367acdde3
ANDROID: block: require drivers to declare supported crypto key type(s)
...
We need a way to tell which type of keys the inline crypto hardware
supports (standard, wrapped, or both), so that fallbacks can be used
when needed (either blk-crypto-fallback, or fscrypt fs-layer crypto).
We can't simply assume that
keyslot_mgmt_ll_ops::derive_raw_secret == NULL
means only standard keys are supported and that
keyslot_mgmt_ll_ops::derive_raw_secret != NULL
means that only wrapped keys are supported, because device-mapper
devices always implement this method. Also, hardware might support both
types of keys.
Therefore, add a field keyslot_manager::features which contains a
bitmask of flags which indicate the supported types of keys. Drivers
will need to fill this in. This patch makes the UFS standard crypto
code set BLK_CRYPTO_FEATURE_STANDARD_KEYS, but UFS variant drivers may
need to set BLK_CRYPTO_FEATURE_WRAPPED_KEYS instead.
Then, make keyslot_manager_crypto_mode_supported() take the key type
into account.
Bug: 137270441
Bug: 151100202
Test: 'atest vts_kernel_encryption_test' on Pixel 4 with the
inline crypto patches backported, and also on Cuttlefish.
Change-Id: Ied846c2767c1fd2f438792dcfd3649157e68b005
Signed-off-by: Eric Biggers <ebiggers@google.com>
2020-04-07 17:58:49 +00:00
..
9p
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00
adfs
Merge branch 'work.adfs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 11:33:22 -07:00
affs
affs: fix a memory leak in affs_remount
2020-01-17 19:48:50 +01:00
afs
This is the 5.4.29 stable release
2020-04-02 14:26:14 +02:00
autofs
autofs: fix a leak in autofs_expire_indirect()
2019-10-25 00:03:11 -04:00
befs
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
bfs
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
btrfs
This is the 5.4.28 stable release
2020-03-25 16:12:11 +01:00
cachefiles
ceph
This is the 5.4.29 stable release
2020-04-02 14:26:14 +02:00
cifs
This is the 5.4.28 stable release
2020-03-25 16:12:11 +01:00
coda
y2038: add inode timestamp clamping
2019-09-19 09:42:37 -07:00
configfs
utimes: Clamp the timestamps in notify_change()
2020-02-11 04:35:12 -08:00
cramfs
cramfs: fix usage on non-MTD device
2019-11-23 21:44:49 -05:00
crypto
ANDROID: block: require drivers to declare supported crypto key type(s)
2020-04-07 17:58:49 +00:00
debugfs
debugfs: Return -EPERM when locked down
2020-02-01 09:34:35 +00:00
devpts
devpts_pty_kill(): don't bother with d_delete()
2019-09-03 09:30:56 -04:00
dlm
dlm for 5.3
2019-07-12 17:37:53 -07:00
ecryptfs
This is the 5.4.23 stable release
2020-03-01 10:17:44 +01:00
efivarfs
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 10:42:02 -07:00
efs
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
erofs
This is the 5.4.19 stable release
2020-02-11 14:09:41 -08:00
exportfs
exportfs_decode_fh(): negative pinned may become positive without the parent locked
2019-11-10 11:56:05 -05:00
ext2
This is the 5.4.19 stable release
2020-02-11 14:09:41 -08:00
ext4
FROMLIST: ext4: wire up FS_IOC_GET_ENCRYPTION_NONCE
2020-03-19 11:29:03 -07:00
f2fs
FROMLIST: f2fs: wire up FS_IOC_GET_ENCRYPTION_NONCE
2020-03-19 11:29:03 -07:00
fat
fat: fix uninit-memory access for partial initialized inode
2020-03-12 13:00:19 +01:00
freevxfs
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
fscache
Revert "Merge tag 'keys-acl-20190703' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs"
2019-07-10 18:43:43 -07:00
fuse
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
gfs2
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
hfs
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00
hfsplus
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00
hostfs
hpfs
fs: hpfs: Initialize filesystem timestamp ranges
2019-08-30 08:11:25 -07:00
hugetlbfs
mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs()
2020-01-04 19:19:19 +01:00
incfs
ANDROID: Incremental fs: Fix remount
2020-04-03 17:20:37 +00:00
iomap
ANDROID: ext4, f2fs: enable direct I/O with inline encryption
2020-01-24 10:52:54 -08:00
isofs
y2038: add inode timestamp clamping
2019-09-19 09:42:37 -07:00
jbd2
jbd2: fix data races at struct journal_head
2020-03-21 08:11:57 +01:00
jffs2
This is the 5.4.2 stable release
2019-12-04 23:46:13 +01:00
jfs
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00
kernfs
This is the 5.4.3 stable release
2019-12-13 17:03:53 +01:00
lockd
minix
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
nfs
This is the 5.4.29 stable release
2020-04-02 14:26:14 +02:00
nfs_common
nfsd
nfsd: Clone should commit src file metadata too
2020-02-24 08:36:38 +01:00
nilfs2
nls
notify
This is the 5.4.11 stable release
2020-01-12 15:36:52 +01:00
ntfs
utimes: Clamp the timestamps in notify_change()
2020-02-11 04:35:12 -08:00
ocfs2
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
omfs
fs: omfs: Initialize filesystem timestamp ranges
2019-08-30 08:11:25 -07:00
openpromfs
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 10:42:02 -07:00
orangefs
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
overlayfs
This is the 5.4.19 stable release
2020-02-11 14:09:41 -08:00
proc
Revert "ANDROID: proc: Add /proc/uid directory"
2020-03-06 20:23:08 +00:00
pstore
pstore/ram: Regularize prz label allocation lifetime
2020-01-14 20:08:28 +01:00
qnx4
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
qnx6
fs: Fill in max and min timestamps in superblock
2019-08-30 07:27:17 -07:00
quota
fs: avoid softlockups in s_inodes iterators
2020-01-12 12:21:37 +01:00
ramfs
vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API
2019-09-12 21:05:34 -04:00
reiserfs
This is the 5.4.22 stable release
2020-02-24 09:16:10 +01:00
romfs
Merge branch 'work.mount2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-09-19 10:06:57 -07:00
sdcardfs
ANDROID: sdcardfs: fix -ENOENT lookup race issue
2020-01-07 02:42:56 +00:00
squashfs
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00
sysfs
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 10:42:02 -07:00
sysv
fs: sysv: Initialize filesystem timestamp ranges
2019-08-30 07:27:18 -07:00
tracefs
tracing: Do not create tracefs files if tracefs lockdown is in effect
2019-10-12 20:49:07 -04:00
ubifs
FROMLIST: ubifs: wire up FS_IOC_GET_ENCRYPTION_NONCE
2020-03-19 11:29:03 -07:00
udf
udf: Fix free space reporting for metadata and virtual partitions
2020-02-24 08:36:44 +01:00
ufs
y2038: add inode timestamp clamping
2019-09-19 09:42:37 -07:00
unicode
FROMLIST: unicode: Add utf8_casefold_hash
2020-02-20 21:21:02 +00:00
verity
fs-verity: use u64_to_user_ptr()
2020-02-13 15:02:44 -08:00
xfs
This is the 5.4.24 stable release
2020-03-05 17:42:40 +01:00
aio.c
aio: prevent potential eventfd recursion on poll
2020-02-11 04:35:37 -08:00
anon_inodes.c
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 10:42:02 -07:00
attr.c
This is the 5.4.19 stable release
2020-02-11 14:09:41 -08:00
bad_inode.c
binfmt_aout.c
binfmt_elf.c
elf: don't use MAP_FIXED_NOREPLACE for elf executable mappings
2019-10-06 13:53:27 -07:00
binfmt_elf_fdpic.c
binfmt_em86.c
binfmt_flat.c
fs/binfmt_flat.c: remove set but not used variable 'inode'
2019-07-16 19:23:22 -07:00
binfmt_misc.c
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 10:42:02 -07:00
binfmt_script.c
block_dev.c
bdev: Refresh bdev size for disks without partitioning
2019-12-13 08:43:19 +01:00
buffer.c
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
char_dev.c
chardev: Avoid potential use-after-free in 'chrdev_open()'
2020-01-14 20:08:18 +01:00
compat.c
compat_binfmt_elf.c
compat_ioctl.c
fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP
2020-01-09 10:20:05 +01:00
coredump.c
Merge 5.3-rc3 into android-mainline
2019-08-05 05:21:19 +00:00
d_path.c
[PATCH] fix d_absolute_path() interplay with fsmount()
2019-08-30 19:31:09 -04:00
dax.c
dax: pass NOWAIT flag to iomap_apply
2020-03-05 16:43:36 +01:00
dcache.c
Merge branch 'work.dcache2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-20 09:15:51 -07:00
dcookies.c
direct-io.c
ANDROID: ext4, f2fs: enable direct I/O with inline encryption
2020-01-24 10:52:54 -08:00
drop_caches.c
fs: avoid softlockups in s_inodes iterators
2020-01-12 12:21:37 +01:00
eventfd.c
eventfd: track eventfd_signal() recursion depth
2020-02-11 04:35:37 -08:00
eventpoll.c
This is the 5.4.28 stable release
2020-03-25 16:12:11 +01:00
exec.c
This is the 5.4.1 stable release
2019-11-29 10:56:00 +01:00
fcntl.c
fhandle.c
fs/handle.c - fix up kerneldoc
2019-08-07 21:51:47 -04:00
file.c
file_table.c
vfs: Export flush_delayed_fput for use by knfsd.
2019-08-19 11:00:39 -04:00
filesystems.c
fs-writeback.c
memcg: fix a crash in wb_workfn when a device disappears
2020-02-11 04:35:11 -08:00
fs_context.c
vfs: subtype handling moved to fuse
2019-09-06 21:28:49 +02:00
fs_parser.c
vfs: Make fs_parse() handle fs_param_is_fd-type params better
2019-09-12 21:06:14 -04:00
fs_pin.c
switch the remnants of releasing the mountpoint away from fs_pin
2019-07-16 22:52:37 -04:00
fs_struct.c
ANDROID: sdcardfs: Enable modular sdcardfs
2019-07-19 12:39:17 -07:00
fs_types.c
fsopen.c
Merge branch 'work.mount0' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-07-19 10:42:02 -07:00
inode.c
This is the 5.4.28 stable release
2020-03-25 16:12:11 +01:00
internal.h
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
io_uring.c
io_uring: fix 32-bit compatability with sendmsg/recvmsg
2020-03-05 16:43:44 +01:00
ioctl.c
compat_ioctl: add compat_ptr_ioctl()
2019-12-17 19:55:30 +01:00
Kconfig
ANDROID: Initial commit of Incremental FS
2020-01-30 17:13:48 -08:00
Kconfig.binfmt
libfs.c
This is the 5.4.29 stable release
2020-04-02 14:26:14 +02:00
locks.c
locks: reinstate locks_delete_block optimization
2020-03-25 08:25:41 +01:00
Makefile
ANDROID: Initial commit of Incremental FS
2020-01-30 17:13:48 -08:00
mbcache.c
mount.h
switch the remnants of releasing the mountpoint away from fs_pin
2019-07-16 22:52:37 -04:00
mpage.c
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
namei.c
This is the 5.4.24 stable release
2020-03-05 17:42:40 +01:00
namespace.c
Linux 5.4-rc8
2019-11-18 08:31:11 +01:00
no-block.c
nsfs.c
open.c
This is the 5.4.26 stable release
2020-03-18 08:19:15 +01:00
pipe.c
pnode.c
ANDROID: mnt: Add filesystem private data to mount points
2019-07-19 12:39:18 -07:00
pnode.h
ANDROID: mnt: Add filesystem private data to mount points
2019-07-19 12:39:18 -07:00
posix_acl.c
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00
proc_namespace.c
Merge 5.4-rc1-prelrease into android-mainline
2019-10-02 17:58:47 +02:00
read_write.c
This is the 5.4.19 stable release
2020-02-11 14:09:41 -08:00
readdir.c
readdir: be more conservative with directory entry names
2020-01-29 16:45:31 +01:00
select.c
fs/select.c: use struct_size() in kmalloc()
2019-07-16 19:23:25 -07:00
seq_file.c
seq_file: fix problem when seeking mid-record
2019-08-13 16:06:52 -07:00
signalfd.c
splice.c
splice: only read in as much information as there is pipe buffer space
2019-12-17 19:56:52 +01:00
stack.c
stat.c
statfs.c
vfs: Fix EOVERFLOW testing in put_compat_statfs64
2019-10-03 14:21:35 -07:00
super.c
fs: call fsnotify_sb_delete after evict_inodes
2020-01-12 12:21:38 +01:00
sync.c
timerfd.c
timerfd: Prepare for PREEMPT_RT
2019-08-01 20:51:23 +02:00
userfaultfd.c
This is the 5.4.8 stable release
2020-01-04 19:40:03 +01:00
utimes.c
This is the 5.4.19 stable release
2020-02-11 14:09:41 -08:00
xattr.c
FROMLIST: Add flags option to get xattr method paired to __vfs_getxattr
2019-11-05 13:50:57 -08:00