Handle GPU unplugging and CoglOnscreen creation race condition gracefully
As discussed in !713 (merged), the meta_renderer_native_create_onscreen call in meta_renderer_native_create_view can fail if e.g. the GPU has been unplugged.
!713 (merged) ensures that we do not call meta_renderer_native_create_view on unplugged GPUs after we have received the device-removed signal from udev. Mostly fixing us hitting the g_error on meta_renderer_native_create_onscreen failure.
But this still leaves a race where we are doing monitor reconfiguration for some reason while the GPU gets unplugged and we may call meta_renderer_native_create_onscreen on an unplugged GPU before we have received / processed the "device-removed" signal.
Since the g_error will take the entire users session down this quite bad and we really should handle this error more gracefully. More in general we should try to fail gracefully instead of using g_error / g_assert where-ever possible. I will file a separate issue for this.