2025-10-30 16:03 ftp://ftp.de.debian.org/debian/pool/main/l/lenovolegionlinux/lenovolegionlinux_0.0.20+ds.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j4 platform: Linux-6.12.48+deb13-amd64-x86_64-with-glibc2.41 python: 3.13.5 client-version: 1.3.67 compiler: g++ (Debian 14.2.0-19) 14.2.0 cppcheck: head 2.18.0 head-info: 71a4af2 (2025-10-30 15:43:12 +0100) count: 30 110 elapsed-time: 0.1 0.5 head-timing-info: old-timing-info: head results: lenovolegionlinux-0.0.20/extra/service/legiond/legiond-ctl.c:40:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_UNIX [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/extra/service/legiond/modules/output.c:5:19: style: Parameter 'msg' can be declared as pointer to const [constParameterPointer] lenovolegionlinux-0.0.20/extra/service/legiond/legiond-ctl.c:22:9: style: Local variable 'delay' shadows outer variable [shadowVariable] lenovolegionlinux-0.0.20/extra/service/legiond/public.h:15:14: note: Shadowed declaration lenovolegionlinux-0.0.20/extra/service/legiond/legiond-ctl.c:22:9: note: Shadow variable lenovolegionlinux-0.0.20/extra/service/legiond/legiond-ctl.c:3:26: style: Parameter 'argv' can be declared as const array [constParameter] lenovolegionlinux-0.0.20/extra/service/legiond/modules/powerstate.c:27:6: warning: fscanf() without field width limits can crash with huge input data. [invalidscanf] lenovolegionlinux-0.0.20/extra/service/legiond/modules/powerstate.c:21:3: error: Resource leak: fp [resourceLeak] lenovolegionlinux-0.0.20/extra/service/legiond/modules/powerstate.c:29:3: error: Resource leak: fp [resourceLeak] lenovolegionlinux-0.0.20/extra/service/legiond/legiond.c:76:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIGEV_THREAD [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/extra/service/legiond/modules/setapply.c:6:54: style: Parameter 'config' can be declared as pointer to const [constParameterPointer] lenovolegionlinux-0.0.20/extra/service/legiond/modules/setapply.c:57:59: style: Parameter 'config' can be declared as pointer to const [constParameterPointer] lenovolegionlinux-0.0.20/extra/service/legiond/modules/setapply.c:108:54: style: Parameter 'config' can be declared as pointer to const [constParameterPointer] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:294:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:311:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ACPI_TYPE_INTEGER [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:337:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable type [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:359:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable jiffies [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:391:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable jiffies [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:424:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AE_OK [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:449:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AE_OK [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:483:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ACPI_TYPE_ANY [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:565:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _legion_priv [valueFlowBailoutIncompleteVar] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2411:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2411:2: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:510:2: style:inconclusive: Found duplicate branches for 'if' and 'else'. [duplicateBranch] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:512:4: note: Found duplicate branches for 'if' and 'else'. lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:510:2: note: Found duplicate branches for 'if' and 'else'. lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:546:1: style: Label 'error_ressource_type' is not used. [unusedLabel] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:418:45: style: Parameter 'data' can be declared as pointer to const. However it seems that 'acpi_erax_dh' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:502:38: note: You might need to cast the function pointer here lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:418:45: note: Parameter 'data' can be declared as pointer to const lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:422:52: style: Parameter 'resource' can be declared as pointer to const. However it seems that 'acpi_walk_ec_cb' is a callback function, if 'resource' is declared with const you might also need to cast function pointer(s). [constParameterCallback] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:494:15: note: You might need to cast the function pointer here lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:422:52: note: Parameter 'resource' can be declared as pointer to const lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:422:68: style: Parameter 'context' can be declared as pointer to const. However it seems that 'acpi_walk_ec_cb' is a callback function, if 'context' is declared with const you might also need to cast function pointer(s). [constParameterCallback] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:494:15: note: You might need to cast the function pointer here lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:422:68: note: Parameter 'context' can be declared as pointer to const lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:591:52: style: Parameter 'pdev' can be declared as pointer to const. However it seems that 'ideapad_acpi_remove' is a callback function, if 'pdev' is declared with const you might also need to cast function pointer(s). [constParameterCallback] lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:645:15: note: You might need to cast the function pointer here lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:591:52: note: Parameter 'pdev' can be declared as pointer to const lenovolegionlinux-0.0.20/kernel_module/legion-laptop-unused-snippets.c:340:26: style: Variable 'in_obj[1].integer.value' is assigned a value that is never used. [unreadVariable] lenovolegionlinux-0.0.20/extra/service/legiond/legiond.c:138:10: style: Local variable 'delay' shadows outer variable [shadowVariable] lenovolegionlinux-0.0.20/extra/service/legiond/public.h:15:14: note: Shadowed declaration lenovolegionlinux-0.0.20/extra/service/legiond/legiond.c:138:10: note: Shadow variable diff: 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1370:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1413:32: style: Parameter 'out_buffer' can be declared as pointer to const [constParameterPointer] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1423:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EFAULT [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1495:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EFAULT [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1552:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1787:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1891:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENODEV [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:1898:52: style: Parameter 'ec_portio' can be declared as pointer to const [constParameterPointer] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2009:6: style: Condition 'err' is always false [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2008:25: note: Calling function 'ecram_portio_read' returns 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2008:25: note: Assignment 'err=ecram_portio_read(&ecram->portio,ecram_offset,&value)', assigned value is 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2009:6: note: Condition 'err' is always false 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2024:6: style: Condition 'err' is always false [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2023:26: note: Calling function 'ecram_portio_write' returns 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2023:26: note: Assignment 'err=ecram_portio_write(&ecram->portio,ecram_offset,value)', assigned value is 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2024:6: note: Condition 'err' is always false 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2176:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable u8 [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2198:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __func__ [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:220:7: style: struct member 'model_config::three_state_keyboard' is never used. [unusedStructMember] head lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2411:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] head lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2411:2: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2437:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable legion_shared_mutex [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2454:55: style: Parameter 'priv' can be declared as pointer to const [constParameterPointer] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2457:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable legion_shared_mutex [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2476:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2515:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2577:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2579:6: style: Condition '!err' is always true [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2568:12: note: Assignment 'err=0', assigned value is 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2579:6: note: Condition '!err' is always true 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2603:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2605:6: style: Condition '!err' is always true [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2588:12: note: Assignment 'err=0', assigned value is 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2605:6: note: Condition '!err' is always true 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2628:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2654:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2693:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2721:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2743:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2766:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2789:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2817:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2840:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2896:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KERN_DEBUG [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2900:27: style: Variable 'fantable' can be declared as pointer to const [constVariablePointer] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:2954:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KERN_DEBUG [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3287:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3310:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3440:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3457:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3523:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3560:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3583:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3604:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3680:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3719:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3745:21: style: Variable 'in_buffer_param[2]' is assigned a value that is never used. [unreadVariable] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3753:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3803:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EACCES [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:3981:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable debugfs_fancurve_fops [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4019:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4038:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4087:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4108:6: style: Condition 'err' is always false [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4101:6: note: Assuming that condition 'err' is not redundant lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4108:6: note: Condition 'err' is always false 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4109:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4127:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4148:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4583:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4604:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4666:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4766:25: style: Variable 'priv' can be declared as pointer to const [constVariablePointer] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4768:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable legion_shared_mutex [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4770:18: warning: Either the condition '!priv' is redundant or there is possible null pointer dereference: priv. [nullPointerRedundantCheck] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4770:7: note: Assuming that condition '!priv' is not redundant lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4770:18: note: Null pointer dereference 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4806:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GFP_KERNEL [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4935:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PLATFORM_PROFILE_BALANCED [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:4984:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOPNOTSUPP [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5034:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PLATFORM_PROFILE_QUIET [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5059:65: style: Parameter 'priv' can be declared as pointer to const [constParameterPointer] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5110:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOPNOTSUPP [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5124:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5213:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __func__ [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5303:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOPNOTSUPP [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5643:6: style: Condition 'err' is always false [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5642:29: note: Calling function 'ec_write_minifancurve' returns 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5642:29: note: Assignment 'err=ec_write_minifancurve(&priv->ecram,priv->conf,value)', assigned value is 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5643:6: note: Condition 'err' is always false 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5702:6: style: Condition 'err' is always false [knownConditionTrueFalse] lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5700:29: note: Calling function 'ec_write_fanfullspeed' returns 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5700:29: note: Assignment 'err=ec_write_fanfullspeed(&priv->ecram,priv->conf,is_maximumfanspeed)', assigned value is 0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5702:6: note: Condition 'err' is always false 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5834:53: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable attr [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5935:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable led [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5944:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable led [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:5955:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:6013:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable led [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:6025:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable led [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:6042:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EEXIST [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:6114:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DMI_SYS_VENDOR [valueFlowBailoutIncompleteVar] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:6276:2: style:inconclusive: Statements following 'return' will never be executed. [unreachableCode] 2.18.0 lenovolegionlinux-0.0.20/kernel_module/legion-laptop.c:6305:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable legion_shared_mutex [valueFlowBailoutIncompleteVar] DONE