]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commitdiff
[media] staging: Replaced BUG_ON with warnings
authorShilpa P <shilpapri@gmail.com>
Sat, 3 Dec 2016 07:02:01 +0000 (05:02 -0200)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 3 Mar 2017 10:10:49 +0000 (07:10 -0300)
Don't crash the Kernel for driver errors

Signed-off-by: Shilpa P <shilpapri@gmail.com>
Acked-by: Allen Pais <allen.lkml@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/staging/media/bcm2048/radio-bcm2048.c

index 37bd439ee08bba4ad8e24c6c3bf7cff66434be63..5696982d6955474e0aba4d76b6b5dbd6a6d3492a 100644 (file)
@@ -1534,7 +1534,11 @@ static int bcm2048_parse_rt_match_c(struct bcm2048_device *bdev, int i,
        if (crc == BCM2048_RDS_CRC_UNRECOVARABLE)
                return 0;
 
-       BUG_ON((index+2) >= BCM2048_MAX_RDS_RT);
+       if ((index + 2) >= BCM2048_MAX_RDS_RT) {
+               dev_err(&bdev->client->dev,
+                       "Incorrect index = %d\n", index);
+               return 0;
+       }
 
        if ((bdev->rds_info.radio_text[i] & BCM2048_RDS_BLOCK_MASK) ==
                BCM2048_RDS_BLOCK_C) {
@@ -1557,7 +1561,11 @@ static void bcm2048_parse_rt_match_d(struct bcm2048_device *bdev, int i,
        if (crc == BCM2048_RDS_CRC_UNRECOVARABLE)
                return;
 
-       BUG_ON((index+4) >= BCM2048_MAX_RDS_RT);
+       if ((index + 4) >= BCM2048_MAX_RDS_RT) {
+               dev_err(&bdev->client->dev,
+                       "Incorrect index = %d\n", index);
+               return;
+       }
 
        if ((bdev->rds_info.radio_text[i] & BCM2048_RDS_BLOCK_MASK) ==
            BCM2048_RDS_BLOCK_D)