I want to build a home file server eventually and am still undecided on OS choice.
From some of the comments above by some of the developers then does it mean that ZFS is not a good choice for a root file system on a laptop? Sounds like only good for multi-disk multi-TB environments. Though it has features which would be very useful for desktop/laptop environments.
Has the bug of not being able to use preemption been fixed?
I suggest that you spend some time reading the kernel source code firsthand. You should find it to be an enlightening experience.
As for preemption, there are patches available that makes it work. They are available in the following pull requests:
The patches work well on my desktop, but preemption does not yield much qualitative benefit on my system. ZFS' ARC algorithm improves my desktop's interactive response far more than preemption does.
Also, you can use voluntary preemption without those patches. Voluntary preemption was implemented after full preemption with the claim that it was even better for low latency audio, although you can be the judge of that.
FreeBSD zfs is a good choice for server as well.
Solaris/Illumos has device support issues
A simpler FS like Ext4 will likely be better in your case, unless you actually want to take advantage of some of the features that ZFS provides - in that case, i'd say you could certainly go for it if you want to.
But expect it to be slower on your hardware for your uses. Where ZFS speed shines is when you are dealing with multiple high speed disks, not a single laptop disk that is undergoing heavy writes from compiling.
The best feature of zfs on a desktop or laptop is the volume management. Usually the disks/ssds are quiet small in a laptop and you do not want to waste disk space with partitioning, so with zfs you can just create one vdev and have snapshots of most of the configs/documents and can use compression for home folders. My ratio is like 1.34 on the home folder with documents... what is there not useful on a laptop?
So I guess what was released from Sun is all we have to work with, and the subsequent updates made under the OpenIndiana project (which is probably going to have more momentum).
But as long as we can have a ZFS kernel module like we can have video drivers, it's not too big of a deal. The end-user just has to install it himself.