lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 20 May 2008 08:49:11 -0300
From:	Mauro Carvalho Chehab <mchehab@...radead.org>
To:	Arjan van de Ven <arjan@...radead.org>
Cc:	"koos vriezen" <koos.vriezen@...il.com>,
	linux-kernel@...r.kernel.org, torvalds@...ux-foundation.org,
	Krufky <mkrufky@...radead.org>
Subject: Re: mplayer v4l hangs in 2.6.25.2/4 (likely regression)

Hi Arjan,

Sorry for a late answer. I'm currently travelling on a short vacations.

On Sat, 17 May 2008 13:20:50 -0700
Arjan van de Ven <arjan@...radead.org> wrote:

> On Sat, 17 May 2008 22:06:12 +0200
> "koos vriezen" <koos.vriezen@...il.com> wrote:
> 
> > 2008/5/17 Arjan van de Ven <arjan@...radead.org>:
> > 
> > > > so.. bttv first takes "fh->cap.vb_lock" in vidiocgmbuf, then
> > > > calls videobuf_mmap_setup(), and the first thing that does
> > is to also take fh->cap.vb_lock!  This isn't even an ABBA deadlock,
> > but a straight AA deadlock :)
> > 
> > Looks like I'm the only one actually running this code ;-)
> > 
> > > and here is an (untest) patch that should fix this problem:
> > > Koos, can you apply this to your kernel tree and report back if this
> > > fixes your deadlock?
> > 
> > patching file drivers/media/video/bt8xx/bttv-driver.c
> > patching file drivers/media/video/videobuf-core.c
> > Hunk #1 succeeded at 335 (offset 4 lines).
> > Hunk #2 succeeded at 1093 (offset -36 lines).
> > patching file include/media/videobuf-core.h
> > Hunk #1 succeeded at 227 (offset -10 lines).
> > 
> > Deadlock is gone, only mplayer fails to unmute the audio.

I have a trivial patch to fix this already. I'll add it soon to my tree and
send Linus.
> 
> that's something else entirely ;)
> 
> I'll call your deadlock bug fixed by the patch...
> 
> Mauro: will you send this on to Linus or should this go direct?

The fix looks sane. I prefer to just remove the lock call from bttv, instead of
calling  __videobuf_mmap_setup() and make this symbol global. The better is to
avoid locking inside the drivers, except during the interrupts, and inside
videbuf code. This is what we're doing on the other drivers.

So, it would be better if you could change your patch to remove the lock/unlock
at bttv-driver handling for this ioctl.

To solve the bug, both ways work, so:

Acked-by: Mauro Carvalho Chehab <mchehab@...radead.org>

Could you please send it to Linus and to -stable for me? Otherwise, I'll do
this by Monday.

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ