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]
Message-ID: <s5hk5dojn42.wl%tiwai@suse.de>
Date:	Sun, 07 Sep 2008 11:56:13 +0200
From:	Takashi Iwai <tiwai@...e.de>
To:	"Vegard Nossum" <vegard.nossum@...il.com>
Cc:	"Andrew Morton" <akpm@...ux-foundation.org>,
	"Edgar Kalkowski" <eMail@...ar-kalkowski.de>,
	linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org
Subject: Re: PROBLEM: Kernel 2.6.26 oops if I unplug my Logitech USB 1.1 headset

At Fri, 5 Sep 2008 10:18:06 +0200,
Vegard Nossum wrote:
> 
> On Fri, Sep 5, 2008 at 10:01 AM, Vegard Nossum <vegard.nossum@...il.com> wrote:
> > On Fri, Sep 5, 2008 at 9:58 AM, Vegard Nossum <vegard.nossum@...il.com> wrote:
> >> On Fri, Sep 5, 2008 at 9:09 AM, Takashi Iwai <tiwai@...e.de> wrote:
> >>> At Thu, 4 Sep 2008 17:28:22 -0700,
> >>> Andrew Morton wrote:
> >>>>
> >>>> On Fri, 05 Sep 2008 01:05:21 +0200
> >>>> Edgar Kalkowski <eMail@...ar-kalkowski.de> wrote:
> >>>>
> >>>> > Dear kernel hackers. ;)
> >>>> >
> >>>> > [1.] One line summary of the problem: If I unplug my USB-Headset the kernel oopses.
> >>>>
> >>>> cc's added.
> >>>>
> >>>> Might be USB, might be ALSA.
> >>>
> >>> Hm, it's hard to guess...
> >>> Edgar, could you check whether it happens with 2.6.25?
> >>
> >> Hi,
> >>
> >> I recognize this address:
> >>
> >>>>> BUG: unable to handle kernel paging request at 00100100
> >>
> >> Is this a magic value? I also got it, see for example:
> >> http://lkml.org/lkml/2008/8/21/426
> >>
> >> Google will also recognize it:
> >> http://www.google.com/search?hl=en&q="unable+to+handle+kernel+paging+request"+00100100
> >>
> >> Where does it come from?
> >
> > Oh. It _is_ LIST_POISON1. Sorry for the bit of noise.
> 
> Probably totally unrelated, but I couldn't help to find this bit of
> code somewhat odd. In snd_ctl_dev_disconnect():
> 
>         down_read(&card->controls_rwsem);
>         list_for_each_entry(ctl, &card->ctl_files, list) {
>                 wake_up(&ctl->change_sleep);
>                 kill_fasync(&ctl->fasync, SIGIO, POLL_ERR);
>         }
>         up_read(&card->controls_rwsem);
> 
> ...shouldn't that be using &card->ctl_files_rwlock instead of
> &card->controls_rwsem? That one is always used to protect the list ops
> on &card->ctl_files in all the other places. Or maybe it is already
> locked from higher ups?

I think you're right.  This should be card->ctl_files_rwlock.
Will fix up the code later.


thanks,

Takashi
--
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