Skip to content

block: export blk-crypto symbols required by dm-inlinecrypt#814

Open
blktests-ci[bot] wants to merge 3 commits into
for-next_basefrom
series/1088019=>for-next
Open

block: export blk-crypto symbols required by dm-inlinecrypt#814
blktests-ci[bot] wants to merge 3 commits into
for-next_basefrom
series/1088019=>for-next

Conversation

@blktests-ci
Copy link
Copy Markdown

@blktests-ci blktests-ci Bot commented May 10, 2026

Pull request for series with
subject: block: export blk-crypto symbols required by dm-inlinecrypt
version: 3
url: https://patchwork.kernel.org/project/linux-block/list/?series=1088019

@blktests-ci
Copy link
Copy Markdown
Author

blktests-ci Bot commented May 10, 2026

Upstream branch: 07dfa98
series: https://patchwork.kernel.org/project/linux-block/list/?series=1088019
version: 3

@blktests-ci
Copy link
Copy Markdown
Author

blktests-ci Bot commented May 10, 2026

Upstream branch: 31fea07
series: https://patchwork.kernel.org/project/linux-block/list/?series=1088019
version: 3

@blktests-ci blktests-ci Bot force-pushed the series/1088019=>for-next branch from 860336f to 72cb143 Compare May 10, 2026 16:19
@blktests-ci
Copy link
Copy Markdown
Author

blktests-ci Bot commented May 15, 2026

Upstream branch: 09ec486
series: https://patchwork.kernel.org/project/linux-block/list/?series=1088019
version: 3

@blktests-ci blktests-ci Bot force-pushed the series/1088019=>for-next branch from 72cb143 to 815554f Compare May 15, 2026 08:20
@blktests-ci
Copy link
Copy Markdown
Author

blktests-ci Bot commented May 21, 2026

Upstream branch: c16700a
series: https://patchwork.kernel.org/project/linux-block/list/?series=1088019
version: 3

@blktests-ci blktests-ci Bot force-pushed the series/1088019=>for-next branch from 815554f to 1a0cf85 Compare May 21, 2026 03:15
@blktests-ci
Copy link
Copy Markdown
Author

blktests-ci Bot commented May 22, 2026

Upstream branch: f1cc9ee
series: https://patchwork.kernel.org/project/linux-block/list/?series=1088019
version: 3

@blktests-ci blktests-ci Bot force-pushed the series/1088019=>for-next branch from 1a0cf85 to 471769f Compare May 22, 2026 02:14
@blktests-ci
Copy link
Copy Markdown
Author

blktests-ci Bot commented May 23, 2026

Upstream branch: 76ef4f9
series: https://patchwork.kernel.org/project/linux-block/list/?series=1088019
version: 3

ebiggers and others added 3 commits May 23, 2026 06:37
bio_crypt_set_ctx(), blk_crypto_init_key(), and
blk_crypto_start_using_key() are needed to use inline encryption; see
Documentation/block/inline-encryption.rst.  Export them so that
dm-inlinecrypt can use them.  The only reason these weren't exported
before was that inline encryption was previously used only by fs/crypto/
which is built-in code.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Add a new device-mapper target "dm-inlinecrypt" that is similar to
dm-crypt but uses the blk-crypto API instead of the regular crypto API.
This allows it to take advantage of inline encryption hardware such as
that commonly built into UFS host controllers.

The table syntax matches dm-crypt's, but for now only a stripped-down
set of parameters is supported.  For example, for now AES-256-XTS is the
only supported cipher.

dm-inlinecrypt is based on Android's dm-default-key with the
controversial passthrough support removed.  Note that due to the removal
of passthrough support, use of dm-inlinecrypt in combination with
fscrypt causes double encryption of file contents (similar to dm-crypt +
fscrypt), with the fscrypt layer not being able to use the inline
encryption hardware.  This makes dm-inlinecrypt unusable on systems such
as Android that use fscrypt and where a more optimized approach is
needed.  It is however suitable as a replacement for dm-crypt.

dm-inlinecrypt supports both keyring key and hex key, the former avoids
the key to be exposed in dm-table message. Similar to dm-default-key in
Android, it will fallabck to the software block crypto once the inline
crypto hardware cannot support the expected cipher.

Test:
dmsetup create inlinecrypt_logon --table "0 `blockdev --getsz $1` \
inlinecrypt aes-xts-plain64 :64:logon:fde:dminlinecrypt_test_key 0 $1 0"

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Linlin Zhang <linlin.zhang@oss.qualcomm.com>
This adds the admin-guide documentation for dm-inlinecrypt.

dm-inlinecrypt.rst is the guide to using dm-inlinecrypt.

Signed-off-by: Linlin Zhang <linlin.zhang@oss.qualcomm.com>
@blktests-ci blktests-ci Bot force-pushed the series/1088019=>for-next branch from 471769f to ebc0d33 Compare May 23, 2026 06:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant