Sebastien Roy wrote: > Dan Groves wrote: >> On one of my test systems I have a single interface aggregation >> configured. I do not have it plumbed. I created it simply to see an >> aggregation's data get written out to either SMF or the datalink.conf >> flat file I'm working on. >> >> I noticed that when I have this aggregation configured, >> mac_linkmgmt_create is periodically called, which causes an upcall to >> linkmgmtd, which then causes it to write to the persistent storage. >> When I delete the aggregation, the periodic calls to >> mac_linkmgmt_create stop. > > Why does mac_linkmgmt_create() get called periodically? This doesn't > sound normal. In what context is it getting called? (set a kmdb > breakpoint in mac_linkmgmt_create() and see where you are when you hit it) >
Here's the stack trace: kmdb: stop at mac`mac_linkmgmt_create kmdb: target stopped at: mac`mac_linkmgmt_create:pushl %ebp [0]> ::stack mac`mac_linkmgmt_create() taskq_d_thread+0xa6(cb168f98, 0) thread_start+8() [0]> >> I don't see a difference in behavior between the two linkmgmtd's - in >> other words there is no difference in behavior between the linkmgmtd >> that writes to SMF or the linkmgmtd that writes to datalink.conf. >> >> Is this normal behavior? > > That doesn't sound normal to me. > >> If so, I will add code to linkmgmtd so that it can detect that nothing >> has changed since the last write and then it will not write out the >> link configuration again. > > That might not be a bad idea anyway. > > -Seb
