This would break if xattrs can't be stored while the filesystem itself is (mounted) read-only.
I would assume we can't set xattrs if the filesystem is read-only?
The short gist of it is that the read-only attribute should always be allowed to be changed or inspected, even on unix filesystems without xattrs. "stop stripping POSIX write access *if* we can store with xattr" should work.
Not to argue against having a fallback, but what filesystems don't support xattrs? There's FAT, but we could easily add support for FAT_IOCTL_SET_ATTRIBUTES.