Fix a divide-by-zero error in ds3000's ds3000_read_snr(), when getting
a very low signal reading (dvbs2_signal_reading >= 1). This prevents
some nasty EIPs when running szap-s2 with a very low signal strength.

Signed-off-by: Nicolas Noirbent <[email protected]>
---
 drivers/media/dvb/frontends/ds3000.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/media/dvb/frontends/ds3000.c 
b/drivers/media/dvb/frontends/ds3000.c
index cff3535..78001e8 100644
--- a/drivers/media/dvb/frontends/ds3000.c
+++ b/drivers/media/dvb/frontends/ds3000.c
@@ -719,7 +719,7 @@ static int ds3000_read_snr(struct dvb_frontend *fe, u16 
*snr)
                                (ds3000_readreg(state, 0x8d) << 4);
                dvbs2_signal_reading = ds3000_readreg(state, 0x8e);
                tmp = dvbs2_signal_reading * dvbs2_signal_reading >> 1;
-               if (dvbs2_signal_reading == 0) {
+               if (tmp == 0) {
                        *snr = 0x0000;
                        return 0;
                }
-- 
1.7.0.2

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to