FFS writes to read-only mount
David Cecil
david.cecil at nokia.com
Wed Mar 14 04:39:06 UTC 2007
Hi,
I have seen the following message (or equivalent) occasionally on a
FreeBSD 6.1 system:
g_vfs_done():mirror/gm0s1a[WRITE(offset=1349091328, length=16384)]error = 1
The partition in question is the root partition, and it is mounted
read-only. I have verified that the problem occurs due to the write
request returning EPERM due to the check in g_io_check:
case BIO_WRITE:
case BIO_DELETE:
if (cp->acw == 0)
return (EPERM);
I have been trying to determine what within FFS would be trying to write
to the partition. The "bio_from" in the bio structure indicates (in the
geom) that it's ffs.mirror/gm0s1a that's trying to write. The contents
of the buffer looks somewhat like a directory (lots of files listed, but
comparison to the actual directory that contians these files reveals
it's somewhat different), followed by a binary (ELF header). However,
I'm at a loss to understand who's actually doing the writing. Is it
coming from within FFS or is there an application that's done the
write? (I can't understand how an application would be permitted to do
it though.)
I have seen this sort of problem (same error number) reported on the
Internet occasionally, but it doesn't seem it's been satisfactorily
resolved in all instances.
Any help you can provide would be much appreciated.
Thanks,
Dave
More information about the freebsd-fs
mailing list