ANDROID: add fips140.ko symbols to module ABI

Leaf changes summary: 71 artifacts changed (1 filtered out)
Changed leaf types summary: 0 (1 filtered out) leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 61 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 10 Added variables
Function symbols changes summary: 0 Removed, 1 Added function symbol not referenced by debug info
Variable symbols changes summary: 0 Removed, 2 Added variable symbols not referenced by debug info

61 Added functions:

  [A] 'function unsigned long int __crypto_memneq(void*, void*, size_t)'
  [A] 'function void __crypto_xor(u8*, const u8*, const u8*, unsigned int)'
  [A] 'function int __traceiter_android_vh_aes_decrypt(void*, const crypto_aes_ctx*, u8*, const u8*, int*)'
  [A] 'function int __traceiter_android_vh_aes_encrypt(void*, const crypto_aes_ctx*, u8*, const u8*, int*)'
  [A] 'function int __traceiter_android_vh_aes_expandkey(void*, crypto_aes_ctx*, const u8*, unsigned int, int*)'
  [A] 'function int __traceiter_android_vh_sha256(void*, const u8*, unsigned int, u8*, int*)'
  [A] 'function int add_random_ready_callback(random_ready_callback*)'
  [A] 'function int aead_register_instance(crypto_template*, aead_instance*)'
  [A] 'function void aes_decrypt(const crypto_aes_ctx*, unsigned char*, const unsigned char*)'
  [A] 'function int ce_aes_expandkey(crypto_aes_ctx*, const u8*, unsigned int)'
  [A] 'function bool cpu_have_feature(unsigned int)'
  [A] 'function int crypto_aes_set_key(crypto_tfm*, const u8*, unsigned int)'
  [A] 'function int crypto_ahash_finup(ahash_request*)'
  [A] 'function crypto_alg* crypto_alg_mod_lookup(const char*, u32, u32)'
  [A] 'function crypto_rng* crypto_alloc_rng(const char*, u32, u32)'
  [A] 'function const char* crypto_attr_alg_name(rtattr*)'
  [A] 'function int crypto_check_attr_type(rtattr**, u32, u32*)'
  [A] 'function void crypto_drop_spawn(crypto_spawn*)'
  [A] 'function crypto_sync_skcipher* crypto_get_default_null_skcipher()'
  [A] 'function int crypto_grab_aead(crypto_aead_spawn*, crypto_instance*, const char*, u32, u32)'
  [A] 'function int crypto_grab_ahash(crypto_ahash_spawn*, crypto_instance*, const char*, u32, u32)'
  [A] 'function int crypto_grab_shash(crypto_shash_spawn*, crypto_instance*, const char*, u32, u32)'
  [A] 'function int crypto_grab_skcipher(crypto_skcipher_spawn*, crypto_instance*, const char*, u32, u32)'
  [A] 'function void crypto_inc(u8*, unsigned int)'
  [A] 'function int crypto_inst_setname(crypto_instance*, const char*, crypto_alg*)'
  [A] 'function void crypto_put_default_null_skcipher()'
  [A] 'function int crypto_register_shash(shash_alg*)'
  [A] 'function int crypto_register_shashes(shash_alg*, int)'
  [A] 'function int crypto_register_skciphers(skcipher_alg*, int)'
  [A] 'function int crypto_register_template(crypto_template*)'
  [A] 'function int crypto_register_templates(crypto_template*, int)'
  [A] 'function void crypto_remove_final(list_head*)'
  [A] 'function void crypto_remove_spawns(crypto_alg*, list_head*, crypto_alg*)'
  [A] 'function void crypto_req_done(crypto_async_request*, int)'
  [A] 'function int crypto_sha1_finup(shash_desc*, const u8*, unsigned int, u8*)'
  [A] 'function int crypto_sha1_update(shash_desc*, const u8*, unsigned int)'
  [A] 'function bool crypto_shash_alg_has_setkey(shash_alg*)'
  [A] 'function int crypto_shash_tfm_digest(crypto_shash*, const unsigned char*, unsigned int, unsigned char*)'
  [A] 'function void* crypto_spawn_tfm2(crypto_spawn*)'
  [A] 'function void crypto_unregister_shash(shash_alg*)'
  [A] 'function void crypto_unregister_shashes(shash_alg*, int)'
  [A] 'function void crypto_unregister_skciphers(skcipher_alg*, int)'
  [A] 'function void crypto_unregister_template(crypto_template*)'
  [A] 'function void crypto_unregister_templates(crypto_template*, int)'
  [A] 'function void del_random_ready_callback(random_ready_callback*)'
  [A] 'function void gf128mul_lle(be128*, const be128*)'
  [A] 'function void kernel_neon_begin()'
  [A] 'function void kernel_neon_end()'
  [A] 'function void sha1_transform(unsigned int*, const char*, unsigned int*)'
  [A] 'function void sha224_final(sha256_state*, u8*)'
  [A] 'function void sha256(const unsigned char*, unsigned int, unsigned char*)'
  [A] 'function void sha256_final(sha256_state*, u8*)'
  [A] 'function void sha256_update(sha256_state*, const unsigned char*, unsigned int)'
  [A] 'function void shash_free_singlespawn_instance(shash_instance*)'
  [A] 'function int shash_register_instance(crypto_template*, shash_instance*)'
  [A] 'function skcipher_instance* skcipher_alloc_instance_simple(crypto_template*, rtattr**)'
  [A] 'function int skcipher_register_instance(crypto_template*, skcipher_instance*)'
  [A] 'function int skcipher_walk_aead_decrypt(skcipher_walk*, aead_request*, bool)'
  [A] 'function int skcipher_walk_aead_encrypt(skcipher_walk*, aead_request*, bool)'
  [A] 'function int skcipher_walk_done(skcipher_walk*, int)'
  [A] 'function int skcipher_walk_virt(skcipher_walk*, skcipher_request*, bool)'

10 Added variables:

  [A] 'tracepoint __tracepoint_android_vh_aes_decrypt'
  [A] 'tracepoint __tracepoint_android_vh_aes_encrypt'
  [A] 'tracepoint __tracepoint_android_vh_aes_expandkey'
  [A] 'tracepoint __tracepoint_android_vh_sha256'
  [A] 'list_head crypto_alg_list'
  [A] 'rw_semaphore crypto_alg_sem'
  [A] 'const u32 crypto_ft_tab[4][256]'
  [A] 'const u32 crypto_it_tab[4][256]'
  [A] 'bool fpsimd_context_busy'
  [A] 'irq_cpustat_t irq_stat'

1 Added function symbol not referenced by debug info:

  [A] sha256_block_data_order

2 Added variable symbols not referenced by debug info:

  [A] crypto_aes_inv_sbox
  [A] crypto_aes_sbox

Bug: 153614920
Bug: 188620248
Change-Id: I998bca871f6a7c08a78e2537586653bcb0308ed1
Signed-off-by: Ard Biesheuvel <ardb@google.com>
This commit is contained in:
Ard Biesheuvel
2021-04-13 18:29:26 +02:00
parent 868be244bb
commit a11dacedd6
4 changed files with 67875 additions and 63573 deletions

View File

@@ -2,3 +2,127 @@
# commonly used symbols
module_layout
__put_task_struct
# required by fips140.ko
add_random_ready_callback
aead_register_instance
bcmp
cancel_work_sync
__cfi_slowpath
cpu_have_feature
crypto_aead_decrypt
crypto_aead_encrypt
crypto_aead_setauthsize
crypto_aead_setkey
crypto_ahash_finup
crypto_ahash_setkey
crypto_alg_list
crypto_alg_mod_lookup
crypto_alg_sem
crypto_alloc_base
crypto_alloc_rng
crypto_alloc_shash
crypto_attr_alg_name
crypto_check_attr_type
crypto_cipher_encrypt_one
crypto_cipher_setkey
crypto_destroy_tfm
crypto_drop_spawn
crypto_get_default_null_skcipher
crypto_grab_aead
crypto_grab_ahash
crypto_grab_shash
crypto_grab_skcipher
crypto_inst_setname
crypto_put_default_null_skcipher
crypto_register_aead
crypto_register_alg
crypto_register_rngs
crypto_register_shash
crypto_register_shashes
crypto_register_skciphers
crypto_register_template
crypto_register_templates
crypto_remove_final
crypto_remove_spawns
crypto_req_done
crypto_shash_alg_has_setkey
crypto_shash_digest
crypto_shash_final
crypto_shash_finup
crypto_shash_setkey
crypto_shash_tfm_digest
crypto_shash_update
crypto_skcipher_decrypt
crypto_skcipher_encrypt
crypto_skcipher_setkey
crypto_spawn_tfm2
crypto_unregister_aead
crypto_unregister_alg
crypto_unregister_rngs
crypto_unregister_shash
crypto_unregister_shashes
crypto_unregister_skciphers
crypto_unregister_template
crypto_unregister_templates
del_random_ready_callback
down_write
fpsimd_context_busy
get_random_bytes
__init_swait_queue_head
irq_stat
kasan_flag_enabled
kernel_neon_begin
kernel_neon_end
kfree
kfree_sensitive
__kmalloc
kmalloc_caches
kmalloc_order_trace
kmem_cache_alloc_trace
__list_add_valid
__list_del_entry_valid
memcpy
memset
__mutex_init
mutex_lock
mutex_unlock
panic
preempt_schedule
preempt_schedule_notrace
printk
queue_work_on
scatterwalk_ffwd
scatterwalk_map_and_copy
sg_init_one
sg_init_table
sg_next
shash_free_singlespawn_instance
shash_register_instance
skcipher_alloc_instance_simple
skcipher_register_instance
skcipher_walk_aead_decrypt
skcipher_walk_aead_encrypt
skcipher_walk_done
skcipher_walk_virt
snprintf
__stack_chk_fail
__stack_chk_guard
strcmp
strlcat
strlcpy
strlen
strncmp
synchronize_rcu_tasks
system_wq
__traceiter_android_vh_aes_decrypt
__traceiter_android_vh_aes_encrypt
__traceiter_android_vh_aes_expandkey
__traceiter_android_vh_sha256
__tracepoint_android_vh_aes_decrypt
__tracepoint_android_vh_aes_encrypt
__tracepoint_android_vh_aes_expandkey
__tracepoint_android_vh_sha256
tracepoint_probe_register
up_write
wait_for_completion

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,25 @@
[abi_symbol_list]
# needed by fips140.ko but not identified by the tooling
# TODO(b/189327973): [GKI: ABI] Build of fips140.ko module fails to identify some symbols
__crypto_memneq
__crypto_xor
aes_decrypt
aes_encrypt
aes_expandkey
ce_aes_expandkey
crypto_aes_inv_sbox
crypto_aes_sbox
crypto_aes_set_key
crypto_ft_tab
crypto_inc
crypto_it_tab
crypto_sha1_finup
crypto_sha1_update
gf128mul_lle
sha1_transform
sha224_final
sha256
sha256_block_data_order
sha256_final
sha256_update

View File

@@ -18,6 +18,7 @@ android/abi_gki_aarch64_generic
android/abi_gki_aarch64_exynos
android/abi_gki_aarch64_mtk
android/abi_gki_aarch64_xiaomi
android/abi_gki_aarch64_fips140
"
FILES="${FILES}