ANDROID: ABI: add fips140 symbol list

Add the symbols required by fips140.ko, and update the ABI definition.

Leaf changes summary: 73 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 65 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 8 Added variables

65 Added functions:

  [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 int ahash_register_instance(crypto_template*, ahash_instance*)'
  [A] 'function bool cpu_have_feature(unsigned int)'
  [A] 'function int crypto_ahash_finup(ahash_request*)'
  [A] 'function int crypto_ahash_setkey(crypto_ahash*, const u8*, unsigned int)'
  [A] 'function crypto_rng* crypto_alloc_rng(const char*, u32, u32)'
  [A] 'function crypto_skcipher* crypto_alloc_skcipher(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_cipher_encrypt_one(crypto_cipher*, u8*, const u8*)'
  [A] 'function int crypto_cipher_setkey(crypto_cipher*, const u8*, unsigned int)'
  [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 int crypto_grab_spawn(crypto_spawn*, crypto_instance*, const char*, u32, u32)'
  [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_aead(aead_alg*)'
  [A] 'function int crypto_register_aeads(aead_alg*, int)'
  [A] 'function int crypto_register_ahash(ahash_alg*)'
  [A] 'function int crypto_register_ahashes(ahash_alg*, int)'
  [A] 'function int crypto_register_algs(crypto_alg*, int)'
  [A] 'function int crypto_register_rng(rng_alg*)'
  [A] 'function int crypto_register_rngs(rng_alg*, int)'
  [A] 'function int crypto_register_shashes(shash_alg*, int)'
  [A] 'function int crypto_register_skcipher(skcipher_alg*)'
  [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_spawns(crypto_alg*, list_head*, crypto_alg*)'
  [A] 'function void crypto_req_done(crypto_async_request*, int)'
  [A] 'function int crypto_rng_reset(crypto_rng*, const u8*, unsigned int)'
  [A] 'function bool crypto_shash_alg_has_setkey(shash_alg*)'
  [A] 'function int crypto_shash_tfm_digest(crypto_shash*, const u8*, unsigned int, u8*)'
  [A] 'function int crypto_skcipher_decrypt(skcipher_request*)'
  [A] 'function crypto_tfm* crypto_spawn_tfm(crypto_spawn*, u32, u32)'
  [A] 'function void* crypto_spawn_tfm2(crypto_spawn*)'
  [A] 'function void crypto_unregister_aead(aead_alg*)'
  [A] 'function void crypto_unregister_rng(rng_alg*)'
  [A] 'function void crypto_unregister_rngs(rng_alg*, int)'
  [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 kernel_neon_begin()'
  [A] 'function void kernel_neon_end()'
  [A] 'function scatterlist* scatterwalk_ffwd(scatterlist*, scatterlist*, unsigned int)'
  [A] 'function void scatterwalk_map_and_copy(void*, scatterlist*, unsigned int, unsigned int, 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)'

8 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] 'bool fpsimd_context_busy'
  [A] 'irq_cpustat_t irq_stat'

Bug: 153614920
Bug: 188620248
Change-Id: I7aa261aab7c275eed9db1d011e894d87db3afd9f
Signed-off-by: Eric Biggers <ebiggers@google.com>
This commit is contained in:
Eric Biggers
2022-03-10 05:03:34 +00:00
parent 1ced87f1a9
commit 405073393f
3 changed files with 1975 additions and 854 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,148 @@
[abi_symbol_list]
# commonly used symbols
module_layout
__put_task_struct
# required by fips140.ko
add_random_ready_callback
aead_register_instance
ahash_register_instance
arch_timer_read_counter
bcmp
cancel_work_sync
__cfi_slowpath_diag
complete_all
completion_done
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_sem
crypto_alloc_aead
crypto_alloc_base
crypto_alloc_rng
crypto_alloc_shash
crypto_alloc_skcipher
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_grab_spawn
crypto_inst_setname
crypto_put_default_null_skcipher
crypto_register_aead
crypto_register_aeads
crypto_register_ahash
crypto_register_ahashes
crypto_register_alg
crypto_register_algs
crypto_register_rng
crypto_register_rngs
crypto_register_shash
crypto_register_shashes
crypto_register_skcipher
crypto_register_skciphers
crypto_register_template
crypto_register_templates
crypto_remove_spawns
crypto_req_done
crypto_rng_reset
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_spawn_tfm
crypto_unregister_aead
crypto_unregister_alg
crypto_unregister_rng
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
kmem_cache_alloc_trace
kmemdup
ktime_get
__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
___ratelimit
_raw_spin_lock
_raw_spin_unlock
refcount_warn_saturate
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
strcmp
strlcat
strlcpy
strlen
strncmp
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
__ubsan_handle_cfi_check_fail_abort
up_write
wait_for_completion
xa_load
xa_store

View File

@@ -13,6 +13,7 @@ KMI_SYMBOL_LIST=android/abi_gki_aarch64
ADDITIONAL_KMI_SYMBOL_LISTS="
android/abi_gki_aarch64_virtual_device
android/abi_gki_aarch64_db845c
android/abi_gki_aarch64_fips140
android/abi_gki_aarch64_pixel
android/abi_gki_aarch64_mtktv
android/abi_gki_aarch64_qcom