[media] saa7164-dvb: Remove unnecessary null test
authorHimangi Saraogi <himangi774@gmail.com>
Tue, 15 Jul 2014 21:29:53 +0000 (18:29 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Thu, 17 Jul 2014 23:07:42 +0000 (20:07 -0300)
This patch removes the null test on dvb. dvb is initialized at the
beginning of the function to &port->dvb. Since port is dereferenced
prior to the null test, port must be a valid pointer, and
&port->dvb cannot be null.

The following Coccinelle script is used for detecting the change:

@r@
expression e,f;
identifier g,y;
statement S1,S2;
@@

*e = &f->g
<+...
 f->y
 ...+>
*if (e != NULL || ...)
 S1 else S2

Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
Acked-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/pci/saa7164/saa7164-dvb.c

index 5c5cc3e..16ae715 100644 (file)
@@ -242,16 +242,14 @@ static int saa7164_dvb_start_feed(struct dvb_demux_feed *feed)
        if (!demux->dmx.frontend)
                return -EINVAL;
 
-       if (dvb) {
-               mutex_lock(&dvb->lock);
-               if (dvb->feeding++ == 0) {
-                       /* Start transport */
-                       ret = saa7164_dvb_start_port(port);
-               }
-               mutex_unlock(&dvb->lock);
-               dprintk(DBGLVL_DVB, "%s(port=%d) now feeding = %d\n",
-                       __func__, port->nr, dvb->feeding);
+       mutex_lock(&dvb->lock);
+       if (dvb->feeding++ == 0) {
+               /* Start transport */
+               ret = saa7164_dvb_start_port(port);
        }
+       mutex_unlock(&dvb->lock);
+       dprintk(DBGLVL_DVB, "%s(port=%d) now feeding = %d\n",
+               __func__, port->nr, dvb->feeding);
 
        return ret;
 }
@@ -266,16 +264,14 @@ static int saa7164_dvb_stop_feed(struct dvb_demux_feed *feed)
 
        dprintk(DBGLVL_DVB, "%s(port=%d)\n", __func__, port->nr);
 
-       if (dvb) {
-               mutex_lock(&dvb->lock);
-               if (--dvb->feeding == 0) {
-                       /* Stop transport */
-                       ret = saa7164_dvb_stop_streaming(port);
-               }
-               mutex_unlock(&dvb->lock);
-               dprintk(DBGLVL_DVB, "%s(port=%d) now feeding = %d\n",
-                       __func__, port->nr, dvb->feeding);
+       mutex_lock(&dvb->lock);
+       if (--dvb->feeding == 0) {
+               /* Stop transport */
+               ret = saa7164_dvb_stop_streaming(port);
        }
+       mutex_unlock(&dvb->lock);
+       dprintk(DBGLVL_DVB, "%s(port=%d) now feeding = %d\n",
+               __func__, port->nr, dvb->feeding);
 
        return ret;
 }