Raimonds Miltins wrote: > I'm using Gentoo linux on ZFS and see following when opened file with > tail -F (or -f): > tail: unrecognized file system type 0x2fc12fc1 for > ‘/var/log/messages’. please report this to > bug-coreutils@gnu.org. reverting to polling > > Distro: Gentoo > Kernel: 3.2.22 > Coreutils: 8.16
Thank you! That also affects the very latest, coreutils-8.19. Here's the patch I've just pushed: >From c9888e0debce29c6a0f7134bbc6d0ffd3f196bc5 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Wed, 29 Aug 2012 09:32:49 +0200 Subject: [PATCH] tail,stat: improve support for ZFS This change enables tail -f to use inotify and lets stat -f --format=%T report the file system type name, "zfs". * src/stat.c (human_fstype): Add a case: zfs, 0x2fc12fc1. * NEWS (Improvements): Mention it. * THANKS.in: Update. Reported by Raimonds Miltins in http://bugs.gnu.org/12301. --- NEWS | 7 +++++++ THANKS.in | 1 + src/stat.c | 2 ++ 3 files changed, 10 insertions(+) diff --git a/NEWS b/NEWS index 798a512..f3874fd 100644 --- a/NEWS +++ b/NEWS @@ -19,6 +19,13 @@ GNU coreutils NEWS -*- outline -*- than ignoring the -d option and failing with an 'Is a directory' error. [bug introduced in coreutils-8.19, with the addition of --dir (-d)] +** Improvements + + stat and tail work better with ZFS. stat -f --format=%T now reports the + file system type, "zfs", and tail -f now uses inotify for files on ZFS + file systems, rather than the default (for unknown file system types) + of polling. + * Noteworthy changes in release 8.19 (2012-08-20) [stable] diff --git a/THANKS.in b/THANKS.in index f288174..1580151 100644 --- a/THANKS.in +++ b/THANKS.in @@ -507,6 +507,7 @@ Piotr Kwapulinski k...@univ.gda.pl Prashant TR t...@eth.net Priit Jõerüüt jemm4j...@yahoo.com Primoz PETERLIN primozz.peter...@gmail.com +Raimonds Miltins raimo...@pro-9.com Rainer Orth r...@techfak.uni-bielefeld.de Ralf W. Stephan step...@tmt.de Ralph Loader loa...@maths.ox.ac.uk diff --git a/src/stat.c b/src/stat.c index e56f1ff..f75b7af 100644 --- a/src/stat.c +++ b/src/stat.c @@ -423,6 +423,8 @@ human_fstype (STRUCT_STATVFS const *statfsbuf) return "xfs"; case S_MAGIC_XIAFS: /* 0x012FD16D local */ return "xia"; + case S_MAGIC_ZFS: /* 0x2FC12FC1 local */ + return "zfs"; # elif __GNU__ case FSTYPE_UFS: -- 1.7.12.116.g31e0100