From 410e8a89da7d5b76e0c2d98a7b74cca7be34cef0 Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Thu, 5 Oct 2017 12:52:14 +0300 Subject: [PATCH] db/fixup_kernel.sh: i2c_algorithm->master_xfer() isn't always byte units I'm not certain this fix is the correct thing at all... Anyway, Smatch is trying to track which numbers represent bytes and generally assumes that if it's bytes sometimes, it's always bytes. The ->master_xfer() sometimes is in byte units and sometimes not. Signed-off-by: Dan Carpenter --- smatch_data/db/fixup_kernel.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/smatch_data/db/fixup_kernel.sh b/smatch_data/db/fixup_kernel.sh index 6d3fb8f5..d0552e87 100755 --- a/smatch_data/db/fixup_kernel.sh +++ b/smatch_data/db/fixup_kernel.sh @@ -153,6 +153,9 @@ update return_states set value = "s32min-s32max[\$1]" where function = 'atomic_s update return_states set return = '0-32,2147483648-2147483690' where function = '_parse_integer' and return = '0'; update return_states set value = '0-u64max' where function = '_parse_integer' and type = 1025 and parameter = 2 and key = '*$'; +/* delete some function pointers which are sometimes byte units */ +delete from caller_info where function = '(struct i2c_algorithm)->master_xfer and and type = 1027; + EOF # fixme: this is totally broken -- 2.11.4.GIT