media: dib9000: delete some unused broken code
The dib9000_remove_slave_frontend() function isn't used. I was reviewing it because my static checker claims it writes one element beyond the end of the array. That's a false positive. What it actually does is, if there are two or more front ends, then it prints a debug message to say that it removed the first one, stored in state->fe[1], and then it "removes" (scare quotes on purpose) the second one, stored in state->fe[2]. Deleting a front end from the middle is not really supported and breaks code like dib9000_release() which assumes the first NULL front end marks the end of the list. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
cd3bef00c2
commit
5af478341f
|
@ -2462,24 +2462,6 @@ int dib9000_set_slave_frontend(struct dvb_frontend *fe, struct dvb_frontend *fe_
|
|||
}
|
||||
EXPORT_SYMBOL(dib9000_set_slave_frontend);
|
||||
|
||||
int dib9000_remove_slave_frontend(struct dvb_frontend *fe)
|
||||
{
|
||||
struct dib9000_state *state = fe->demodulator_priv;
|
||||
u8 index_frontend = 1;
|
||||
|
||||
while ((index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[index_frontend] != NULL))
|
||||
index_frontend++;
|
||||
if (index_frontend != 1) {
|
||||
dprintk("remove slave fe %p (index %i)\n", state->fe[index_frontend - 1], index_frontend - 1);
|
||||
state->fe[index_frontend] = NULL;
|
||||
return 0;
|
||||
}
|
||||
|
||||
dprintk("no frontend to be removed\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
EXPORT_SYMBOL(dib9000_remove_slave_frontend);
|
||||
|
||||
struct dvb_frontend *dib9000_get_slave_frontend(struct dvb_frontend *fe, int slave_index)
|
||||
{
|
||||
struct dib9000_state *state = fe->demodulator_priv;
|
||||
|
|
|
@ -37,7 +37,6 @@ extern int dib9000_fw_pid_filter_ctrl(struct dvb_frontend *fe, u8 onoff);
|
|||
extern int dib9000_fw_pid_filter(struct dvb_frontend *fe, u8 id, u16 pid, u8 onoff);
|
||||
extern int dib9000_firmware_post_pll_init(struct dvb_frontend *fe);
|
||||
extern int dib9000_set_slave_frontend(struct dvb_frontend *fe, struct dvb_frontend *fe_slave);
|
||||
extern int dib9000_remove_slave_frontend(struct dvb_frontend *fe);
|
||||
extern struct dvb_frontend *dib9000_get_slave_frontend(struct dvb_frontend *fe, int slave_index);
|
||||
extern struct i2c_adapter *dib9000_get_component_bus_interface(struct dvb_frontend *fe);
|
||||
extern int dib9000_set_i2c_adapter(struct dvb_frontend *fe, struct i2c_adapter *i2c);
|
||||
|
@ -97,12 +96,6 @@ static inline int dib9000_set_slave_frontend(struct dvb_frontend *fe, struct dvb
|
|||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline int dib9000_remove_slave_frontend(struct dvb_frontend *fe)
|
||||
{
|
||||
printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline struct dvb_frontend *dib9000_get_slave_frontend(struct dvb_frontend *fe, int slave_index)
|
||||
{
|
||||
printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
|
||||
|
|
Loading…
Reference in New Issue