Manoj Joseph wrote:
Hi,
I find that fchmod(2) on a zfs filesystem can sometimes generate errno =
ENOSPC. However this error value is not in the manpage of fchmod(2).
Here's where ENOSPC is generated.
zfs`dsl_dir_tempreserve_impl
zfs`dsl_dir_tempreserve_space+0x4e
zfs`dmu_tx_try_assign+0x230
zfs`dmu_tx_assign+0x21
zfs`zfs_setattr+0x41b
genunix`fop_setattr+0x24
genunix`vpsetattr+0x110
genunix`fdsetattr+0x26
genunix`fchmod+0x2a
genunix`dtrace_systrace_syscall+0xbc
unix`sys_sysenter+0x101
Is this correct behavior? Is it the manpage that needs fixing? zpool
list shows this.
In a COW filesystem such as ZFS, it will sometimes be necessary to return
ENOSPC in cases such as chmod(2) which previously did not. This is because
there could be a snapshot, so "overwriting" some information actually
requires a net increase in space used.
That said, we may be generating this ENOSPC in cases where it is not strictly
necessary (eg, when there are no snapshots). We're working on some of these
cases. Can you show us the output of 'zfs list' when the ENOSPC occurs?
--matt
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss