Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
The "tail -f" command uses inotify for tracking changes in files. For remote file systems [-/,] inotify is not available. In the case of unknown file systems, for example panasas, "tail -f" failed instead of falling back to polling. Now, the list of known file systems is updated and "tail -f" is modified to fall back into polling for unknown file systems. As result, "tail -f" now works correctly, even on unknown file systems, with only a warning about the unknown file system and a fall back to polling.Cause:
tail -f uses inotify for tracking changes in files. For remote filesystems inotify is not available.
Consequence:
In the case of unknown filesystems like panassas, tail -f simply failed, instead of fallback to polling.
Fix:
List of known filesystems was updated and tail was modified to fallback into polling, for unknown filesystems.
Result:
As result, tail -f will work correctly even on unknown filesystems, just with warning about unknown filesystem and fallback to polling.
Description of problem:
tail -f doesn't work on panassas file systems
It appears like the current rhel6 coreutils blacklists fs's for which inotify doesn't work. These are mostly network file systems. Unfortunately, panassas's file system isn't listed and so tail -f doesn't work.
from tail.c
886 # if HAVE_FSTATFS && HAVE_STRUCT_STATFS_F_TYPE && defined __linux__
887 struct statfs buf;
888 int err = fstatfs (fd, &buf);
889 if (err != 0)
890 {
891 /* On at least linux-2.6.38, fstatfs fails with ENOSYS when FD
892 is open on a pipe. Treat that like a remote file. */
893 if (errno != ENOSYS)
894 error (0, errno, _("cannot determine location of %s. "
895 "reverting to polling"), quote (name));
896 }
897 else
898 {
899 switch (buf.f_type)
900 {
901 case S_MAGIC_AFS:
902 case S_MAGIC_CIFS:
903 case S_MAGIC_CODA:
904 case S_MAGIC_FUSEBLK:
$ ./f_type /panfs/scratch
f_type = 0xaad7aaea
Which seems to be PAN_KERNEL_FS_CLIENT_SUPER_MAGIC
Possible resolution likely seems to be to add PAN_KERNEL_FS_CLIENT_SUPER_MAGIC or 0xaad7aaea to tail's logic.
Version-Release number of selected component (if applicable):
coreutils as shipped with RHEL 6.2
How reproducible:
100%
Steps to Reproduce:
1. Run tail -f against a file on a panassas file system.
2.
3.
Actual results:
tail -f does not work
Expected results:
tail -f works
Additional info:
Thanks for the heads up.
Is there a definitive source for that PanFS magic number?
I pull new magic numbers for coreutils from linux kernel header files
semi-automatically, and see that one is not yet there.
I've just posted an upstream coreutils patch for that:
http://thread.gmane.org/gmane.comp.gnu.coreutils.general/2749
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
http://rhn.redhat.com/errata/RHSA-2013-1652.html
Description of problem: tail -f doesn't work on panassas file systems It appears like the current rhel6 coreutils blacklists fs's for which inotify doesn't work. These are mostly network file systems. Unfortunately, panassas's file system isn't listed and so tail -f doesn't work. from tail.c 886 # if HAVE_FSTATFS && HAVE_STRUCT_STATFS_F_TYPE && defined __linux__ 887 struct statfs buf; 888 int err = fstatfs (fd, &buf); 889 if (err != 0) 890 { 891 /* On at least linux-2.6.38, fstatfs fails with ENOSYS when FD 892 is open on a pipe. Treat that like a remote file. */ 893 if (errno != ENOSYS) 894 error (0, errno, _("cannot determine location of %s. " 895 "reverting to polling"), quote (name)); 896 } 897 else 898 { 899 switch (buf.f_type) 900 { 901 case S_MAGIC_AFS: 902 case S_MAGIC_CIFS: 903 case S_MAGIC_CODA: 904 case S_MAGIC_FUSEBLK: $ ./f_type /panfs/scratch f_type = 0xaad7aaea Which seems to be PAN_KERNEL_FS_CLIENT_SUPER_MAGIC Possible resolution likely seems to be to add PAN_KERNEL_FS_CLIENT_SUPER_MAGIC or 0xaad7aaea to tail's logic. Version-Release number of selected component (if applicable): coreutils as shipped with RHEL 6.2 How reproducible: 100% Steps to Reproduce: 1. Run tail -f against a file on a panassas file system. 2. 3. Actual results: tail -f does not work Expected results: tail -f works Additional info: