* [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