Trent Nelson added the comment:

Turns out our unit test uncovered a very subtle corner-case bug in ZFS, 
requiring the following patch to FreeBSD:

a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c
b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c
index 69374fb..7f61517 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c
@@ -1695,6 +1695,7 @@ sa_modify_attrs(sa_handle_t *hdl, sa_attr_type_t newattr,
                                ASSERT(action == SA_REPLACE);
                                SA_ADD_BULK_ATTR(attr_desc, j, attr,
                                    locator, datastart, buflen);
+                               length_idx++;
                        } else {
                                length = SA_REGISTERED_LEN(sa, attr);
                                if (length == 0) {


I guess the unit test should probably be patched to to skip the test IFF the 
underlying filesystem is ZFS and it exhibits the "length 24" problem.  
(Actually, detecting if the underlying filesystem is ZFS is non-trivial -- just 
testing for the "length 24" bug is probably sufficient.)  I'll look into this 
later.

(According to Andriy Gapon (FreeBSD developer that came up with the patch), the 
bug is likely to affect all ZFS implementations since the beginning of time.)

----------
resolution:  -> postponed
stage:  -> needs patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15748>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to