Eric Biggers
5515324258
ANDROID: dm: add dm-default-key target for metadata encryption
...
Add a device-mapper target "dm-default-key" which assigns an encryption
key to bios that aren't for the contents of an encrypted file.
This ensures that all blocks on-disk will be encrypted with some key,
without the performance hit of file contents being encrypted twice when
fscrypt (File-Based Encryption) is used.
It is only appropriate to use dm-default-key when key configuration is
tightly controlled, like it is in Android, such that all fscrypt keys
are at least as hard to compromise as the default key.
Compared to the original version of dm-default-key, this has been
modified to use the new vendor-independent inline encryption framework
(which works even when no inline encryption hardware is present), the
table syntax has been changed to match dm-crypt, and support for
specifying Adiantum encryption has been added. These changes also mean
that dm-default-key now always explicitly specifies the DUN (the IV).
Also, to handle f2fs moving blocks of encrypted files around without the
key, and to handle ext4 and f2fs filesystems mounted without
'-o inlinecrypt', the mapping logic is no longer "set a key on the bio
if it doesn't have one already", but rather "set a key on the bio unless
the bio has the bi_skip_dm_default_key flag set". Filesystems set this
flag on *all* bios for encrypted file contents, regardless of whether
they are encrypting/decrypting the file using inline encryption or the
traditional filesystem-layer encryption, or moving the raw data.
For the bi_skip_dm_default_key flag, a new field in struct bio is used
rather than a bit in bi_opf so that fscrypt_set_bio_crypt_ctx() can set
the flag, minimizing the changes needed to filesystems. (bi_opf is
usually overwritten after fscrypt_set_bio_crypt_ctx() is called.)
Bug: 137270441
Bug: 147814592
Change-Id: I69c9cd1e968ccf990e4ad96e5115b662237f5095
Signed-off-by: Eric Biggers <ebiggers@google.com>
2020-01-24 10:52:54 -08:00
..
accessibility
acpi
ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100
2020-01-09 10:20:02 +01:00
amba
ARM updates for 5.4-rc:
2019-10-23 06:26:33 -04:00
android
This is the 5.4.4 stable release
2019-12-17 20:10:28 +01:00
ata
libata: Fix retrieving of active qcs
2020-01-09 10:19:59 +01:00
atm
atm: he: clean up an indentation issue
2019-09-25 13:54:45 +02:00
auxdisplay
base
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
bcma
block
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
bluetooth
Bluetooth: btusb: fix PM leak in error case of setup
2020-01-09 10:20:04 +01:00
bus
bus: ti-sysc: Fix iterating over clocks
2020-01-23 08:22:28 +01:00
cdrom
cdrom: respect device capabilities during opening action
2020-01-04 19:18:25 +01:00
char
tpm: Handle negative priv->response_len in tpm_common_read()
2020-01-14 20:08:21 +01:00
clk
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
clocksource
clocksource: riscv: add notrace to riscv_sched_clock
2020-01-09 10:19:59 +01:00
connector
counter
cpufreq
This is the 5.4.7 stable release
2019-12-31 17:56:13 +01:00
cpuidle
cpuidle: teo: Fix intervals[] array indexing bug
2020-01-23 08:22:32 +01:00
crypto
crypto: geode-aes - convert to skcipher API and make thread-safe
2020-01-17 19:48:46 +01:00
dax
dca
devfreq
PM / devfreq: tegra: Add COMMON_CLK dependency
2020-01-17 19:48:22 +01:00
dio
dma
ioat: ioat_alloc_ring() failure handling.
2020-01-17 19:49:06 +01:00
dma-buf
This is the 5.4.6 stable release
2019-12-21 11:19:45 +01:00
edac
EDAC/ghes: Fix grain calculation
2019-12-31 16:45:16 +01:00
eisa
extcon
extcon: sm5502: Reset registers during initialization
2019-12-31 16:44:04 +01:00
firewire
net: add annotations on hh->hh_len lockless accesses
2020-01-09 10:20:06 +01:00
firmware
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
fpga
fsi
fsi: core: Fix small accesses and unaligned offsets via sysfs
2019-12-31 16:45:09 +01:00
gnss
ANDROID: gnss: Add command line test driver
2019-12-19 15:35:47 -08:00
gpio
Revert "gpio: thunderx: Switch to GPIOLIB_IRQCHIP"
2020-01-23 08:22:29 +01:00
gpu
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
greybus
hid
HID: hidraw, uhid: Always report EPOLLOUT
2020-01-17 19:48:15 +01:00
hsi
HSI changes for the 5.4 series
2019-09-22 12:02:21 -07:00
hv
Drivers: hv: vmbus: Fix crash handler reset of Hyper-V synic
2020-01-04 19:18:21 +01:00
hwmon
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
hwspinlock
hwtracing
intel_th: msu: Fix window switching without windows
2019-12-31 16:46:09 +01:00
i2c
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
i3c
ide
idle
iio
iio: buffer: align the size of scan bytes to size of the largest element
2020-01-23 08:22:33 +01:00
infiniband
RDMA/srpt: Report the SCSI residual to the initiator
2020-01-17 19:48:40 +01:00
input
Input: input_event - fix struct padding on sparc64
2020-01-14 20:08:24 +01:00
interconnect
interconnect: qcom: qcs404: Walk the list safely on node removal
2019-12-17 19:55:39 +01:00
iommu
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
ipack
irqchip
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
isdn
net: use skb_queue_empty_lockless() in poll() handlers
2019-10-28 13:33:41 -07:00
leds
leds: trigger: netdev: fix handling on interface rename
2020-01-04 19:17:05 +01:00
lightnvm
macintosh
cpufreq: Use per-policy frequency QoS
2019-10-21 02:05:21 +02:00
mailbox
mailbox: imx: Fix Tx doorbell shutdown path
2020-01-04 19:18:30 +01:00
mcb
md
ANDROID: dm: add dm-default-key target for metadata encryption
2020-01-24 10:52:54 -08:00
media
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
memory
memory: mtk-smi: Add PM suspend and resume ops
2020-01-17 19:48:59 +01:00
memstick
memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()'
2019-10-09 11:08:03 +02:00
message
scsi: mptfusion: Fix double fetch bug in ioctl
2020-01-23 08:22:35 +01:00
mfd
mfd: mt6397: Fix probe after changing mt6397-core
2019-10-24 08:49:25 +01:00
misc
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
mmc
This is the 5.4.8 stable release
2020-01-04 19:40:03 +01:00
mtd
mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash
2020-01-23 08:22:57 +01:00
mux
net
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
nfc
NFC: pn533: fix bulk-message timeout
2020-01-23 08:22:48 +01:00
ntb
NTB: fix IDT Kconfig typos/spellos
2019-09-23 17:20:40 -04:00
nubus
nvdimm
libnvdimm/btt: fix variable 'rc' set but not used
2020-01-04 19:18:12 +01:00
nvme
nvme/pci: Fix read queue count
2020-01-09 10:19:43 +01:00
nvmem
nvmem: imx-ocotp: reset error status on probe
2019-12-31 16:44:42 +01:00
of
This is the 5.4.9 stable release
2020-01-09 16:00:18 +01:00
opp
opp: Reinitialize the list_kref before adding the static OPPs again
2019-10-23 10:58:44 +05:30
oprofile
parisc
parisc: Remove 32-bit DMA enforcement from sba_iommu
2019-10-14 21:44:26 +02:00
parport
parport: load lowlevel driver if ports not found
2019-12-31 16:45:25 +01:00
pci
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
pcmcia
Merge branch 'next-lockdown' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
2019-09-28 08:14:15 -07:00
perf
perf/smmuv3: Remove the leftover put_cpu() in error path
2020-01-12 12:21:38 +01:00
phy
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
pinctrl
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
platform
MIPS: Loongson: Fix return value of loongson_hwmon_init
2020-01-17 19:48:55 +01:00
pnp
power
ANDROID: reset: hisi-reboot: adb reboot bootloader
2020-01-13 17:43:11 +00:00
powercap
powercap: intel_rapl: add NULL pointer check to rapl_mmio_cpu_online()
2020-01-14 20:08:18 +01:00
pps
ps3
ptp
ptp: free ptp device pin descriptors properly
2020-01-23 08:22:51 +01:00
pwm
FROMLIST: pwm: Convert period and duty cycle to u64
2019-11-26 10:57:36 -08:00
rapidio
ras
regulator
This is the 5.4.11 stable release
2020-01-12 15:36:52 +01:00
remoteproc
remoteproc updates for v5.4
2019-09-22 10:55:08 -07:00
reset
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
rpmsg
rpmsg: char: release allocated memory
2020-01-14 20:08:37 +01:00
rtc
rtc: bd70528: Add MODULE ALIAS to autoload module
2020-01-17 19:49:03 +01:00
s390
s390/zcrypt: Fix CCA cipher key gen with clear key value function
2020-01-23 08:22:38 +01:00
sbus
scsi
FROMLIST: scsi: ufs: add program_key() variant op
2020-01-24 10:52:54 -08:00
sfi
sh
siox
slimbus
soc
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
soundwire
soundwire: intel: fix PDI/stream mapping for Bulk
2019-12-31 16:45:11 +01:00
spi
spi: lpspi: fix memory leak in fsl_lpspi_probe
2020-01-17 19:49:01 +01:00
spmi
ssb
staging
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
target
scsi: target: core: Fix a pr_debug() argument
2020-01-23 08:22:58 +01:00
tc
tee
tee/shm: untag user pointers in tee_shm_register
2019-09-25 17:51:41 -07:00
thermal
thermal: Fix deadlock in thermal thermal_zone_device_check
2019-12-13 08:43:21 +01:00
thunderbolt
thunderbolt: Power cycle the router if NVM authentication fails
2019-12-04 22:30:50 +01:00
tty
This is the 5.4.13 stable release
2020-01-17 23:38:39 +01:00
uio
usb
This is the 5.4.14 stable release
2020-01-23 08:37:43 +01:00
vfio
vfio/pci: call irq_bypass_unregister_producer() before freeing irq
2019-12-21 11:04:48 +01:00
vhost
UPSTREAM: vhost, kcov: collect coverage from vhost_worker
2020-01-13 23:46:20 +00:00
video
This is the 5.4.4 stable release
2019-12-17 20:10:28 +01:00
virt
virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr
2019-10-10 14:50:32 +02:00
virtio
This is the 5.4.4 stable release
2019-12-17 20:10:28 +01:00
visorbus
vlynq
vme
w1
w1: ds250x: Fix build error without CRC16
2019-10-10 15:35:41 +02:00
watchdog
watchdog: tqmx86_wdt: Fix build error
2020-01-09 10:20:03 +01:00
xen
xen/balloon: fix ballooned page accounting without hotplug enabled
2020-01-09 10:19:51 +01:00
zorro
Kconfig
Makefile