Hi everyone, following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am providing a ZFSv28 testing patch for 8-STABLE. Link to the patch: http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz Link to mfsBSD ISO files for testing (i386 and amd64): http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-amd64.iso http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-i386.iso The root password for the ISO files: "mfsroot" The ISO files work on real systems and in virtualbox. They conatin a full install of FreeBSD 8.2-PRERELEASE with ZFS v28, simply use the provided "zfsinstall" script. The patch is against FreeBSD 8-STABLE as of 2010-12-15. When applying the patch be sure to use correct options for patch(1) and make sure the file sys/cddl/compat/opensolaris/sys/sysmacros.h gets deleted: # cd /usr/src # fetch http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz # xz -d stable-8-zfsv28-20101215.patch.xz # patch -E -p0 < stable-8-zfsv28-20101215.patch # rm sys/cddl/compat/opensolaris/sys/sysmacros.h>From Pawel's announcement:Some of the changes since the last patchset (zfs_20100831.patch): - Boot support for ZFS v28 (only RAIDZ3 is not yet supported). - Various fixes for the existing ZFS boot code. - Support for sendfile(2) (by avg@). - Userland<->kernel compatibility with v13-v15 (by mm@). - ACL fixes (by trasz@). - Various bug fixes. Please test, test, test. Chances are this is the last patchset before v28 going to HEAD (finally) and after a reasonable testing period into 8-STABLE. Especially test new changes, like boot support and sendfile(2) support. Also be sure to verify if you can import for existing ZFS pools (v13-v15) when running v28 or boot from your existing pools. Please test the (v13-v15) compatibility layer as well: Old usereland + new kernel / old kernel + new userland More information about ZFS on my blog: http://blog.vx.sk
2010/12/16 Martin Matuska <mm@freebsd.org>:> Hi everyone, > > following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am > providing a ZFSv28 testing patch for 8-STABLE. > > Link to the patch: > > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz > > Link to mfsBSD ISO files for testing (i386 and amd64): > ? ?http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-amd64.iso > ? ?http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-i386.iso > > The root password for the ISO files: "mfsroot" > The ISO files work on real systems and in virtualbox. > They conatin a full install of FreeBSD 8.2-PRERELEASE with ZFS v28, > simply use the provided "zfsinstall" script. > > The patch is against FreeBSD 8-STABLE as of 2010-12-15. > > When applying the patch be sure to use correct options for patch(1) > and make sure the file sys/cddl/compat/opensolaris/sys/sysmacros.h gets > deleted: > > ? ?# cd /usr/src > ? ?# fetch > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz > ? ?# xz -d stable-8-zfsv28-20101215.patch.xz > ? ?# patch -E -p0 < stable-8-zfsv28-20101215.patch > ? ?# rm sys/cddl/compat/opensolaris/sys/sysmacros.hPatch seemed to apply fine against yesterday evening (2010-12-16) 8-STABLE, world and kernel compiled fine, and booting from mirrored pool v15 was also fine. Cheers, Romain
17.12.2010 12:12, Romain Garbage ?????:>> following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am >> providing a ZFSv28 testing patch for 8-STABLE. >> >> Link to the patch: >> >> http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz >> >> Link to mfsBSD ISO files for testing (i386 and amd64): >> http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-amd64.iso >> http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-i386.iso >> >> The root password for the ISO files: "mfsroot" >> The ISO files work on real systems and in virtualbox. >> They conatin a full install of FreeBSD 8.2-PRERELEASE with ZFS v28, >> simply use the provided "zfsinstall" script. >> >> The patch is against FreeBSD 8-STABLE as of 2010-12-15. >> >> When applying the patch be sure to use correct options for patch(1) >> and make sure the file sys/cddl/compat/opensolaris/sys/sysmacros.h gets >> deleted: >> >> # cd /usr/src >> # fetch >> http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz >> # xz -d stable-8-zfsv28-20101215.patch.xz >> # patch -E -p0< stable-8-zfsv28-20101215.patch >> # rm sys/cddl/compat/opensolaris/sys/sysmacros.h > > Patch seemed to apply fine against yesterday evening (2010-12-16) > 8-STABLE, world and kernel compiled fine, and booting from mirrored > pool v15 was also fine....booting from RAIDZ2 pool v15 was bad... :( --- Best regards, Andrei Lavreniyuk.
Hi, I applied patch against evening 2010-12-16 STABLE. I did what Martin asked: On Thu, Dec 16, 2010 at 1:44 PM, Martin Matuska <mm@freebsd.org> wrote:> ? ?# cd /usr/src > ? ?# fetch > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz > ? ?# xz -d stable-8-zfsv28-20101215.patch.xz > ? ?# patch -E -p0 < stable-8-zfsv28-20101215.patch > ? ?# rm sys/cddl/compat/opensolaris/sys/sysmacros.h >Patch applied cleanly. #make buildworld #make buildkernel #make installkernel Reboot into single user mode. #mergemaster -p #make installworld #mergemaster Reboot. Rebooting with old world and new kernel went fine. But after reboot with new world I got: ZFS: zfs_alloc()/zfs_free() mismatch Just before loading kernel modules, after that my system hangs.
On Sat, Dec 18, 2010 at 7:30 PM, Martin Matuska <mm@freebsd.org> wrote:> The information about pools is stored in /boot/zfs/zpool.cache > If this file doesn't contain correct information, your system pools will > not be discovered. > > In v28, importing a pool with the "altroot" option does not touch the > cache file (it has to be specified manually with a option to zpool import). > > Regarding rollback - rolling back a live root file system is not > recommended. > > D?a 18.12.2010 19:43, Krzysztof Dajka ?wrote / nap?sal(a): >> t my system working >> again. I did: >> zpool import -o altroot=/tank tank >> chroot /tank >> reboot >> >> Can anyone explain why chroot to /tank is needed? >I used 8.2BETA1 memstick image to import and rollback. Thanks for explanation, few moments ago I would argue that zpool(1) didn't mention cachefile :)
Ok, On 16 Dec 2010, at 13:44, Martin Matuska wrote:> Please test, test, test. Chances are this is the last patchset before > v28 going to HEAD (finally) and after a reasonable testing period into > 8-STABLE. > Especially test new changes, like boot support and sendfile(2) support. > Also be sure to verify if you can import for existing ZFS pools > (v13-v15) when running v28 or boot from your existing pools. > > Please test the (v13-v15) compatibility layer as well: > Old usereland + new kernel / old kernel + new userlandUsing v28 kernel+userland seems to work on FreeBSD/amd64, I didn't dare to mix userland/kernel as that is ill advised by itself when there are major changes, like this one. I can't seem to use zfs allow/userspace/groupspace. old py-zfs just dumped core on those commands, recompiling gave my warnings about a missing solaris.misc module which persisted even after a upgrade to py26-zfs-1_1. Thanks for keeping up the good work on ZFS in FreeBSD! Best Regards, Ruben
Ruben van Staveren
2010-Dec-23 08:27 UTC
Updated py-zfs ? Re: New ZFSv28 patchset for 8-STABLE
Hi, On 16 Dec 2010, at 13:44, Martin Matuska wrote:> Hi everyone, > > following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am > providing a ZFSv28 testing patch for 8-STABLE.Where can I find an updated py-zfs so that zfs (un)allow/userspace/groupspace can be tested ? Regards, Ruben
Martin Matuska
2010-Dec-23 08:59 UTC
Updated py-zfs ? Re: New ZFSv28 patchset for 8-STABLE
I have updated the py-zfs port right now so it should work with v28, too. The problem was a non-existing solaris.misc module, I had to patch and remove references to this module. Cheers, mm D?a 23.12.2010 09:27, Ruben van Staveren wrote / nap?sal(a):> Hi, > > On 16 Dec 2010, at 13:44, Martin Matuska wrote: > >> Hi everyone, >> >> following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am >> providing a ZFSv28 testing patch for 8-STABLE. > > Where can I find an updated py-zfs so that zfs (un)allow/userspace/groupspace can be tested ? > > Regards, > Ruben > > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
Hi Martin, List, Patched up to a ZFSv28 20101218 and it is working as expected, Great Job!. There seems to be some assertion errors that are left to be fixed yet with the following examples: Panic String: solaris assert: vd->vdev_stat.vs_alloc == 0 (0x18a000 =0x0), file:/usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c, line: 4623 #3 0x84caca35 in spa_vdev_remove (spa=0x84dba000, guid=2330662286000872312, unspare=0) at /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c:4623 4623 ASSERT3U(vd->vdev_stat.vs_alloc, ==, 0); (kgdb) list 4618 4619 /* 4620 * The evacuation succeeded. Remove any remaining MOS metadata 4621 * associated with this vdev, and wait for these changes to sync. 4622 */ 4623 ASSERT3U(vd->vdev_stat.vs_alloc, ==, 0); 4624 txg = spa_vdev_config_enter(spa); 4625 vd->vdev_removing = B_TRUE; 4626 vdev_dirty(vd, 0, NULL, txg); 4627 vdev_config_dirty(vd); This happens on i386 upon ( zfs remove pool <logdev> ) Also if it is of any relevance this happens during ``offline'' too. If further information is needed I still have these cores and kernel just let me know what you need. Regards, -- jhell,v
Hi there. I used stable-8-zfsv28-20101223-nopython.patch.xz from http://people.freebsd.org/~mm/patches/zfs/v28/ simply because it was the most recent at this location. Is this the one to use? Just asking cause the file server I installed it on has stopped responding this morning and doing a remote power cycle didn't work. So got to get to the office and see what went on :( Suspect a kernel panic of some kind Jean-Yves
On 12/16/2010 01:44 PM, Martin Matuska wrote:> Link to the patch: > > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz > >I've used this: http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101223-nopython.patch.xz on a server with amd64, 8 G RAM, acting as a file server on ftp/http/rsync, the content being read only mounted with nullfs in jails, and the daemons use sendfile (ftp and http). The effects can be seen here: http://people.fsn.hu/~bra/freebsd/20110101-zfsv28-fbsd/ the exact moment of the switch can be seen on zfs_mem-week.png, where the L2 ARC has been discarded. What I see: - increased CPU load - decreased L2 ARC hit rate, decreased SSD (ad[46]), therefore increased hard disk load (IOPS graph) Maybe I could accept the higher system load as normal, because there were a lot of things changed between v15 and v28 (but I was hoping if I use the same feature set, it will require less CPU), but dropping the L2ARC hit rate so radically seems to be a major issue somewhere. As you can see from the memory stats, I have enough kernel memory to hold the L2 headers, so the L2 devices got filled up to their maximum capacity. Any ideas on what could cause these? I haven't upgraded the pool version and nothing was changed in the pool or in the file system. Thanks,
On 12/16/2010 01:44 PM, Martin Matuska wrote:> Hi everyone, > > following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am > providing a ZFSv28 testing patch for 8-STABLE. > > Link to the patch: > > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz >I've got an IO hang with dedup enabled (not sure it's related, I've started to rewrite all data on pool, which makes a heavy load): The processes are in various states: 65747 1001 1 54 10 28620K 24360K tx->tx 0 6:58 0.00% cvsup 80383 1001 1 54 10 40616K 30196K select 1 5:38 0.00% rsync 1501 www 1 44 0 7304K 2504K zio->i 0 2:09 0.00% nginx 1479 www 1 44 0 7304K 2416K zio->i 1 2:03 0.00% nginx 1477 www 1 44 0 7304K 2664K zio->i 0 2:02 0.00% nginx 1487 www 1 44 0 7304K 2376K zio->i 0 1:40 0.00% nginx 1490 www 1 44 0 7304K 1852K zfs 0 1:30 0.00% nginx 1486 www 1 44 0 7304K 2400K zfsvfs 1 1:05 0.00% nginx And everything which wants to touch the pool is/becomes dead. Procstat says about one process: # procstat -k 1497 PID TID COMM TDNAME KSTACK 1497 100257 nginx - mi_switch sleepq_wait __lockmgr_args vop_stdlock VOP_LOCK1_APV null_lock VOP_LOCK1_APV _vn_lock nullfs_root lookup namei vn_open_cred kern_openat syscallenter syscall Xfast_syscall
On 12/16/2010 01:44 PM, Martin Matuska wrote:> Hi everyone, > > following the announcement of Pawel Jakub Dawidek (pjd@FreeBSD.org) I am > providing a ZFSv28 testing patch for 8-STABLE. > > Link to the patch: > > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz > > Link to mfsBSD ISO files for testing (i386 and amd64): > http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-amd64.iso > http://mfsbsd.vx.sk/iso/zfs-v28/8.2-beta-zfsv28-i386.iso > > The root password for the ISO files: "mfsroot" > The ISO files work on real systems and in virtualbox. > They conatin a full install of FreeBSD 8.2-PRERELEASE with ZFS v28, > simply use the provided "zfsinstall" script. > > The patch is against FreeBSD 8-STABLE as of 2010-12-15. > > When applying the patch be sure to use correct options for patch(1) > and make sure the file sys/cddl/compat/opensolaris/sys/sysmacros.h gets > deleted: > > # cd /usr/src > # fetch > http://people.freebsd.org/~mm/patches/zfs/v28/stable-8-zfsv28-20101215.patch.xz > # xz -d stable-8-zfsv28-20101215.patch.xz > # patch -E -p0< stable-8-zfsv28-20101215.patch > # rm sys/cddl/compat/opensolaris/sys/sysmacros.hI've just got a panic: http://people.fsn.hu/~bra/freebsd/20110101-zfsv28-fbsd/IMAGE_006.jpg The panic line for google: panic: solaris assert: task->ost_magic == TASKQ_MAGIC, file: /usr/src/sys/modules/zfs/../../cddl/compat/opensolaris/kern/opensolaris_taskq.c, line: 150 I hope this is enough for debugging, if it's not yet otherwise known. If not, I will try to catch it againt and make a dump. Thanks,