As warned by smatch:

        drivers/media/test-drivers/vidtv/vidtv_psi.c:93 
vidtv_psi_update_version_num() warn: impossible condition '(h->version > 32) => 
(0-31 > 32)'

h_version is declared as:

                u8  version:5;

Meaning that its value ranges from 0 to 31. Incrementing 31 on such
data will overflow to zero, as expected.

So, just drop the uneeded overflow check.

While here, use "foo++" instead of "++foo", as this is a much
more common pattern.

Signed-off-by: Mauro Carvalho Chehab <[email protected]>
---
 drivers/media/test-drivers/vidtv/vidtv_psi.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/media/test-drivers/vidtv/vidtv_psi.c 
b/drivers/media/test-drivers/vidtv/vidtv_psi.c
index b8b638244b1d..8cdf645b4fdd 100644
--- a/drivers/media/test-drivers/vidtv/vidtv_psi.c
+++ b/drivers/media/test-drivers/vidtv/vidtv_psi.c
@@ -89,9 +89,7 @@ static inline u32 dvb_crc32(u32 crc, u8 *data, u32 len)
 
 static void vidtv_psi_update_version_num(struct vidtv_psi_table_header *h)
 {
-       ++h->version;
-       if (h->version > MAX_VERSION_NUM)
-               h->version = 0;
+       h->version++;
 }
 
 static inline u16 vidtv_psi_sdt_serv_get_desc_loop_len(struct 
vidtv_psi_table_sdt_service *s)
-- 
2.26.2

Reply via email to