Re: Fw: zoran drivers: absense of locking?

From: Michael Krufky
Date: Fri Oct 28 2005 - 20:45:26 EST


Johannes Stezenbach wrote:

On Fri, Oct 28, 2005 Andrew Morton wrote:


Alexey, please don't assume that everyone reads lkml.


I Cc: the v4l people, maybe they can answer the question.

Johannes



It's not in our tree... This is what I can see in the MAINTAINERS file:

ZR36067 VIDEO FOR LINUX DRIVER
P: Ronald Bultje
M: rbultje@xxxxxxxxxxxxxxxxxxx
L: mjpeg-users@xxxxxxxxxxxxxxxxxxxxx
W: http://mjpeg.sourceforge.net/driver-zoran/
S: Maintained

ZR36120 VIDEO FOR LINUX DRIVER
P: Pauline Middelink
M: middelin@xxxxxxxxxxx
W: http://www.polyware.nl/~middelin/En/hobbies.html
W: http://www.polyware.nl/~middelin/hobbies.html
S: Maintained

I can only guess that this falls under ZR36067 ?? (cc's added)

Begin forwarded message:

Date: Sat, 29 Oct 2005 01:16:47 +0400
From: Alexey Dobriyan <adobriyan@xxxxxxxxx>
To: linux-kernel@xxxxxxxxxxxxxxx
Subject: zoran drivers: absense of locking?


I've tried to read random part of a tree and now scratching my head
with a question:

what protects the number and a list of registered codecs in
zoran drivers?

Example: drivers/media/video/zr36050.c:

/* amount of chips attached via this driver */
static int zr36050_codecs = 0;

Decremented in zr36050_unset().
Checked for maximum value, used and incremented in zr36050_setup().

[Assigment to 0 in zr36050_init_module is not needed. dprintk() in
zr36050_cleanup_module() should be converted to BUG_ON, so I'll ignore
them.]

zr36050_codecs
zr36050_unset() = struct videocodec::unset
zr36050_setup() = struct videocodec::setup

The only place where ->unset and ->setup methods are called is
drivers/media/video/videocodec.c:

zr36050_codecs
zr36050_unset()
videocodec_detach()
zr36050_setup()
videocodec_attach()

Both videocodec functions are exported.

No spinlocks or semaphores in sight.

Does anybody know what protects the list of registered codecs in zoran
drivers?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/