svn commit: r188464 - head/sys/kern

Alexander Motin mav at FreeBSD.org
Wed Feb 11 07:00:12 PST 2009


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


More information about the svn-src-head mailing list