[ CC'ing Chris Horne since he's a subject-matter expert here. ] > I am testing a laptop which has a pluggable wireless card "ath1". I first > booted the system with ath1, and then shutdown the system, and remove this > card, then reboot the system. My code has the logic to see whether this link > still exists, and if not, mark the link as "not available". > > The function ddi_hold_devi_by_instance(major_of_ath, 1, 0) is called to see > whether the device is still available. But surprisingly, the function > returns a valid dev_info, but whose major number is "pcs" instead of "ath". > I could work around the problem by comparing the major number, but I'd like > to understand whether this is expected for ddi_hold_devi_by_instance() > function. > > Actually, the path name of the "ath1" device is: > > "pci at 0,0/pci1025,57 at 7/pci1385,5b00 at 0:ath1" > > and the path name of the returned dev_info is: > > "pci at 0,0/pci1025,57 at 7/pcs at 0"
I'm not familiar with this function, but based on the comments in the source, it seems like a bug. Chris, any thoughts? -- meem
