Comment 4 for bug 1328285

Revision history for this message
Steve Langasek (vorlon) wrote :

The above more directly addresses the root cause here, which is that whoopsie is starting up and trying to find a mac address before the interface is up, and SIOCGIFCONF only returns the list of interfaces that are up and have ipv4 addresses associated with them. The system identifier generation should not give different results depending on whether the network is up, especially as whoopsie will run quite early in boot relative to network configuration (when using NM). Probing via /sys/class/net will more reliably get us an answer based on the ethernet (incl. wifi) interfaces, which is evidently the first choice anyway - so for most devices, no need to fall back to IMEI at all.

Also, note that even with this change, it's very possible for boot-time races to cause different system identifiers to be chosen at each boot. Whatever identifier whoopsie chooses, I think it should really be recorded on the filesystem, so that it persists across boots rather than bouncing back and forth between interfaces.