It's not supposed to be a permanent fix (i.e., one that you can make on every boot), it's supposed to be a way of debugging the problem. If you take a look at the kernel bug I linked to, there's a kernel commit that you could revert that supposedly addresses this issue.
With that said, I don't know the answer to your questions. I imagine the "directory" in /sys is created as devices come online and are registered at boot, which don't always happen in the same order. And I think the difference between those two "directories" are the device buses.
It's not supposed to be a permanent fix (i.e., one that you can make on every boot), it's supposed to be a way of debugging the problem. If you take a look at the kernel bug I linked to, there's a kernel commit that you could revert that supposedly addresses this issue.
With that said, I don't know the answer to your questions. I imagine the "directory" in /sys is created as devices come online and are registered at boot, which don't always happen in the same order. And I think the difference between those two "directories" are the device buses.