Index: uspace/drv/bus/usb/xhci/trb_ring.c
===================================================================
--- uspace/drv/bus/usb/xhci/trb_ring.c	(revision f54380490667c4a8ab75a0dfec8c80d3858cf769)
+++ uspace/drv/bus/usb/xhci/trb_ring.c	(revision 74c0de0de124d4dde73aac7144388d7fc86b7eb0)
@@ -32,4 +32,5 @@
 #include <as.h>
 #include <align.h>
+#include <libarch/barrier.h>
 #include <usb/debug.h>
 #include "hw_struct/trb.h"
@@ -328,4 +329,7 @@
 	}
 
+	/* Do not reorder the Cycle bit reading with memcpy */
+	read_barrier();
+
 	memcpy(event, ring->dequeue_trb, sizeof(xhci_trb_t));
 
