Re: zpool v28 and -current

From: Anonymous <swell.k_at_gmail.com>
Date: Mon, 07 Feb 2011 05:53:30 +0300
Rich <rincebrain_at_gmail.com> writes:

>> Attempted this procedure today, make fails with:
[...]
>> /usr/local/ncvs/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:188:
>> error: 'zfs_mdcomp_disable' undeclared here (not in a function)
>
> First error is just a variable undefined that was defined in the original
> file pre-patching in the function; redefined it as defined in the original.

No, it should be removed from there. See if you have arc.c.rej.

%%
_at__at_ -186,14 +185,11 _at__at_
 TUNABLE_QUAD("vfs.zfs.arc_max", &zfs_arc_max);
 TUNABLE_QUAD("vfs.zfs.arc_min", &zfs_arc_min);
 TUNABLE_QUAD("vfs.zfs.arc_meta_limit", &zfs_arc_meta_limit);
-TUNABLE_INT("vfs.zfs.mdcomp_disable", &zfs_mdcomp_disable);
 SYSCTL_DECL(_vfs_zfs);
 SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, arc_max, CTLFLAG_RDTUN, &zfs_arc_max, 0,
     "Maximum ARC size");
 SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, arc_min, CTLFLAG_RDTUN, &zfs_arc_min, 0,
     "Minimum ARC size");
-SYSCTL_INT(_vfs_zfs, OID_AUTO, mdcomp_disable, CTLFLAG_RDTUN,
-    &zfs_mdcomp_disable, 0, "Disable metadata compression");
 
 /*
  * Note that buffers can be in one of 6 states:
%%

>> /usr/local/ncvs/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c:3580:
>> warning: passing argument 7 of 'zio_write' discards qualifiers from pointer target type
>
> Second error is because arc_write takes a const of that property now, and
> zio_write still doesn't, resulting in the warning as shown. Dunno what the
> correct way to fix this is, as it's unclear to me why the change was done.

Did you count wrong? The 7th argument to zio_write() around 3580 line is
`&zp' vs. `zp'.

%%
_at__at_ -3563,8 +3573,7 _at__at_
 	callback->awcb_private = private;
 	callback->awcb_buf = buf;
 
-	write_policy(spa, wp, &zp);
-	zio = zio_write(pio, spa, txg, bp, buf->b_data, hdr->b_size, &zp,
+	zio = zio_write(pio, spa, txg, bp, buf->b_data, hdr->b_size, zp,
 	    arc_write_ready, arc_write_done, callback, priority, zio_flags, zb);
 
 	return (zio);
%%

> This looks more broken than I might hope to fix trivially, since working
> around the second one above results in more brokenness in dbuf.c. I suppose
> I'll wait for an updated patchset to try this out again.
Received on Mon Feb 07 2011 - 01:54:38 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:11 UTC