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: <a8e1da0902031710u2ebd69b0r4de5916fab2d3cba@mail.gmail.com>
Date:	Wed, 4 Feb 2009 09:10:20 +0800
From:	Dave Young <hidave.darkstar@...il.com>
To:	Greg KH <greg@...ah.com>
Cc:	linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] usb-serial : fix the nousb oops

remove wgreathouse@...a.com in cc-list because this mail will be
rejected by the smva.com email server.

On Wed, Feb 4, 2009 at 7:58 AM, Greg KH <greg@...ah.com> wrote:
> On Mon, Feb 02, 2009 at 09:43:04AM +0800, Dave Young wrote:
>> On Sun, Feb 1, 2009 at 11:51 PM, Greg KH <greg@...ah.com> wrote:
>> > On Sun, Feb 01, 2009 at 06:53:23PM +0800, Dave Young wrote:
>> >>
>> >> In case with "nousb" booting, serial drivers will trigger kernel oops.
>> >
>> > They will?  What is the oops message?
>>
>> Yes, they will, at lease I saw usb_serial/aircable/ftdi_sio oops. I
>> will manage to copy the oops message later.
>>
>> >
>> >> Here add usb_disabled() check in usb_serial_init and usb_serial_register
>> >
>> > This is odd, is it something new?  Why is usb-serial the only driver
>> > that needs such a thing?
>>
>> No, it is not new thing.  usb serial drivers normally call
>> usb_serial_register first, then usb_register, usb_register will fail
>> due to "nousb" checking, but usb_serial_register no.
>
> But as usb_register will fail, shouldn't they properly back out and no
> oopses happen?  This sounds like a simple fix to the drivers that are
> failing here, not changing the usb-serial core.

Hi greg

I think all usb serial drivers which call usb_serial_register will
oops, so IMHO usb core should be fixed.

I think maybe you missed my another reply, copy the content here again.

---
hand copy part of the oops message:

BUG: unable to handle kernel NULL pointer dereference at 00000001
IP: [<c0527636>] kset_find_obj+0x3b/0x5c
*pde = 00000000
Oops: 0000 [#1] SMP

[snip...]

EIP is at kset_find_obj+0x3b/0x5c
EAX:00000001

[snip...]

Call Trace:
driver_register
destruct_tty_driver
usb_serial_bus_register
usb_serial_register
aircable_init
_stext
aircable_init
restore_nocheck_notrace
pci_arch_init

[snip...]

Actually, after the usb_serial_init failed, the usb_serial_bus_type
will be unregistered.

So when  serial dirvers call usb_serial_register (then
usb_serial_bus_register, and then driver_register),  due to the bus
kset already unregistered kernel will oops.
---

>
> And this should only be an issue if you build your drivers into the
> kernel, right?

Yes.

>
> thanks,
>
> greg k-h
>



-- 
Regards
dave
--
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