public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/1] V4L/DVB fix
@ 2006-12-11  9:18 Mauro Carvalho Chehab
  2006-12-11  9:20 ` [PATCH 1/1] V4L/DVB (4954): Fix: On ia64, i2c adap->inb/adap->outb are wrongly evaluated Mauro Carvalho Chehab
  2006-12-12  2:38 ` [PATCH 0/1] V4L/DVB fix Linus Torvalds
  0 siblings, 2 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2006-12-11  9:18 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: V4L-DVB Maintainers, V4L, Andrew Morton, LKML

Linus,

Please pull 'master' from:
        git://git.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb.git master

It fixes a breakage when compiling on ia64.

Cheers,
Mauro.

V4L/DVB development is hosted at http://linuxtv.org
---

 drivers/media/video/usbvision/usbvision-i2c.c |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/1] V4L/DVB (4954): Fix: On ia64, i2c adap->inb/adap->outb are wrongly evaluated
  2006-12-11  9:18 [PATCH 0/1] V4L/DVB fix Mauro Carvalho Chehab
@ 2006-12-11  9:20 ` Mauro Carvalho Chehab
  2006-12-12  2:38 ` [PATCH 0/1] V4L/DVB fix Linus Torvalds
  1 sibling, 0 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2006-12-11  9:20 UTC (permalink / raw)
  To: LKML, Linus Torvalds; +Cc: V4L-DVB Maintainers, Mauro Carvalho Chehab


From: Mauro Carvalho Chehab <mchehab@infradead.org>

i2c defines two callbacks (inb/outb). On ia64, since it defines also two macros
with those names, it causes the following errors:
drivers/media/video/usbvision/usbvision-i2c.c:64:39: macro "outb" passed 4 arguments, but takes just 2
drivers/media/video/usbvision/usbvision-i2c.c: In function `try_write_address':
drivers/media/video/usbvision/usbvision-i2c.c:64: warning: assignment makes integer from pointer without a cast
drivers/media/video/usbvision/usbvision-i2c.c:89:38: macro "inb" passed 4 arguments, but takes just 1
drivers/media/video/usbvision/usbvision-i2c.c: In function `try_read_address':
drivers/media/video/usbvision/usbvision-i2c.c:89: warning: assignment makes integer from pointer without a cast
drivers/media/video/usbvision/usbvision-i2c.c:85: warning: unused variable `buf'
drivers/media/video/usbvision/usbvision-i2c.c:173:53: macro "inb" passed 4 arguments, but takes just 1
drivers/media/video/usbvision/usbvision-i2c.c: In function `usb_xfer':
drivers/media/video/usbvision/usbvision-i2c.c:173: warning: assignment makes integer from pointer without a cast
drivers/media/video/usbvision/usbvision-i2c.c:179:54: macro "outb" passed 4 arguments, but takes just 2
drivers/media/video/usbvision/usbvision-i2c.c:179: warning: assignment makes integer from pointer without a cast
thanks to Andrew Morton for pointing this.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 drivers/media/video/usbvision/usbvision-i2c.c |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/drivers/media/video/usbvision/usbvision-i2c.c b/drivers/media/video/usbvision/usbvision-i2c.c
index 92bf9a1..0f3fba7 100644
--- a/drivers/media/video/usbvision/usbvision-i2c.c
+++ b/drivers/media/video/usbvision/usbvision-i2c.c
@@ -50,6 +50,11 @@ MODULE_PARM_DESC(i2c_debug, "enable debu
 #define PDEBUG(level, fmt, args...) \
 		if (i2c_debug & (level)) info("[%s:%d] " fmt, __PRETTY_FUNCTION__, __LINE__ , ## args)
 
+static int usbvision_i2c_write(void *data, unsigned char addr, char *buf,
+			    short len);
+static int usbvision_i2c_read(void *data, unsigned char addr, char *buf,
+			   short len);
+
 static inline int try_write_address(struct i2c_adapter *i2c_adap,
 				    unsigned char addr, int retries)
 {
@@ -61,7 +66,7 @@ static inline int try_write_address(stru
 	data = i2c_get_adapdata(i2c_adap);
 	buf[0] = 0x00;
 	for (i = 0; i <= retries; i++) {
-		ret = (adap->outb(data, addr, buf, 1));
+		ret = (usbvision_i2c_write(data, addr, buf, 1));
 		if (ret == 1)
 			break;	/* success! */
 		udelay(5 /*adap->udelay */ );
@@ -86,7 +91,7 @@ static inline int try_read_address(struc
 
 	data = i2c_get_adapdata(i2c_adap);
 	for (i = 0; i <= retries; i++) {
-		ret = (adap->inb(data, addr, buf, 1));
+		ret = (usbvision_i2c_read(data, addr, buf, 1));
 		if (ret == 1)
 			break;	/* success! */
 		udelay(5 /*adap->udelay */ );
@@ -153,7 +158,6 @@ static int
 usb_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg msgs[], int num)
 {
 	struct i2c_msg *pmsg;
-	struct i2c_algo_usb_data *adap = i2c_adap->algo_data;
 	void *data;
 	int i, ret;
 	unsigned char addr;
@@ -170,13 +174,13 @@ usb_xfer(struct i2c_adapter *i2c_adap, s
 
 		if (pmsg->flags & I2C_M_RD) {
 			/* read bytes into buffer */
-			ret = (adap->inb(data, addr, pmsg->buf, pmsg->len));
+			ret = (usbvision_i2c_read(data, addr, pmsg->buf, pmsg->len));
 			if (ret < pmsg->len) {
 				return (ret < 0) ? ret : -EREMOTEIO;
 			}
 		} else {
 			/* write bytes from buffer */
-			ret = (adap->outb(data, addr, pmsg->buf, pmsg->len));
+			ret = (usbvision_i2c_write(data, addr, pmsg->buf, pmsg->len));
 			if (ret < pmsg->len) {
 				return (ret < 0) ? ret : -EREMOTEIO;
 			}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 0/1] V4L/DVB fix
  2006-12-11  9:18 [PATCH 0/1] V4L/DVB fix Mauro Carvalho Chehab
  2006-12-11  9:20 ` [PATCH 1/1] V4L/DVB (4954): Fix: On ia64, i2c adap->inb/adap->outb are wrongly evaluated Mauro Carvalho Chehab
@ 2006-12-12  2:38 ` Linus Torvalds
  2006-12-12  9:42   ` Mauro Carvalho Chehab
  1 sibling, 1 reply; 5+ messages in thread
From: Linus Torvalds @ 2006-12-12  2:38 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: V4L-DVB Maintainers, V4L, Andrew Morton, LKML



On Mon, 11 Dec 2006, Mauro Carvalho Chehab wrote:
> 
> Please pull 'master' from:
>         git://git.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb.git master
> 
> It fixes a breakage when compiling on ia64.

I get "Already up-to-date."

Did you forget to push out again?

		Linus

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 0/1] V4L/DVB fix
  2006-12-12  2:38 ` [PATCH 0/1] V4L/DVB fix Linus Torvalds
@ 2006-12-12  9:42   ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2006-12-12  9:42 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: V4L-DVB Maintainers, V4L, Andrew Morton, LKML

Linus,


> > Please pull 'master' from:
> >         git://git.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb.git master
> > It fixes a breakage when compiling on ia64.
> Did you forget to push out again?
Argh! Yes, it weren't pushed on my tree. Should be ok now.

updating 'refs/heads/master'
  from 9202f32558601c2c99ddc438eb3218131d00d413
  to   2a7e9a260ede3b17b5bc25c540a033a45bbf0461
updating 'refs/heads/origin'
  from 9202f32558601c2c99ddc438eb3218131d00d413
  to   4259cb25d436a79bf6b07d8075423573567c211d

Cheers, 
Mauro.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 0/1] V4L/DVB fix
@ 2007-01-24  2:47 Mauro Carvalho Chehab
  0 siblings, 0 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2007-01-24  2:47 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: V4L-DVB Maintainers, V4L, Andrew Morton, LKML

Linus,

Please pull 'master' from:
        git://git.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb.git 
master. 

The patch fixes an important bug on V4L core. By doing some ioctls on an 
unexpected order, it is possible to hang the machine without needing to be 
root, causing a DoS.

   - Buf_qbuf: fix: videobuf_queue->stream corruption and lockup

This patch should also be applied also at -stable releases.

Cheers,
Mauro.

V4L/DVB development is hosted at http://linuxtv.org
---

 drivers/media/video/video-buf.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2007-01-24  2:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-11  9:18 [PATCH 0/1] V4L/DVB fix Mauro Carvalho Chehab
2006-12-11  9:20 ` [PATCH 1/1] V4L/DVB (4954): Fix: On ia64, i2c adap->inb/adap->outb are wrongly evaluated Mauro Carvalho Chehab
2006-12-12  2:38 ` [PATCH 0/1] V4L/DVB fix Linus Torvalds
2006-12-12  9:42   ` Mauro Carvalho Chehab
  -- strict thread matches above, loose matches on Subject: below --
2007-01-24  2:47 Mauro Carvalho Chehab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox