Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Feb 2009 17:00:08 +0200
From:      Alexander Motin <mav@FreeBSD.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r188464 - head/sys/kern
Message-ID:  <4992E7F8.9050509@FreeBSD.org>
In-Reply-To: <200902110829.20859.jhb@freebsd.org>
References:  <200902102322.n1ANMTgW007393@svn.freebsd.org> <200902110829.20859.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote:
> On Tuesday 10 February 2009 6:22:29 pm Alexander Motin wrote:
>> Author: mav
>> Date: Tue Feb 10 23:22:29 2009
>> New Revision: 188464
>> URL: http://svn.freebsd.org/changeset/base/188464
>>
>> Log:
>>   Check for device_set_devclass() errors and skip driver probe/attach if 
> any.
>>   Attach call without devclass set crashes the system.
>>   
>>   On resume AHCI driver sometimes tries to create duplicate adX device.
>>   It is surely his own problem, but IMHO it is not a reason to crash here.
>>   Other reasons are also possible.
> 
> Can you describe the problem a bit more fully?  Is the ata driver adding a 
> device with a fixed unit number but a wildcard class?  (That is, it is doing 
> something like 'device_add_child(dev, NULL, 4)'?)

Exactly. Class detected later as "ad" or as "acd", or something else. So
it does not get any error on that stage. But later, on driver_probe(),
device_set_devclass() returns error which left unhandled and causes
later crash inside following device_attach().

-- 
Alexander Motin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4992E7F8.9050509>