These functions are optimized as follows. 1. Remove void * variable foo cast type. 2. iint_cache Added memory allocation check. Signed-off-by: Li zeming <zeming@xxxxxxxxxxxx> --- security/integrity/iint.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/security/integrity/iint.c b/security/integrity/iint.c index 8638976f7990..7c902b92482e 100644 --- a/security/integrity/iint.c +++ b/security/integrity/iint.c @@ -160,7 +160,7 @@ void integrity_inode_free(struct inode *inode) static void init_once(void *foo) { - struct integrity_iint_cache *iint = (struct integrity_iint_cache *) foo; + struct integrity_iint_cache *iint = foo; memset(iint, 0, sizeof(*iint)); iint->ima_file_status = INTEGRITY_UNKNOWN; @@ -177,6 +177,9 @@ static int __init integrity_iintcache_init(void) iint_cache = kmem_cache_create("iint_cache", sizeof(struct integrity_iint_cache), 0, SLAB_PANIC, init_once); + if (!iint_cache) + return -ENOMEM; + return 0; } DEFINE_LSM(integrity) = { -- 2.18.2