Updated from Linux LTS 3.10.21 to 3.10.22
This commit is contained in:
@@ -30,6 +30,9 @@
|
||||
|
||||
#include "stv6110.h"
|
||||
|
||||
/* Max transfer size done by I2C transfer functions */
|
||||
#define MAX_XFER_SIZE 64
|
||||
|
||||
static int debug;
|
||||
|
||||
struct stv6110_priv {
|
||||
@@ -68,7 +71,7 @@ static int stv6110_write_regs(struct dvb_frontend *fe, u8 buf[],
|
||||
{
|
||||
struct stv6110_priv *priv = fe->tuner_priv;
|
||||
int rc;
|
||||
u8 cmdbuf[len + 1];
|
||||
u8 cmdbuf[MAX_XFER_SIZE];
|
||||
struct i2c_msg msg = {
|
||||
.addr = priv->i2c_address,
|
||||
.flags = 0,
|
||||
@@ -78,6 +81,13 @@ static int stv6110_write_regs(struct dvb_frontend *fe, u8 buf[],
|
||||
|
||||
dprintk("%s\n", __func__);
|
||||
|
||||
if (1 + len > sizeof(cmdbuf)) {
|
||||
printk(KERN_WARNING
|
||||
"%s: i2c wr: len=%d is too big!\n",
|
||||
KBUILD_MODNAME, len);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (start + len > 8)
|
||||
return -EINVAL;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user