| 207 | |
| 208 | ---- |
| 209 | 2/9/2015 |
| 210 | |
| 211 | We've finally agreed that device names should be discovered when the device is activated. The only logical pairing is between logical name and module name. Unless explicitly specified the logical name to module_name mapping will follow a specific ordering. For Ethernet it is |
| 212 | |
| 213 | [e1000e, r8169] with the special exception that e1 is never touched (and enabled by default). |
| 214 | |
| 215 | For example, in a node with 3 Ethernet interfaces, 2 x e1000e interfaces and 1 x r8169, with e1 already bound to one of the e1000e interfaces. e0 should be the e1000e interfaces and e1 the r8169. This should be the cause reguardless of the devicename bindings. |
| 216 | |
| 217 | |
| 218 | For wifi the ordering is: |
| 219 | [ath5k, ath9k, ipw2200, iwlwifim wl]. So with a node that has a ath5k and ipw2200, w0 maps to the ath5k, and the w1 ipw2200. |
| 220 | |
| 221 | Additionally the behavior of the configure command needs to be changed. It should store commands if not activated or connected, and directly act on them only if activated and connected. The state of activation of device name population shouldn't matter to the configure command. |
| 222 | |
| 223 | Additionally we should start using the Timeout facility of Ruby to ensure that the node agent doesn't hang or block. refrence here [http://ruby-doc.org/stdlib-1.9.3/libdoc/timeout/rdoc/Timeout.html here] |