Recently upgraded one of my Xen VPS servers to Ubuntu 12.04 and ran into this problem (“blkfront: barrier: empty write xvda op failed”, disk would mount read-only). Fixed by booting to a rescue image, mounting the problematic /dev/xvda1 device, and editing the /mnt/etc/fstab to add the ‘barrier=0’ option.
Fixing random disk errors with Ubuntu 12.04 Precise on XenServer — In Valid Logic