Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 07 Feb 2011 05:53:30 +0300
From:      Anonymous <swell.k@gmail.com>
To:        Rich <rincebrain@gmail.com>
Cc:        Olivier Smedts <olivier@gid0.org>, FreeBSD-current <freebsd-current@freebsd.org>, Shawn Webb <lattera@gmail.com>
Subject:   Re: zpool v28 and -current
Message-ID:  <86oc6ov9lh.fsf@gmail.com>
In-Reply-To: <AANLkTin0OxaHcdzE8EF6t-%2BkeLjbsXKOMnsA9WdGdrTg@mail.gmail.com> (Rich's message of "Sun, 6 Feb 2011 20:38:19 -0500")
References:  <AANLkTikM0S3aovnk0WQikC%2BC130DW7M4Nv6kDp%2BRCfGj@mail.gmail.com> <86k4hkiyr1.fsf@gmail.com> <AANLkTikAhuaeo3Z1O28ihBucafyJnpPiriwqs9v9Hsrv@mail.gmail.com> <86wrljuce6.fsf@gmail.com> <AANLkTimoP=AKTk-70BTzSQDbr-XqqSTLrE=y9=0ndsPR@mail.gmail.com> <AANLkTin0OxaHcdzE8EF6t-%2BkeLjbsXKOMnsA9WdGdrTg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Rich <rincebrain@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.

%%
@@ -186,14 +185,11 @@
 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'.

%%
@@ -3563,8 +3573,7 @@
 	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.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86oc6ov9lh.fsf>