OK, so I've made a nasty hack change to my casper script, and that seems to solve the race condition problem. It just loops finding the casper-rw device 5 times, waiting 5 seconds before each try, before it gives up. It only does this if PERSISTENT is set.
This has fixed the problem for me, but I think it's a nasty solution. I guess it would work better if I built a custom kernel for the Live CD which has usb-storage statically compiled in rather than as a module.
OK, so I've made a nasty hack change to my casper script, and that seems to solve the race condition problem. It just loops finding the casper-rw device 5 times, waiting 5 seconds before each try, before it gives up. It only does this if PERSISTENT is set.
This has fixed the problem for me, but I think it's a nasty solution. I guess it would work better if I built a custom kernel for the Live CD which has usb-storage statically compiled in rather than as a module.