Messages in this thread Patch in this message |  | | From | trix@redhat ... | Subject | [PATCH] counter: add defaults to switch-statements | Date | Sun, 27 Feb 2022 08:17:46 -0800 |
| |
From: Tom Rix <trix@redhat.com>
Clang static analysis reports this representative problem counter-chrdev.c:482:3: warning: Undefined or garbage value returned to caller return ret; ^~~~~~~~~~
counter_get_data() has a multilevel switches, some without defaults, so ret is sometimes not set. Add returning -EINVAL similar to other defaults.
Fixes: b6c50affda59 ("counter: Add character device interface") Signed-off-by: Tom Rix <trix@redhat.com> --- drivers/counter/counter-chrdev.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/counter/counter-chrdev.c b/drivers/counter/counter-chrdev.c index b7c62f957a6a8..69d340be9c93f 100644 --- a/drivers/counter/counter-chrdev.c +++ b/drivers/counter/counter-chrdev.c @@ -477,6 +477,8 @@ static int counter_get_data(struct counter_device *const counter, case COUNTER_SCOPE_COUNT: ret = comp->count_u8_read(counter, parent, &value_u8); break; + default: + return -EINVAL; } *value = value_u8; return ret; @@ -496,6 +498,8 @@ static int counter_get_data(struct counter_device *const counter, case COUNTER_SCOPE_COUNT: ret = comp->count_u32_read(counter, parent, &value_u32); break; + default: + return -EINVAL; } *value = value_u32; return ret; -- 2.26.3
|  |