OpenSolaris

Printable Version Enter a New Search
Bug ID 6729044
Synopsis race between network_rcm and softmac when a physical device is attached
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:gld
Keywords
Responsible Engineer Cathy Zhou
Reported Against
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_97
Fixed In snv_97
Release Fixed solaris_nevada(snv_97)
Related Bugs 6577618 , 6740850
Submit Date 23-July-2008
Last Update Date 28-August-2008
Description
There is a race between network rcm module and the softmac kernel module when a
physical device is attached. In particular, when the device note is attached, the
kernel generates a ESC_DEVFS_DEVI_ADD event which is consumed by devfsadmd, and
devfsadmd in turn calls rcm_notify_event() to inform the RCM framework of the new
device. This RCM event is consumed by network_rcm module, which calls dladm_dev2linkid()
to get the device's accociated linkid.

But because the ESC_DEVFS_DEVI_ADD event is generated before the post_attach routine
of the device, which requests the dlmgmtd to allocate the device's linkid, so there is
a chance that when the network_rcm module calls dladm_dev2linkid() function, dlmgmtd
is not aware of this new device yet.

This race will become more obvious with the fix of 6696737, since the upcall to
allocate the linkid will be done through a taskq.
Work Around
N/A
Comments
N/A