Subject: bug#23283: closed (Re: bug#23283: 'tail -f' reports "unrecognized file system" for Plexistor's M1FS)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 14 Apr 2016 08:21:02 +0000

Your bug report

#23283: 'tail -f' reports "unrecognized file system" for Plexistor's M1FS

which was filed against the coreutils package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
23283: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23283
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#23283: 'tail -f' reports "unrecognized file system" for Plexistor's M1FS
From: Bernhard Voelker <[email-masked]>
To: Yigal Korman <[email-masked]>, [email-masked]
Date: Thu, 14 Apr 2016 10:20:21 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

On 04/13/2016 10:22 PM, Yigal Korman wrote:
> Hi,
> We (Plexistor Ltd.) are offering the first file-system to support
> persistent memory.
> You can download the community edition from our website:
> http://www.plexistor.com/download/
> Our customers are reporting the issue mentioned in the title for our FS,
> this is a common output:
> 
>> $ tail -f file
>> tail: unrecognized file system type 0x5346314d for ‘file’. please report
> this to [email-masked]. reverting to polling
> 
> Our FS is local and supports inotify.
> If it's all possible, please add us to the list of known FSs.
> See proposed (trivial) patch below.
> 
> Thank you,
> Yigal
> 
> From 9d4a87fa71e7c854adec41c5ad9eebd2ad51d5b6 Mon Sep 17 00:00:00 2001
> From: Yigal Korman <[email-masked]>
> Date: Wed, 13 Apr 2016 16:15:20 +0300
> Subject: [PATCH] stat,tail: Add support for M1FS filesystem
> 
> * src/stat.c (human_fstype): Add M1FS ID definition.
> ---
> src/stat.c | 2 ++
> 1 file changed, 2 insertions(+)
> 
> diff --git a/src/stat.c b/src/stat.c
> index 4d7ead3..a71d6af 100644
> --- a/src/stat.c
> +++ b/src/stat.c
> @@ -364,6 +364,8 @@ human_fstype (STRUCT_STATVFS const *statfsbuf)
> return "logfs";
> case S_MAGIC_LUSTRE: /* 0x0BD00BD0 remote */
> return "lustre";
> + case S_MAGIC_M1FS: /* 0x5346314d local */
> + return "m1fs";
> case S_MAGIC_MINIX: /* 0x137F local */
> return "minix";
> case S_MAGIC_MINIX_30: /* 0x138F local */
> --
> 1.9.3

Thanks for the report and the patch.
Somehow, the indentation in the email got lost.
I also added a NEWS entry, tweaked the commit message a bit to adhere
to our standards and made the ID definition upper-case to avoid the
following "make syntax-check" failure:

  $ make syntax-check
  ...
  0x5346314d
  maint.mk: Constants in src/stat.c should be 4 or 8 upper-case chars
  cfg.mk:737: recipe for target 'sc_fs-magic-compare' failed
  make: *** [sc_fs-magic-compare] Error 1

Pushed the attached at:
http://git.sv.gnu.org/cgit/coreutils.git/commit/?id=8faf269250

I'm hereby marking this bug as done.

Have a nice day,
Berny
>From 8faf269250e8eff5f5dd164dfa1d661c34f52ade Mon Sep 17 00:00:00 2001
From: Yigal Korman <[email-masked]>
Date: Wed, 13 Apr 2016 16:15:20 +0300
Subject: [PATCH] stat,tail: add support for M1FS

* src/stat.c (human_fstype): Add file system ID definition.
* NEWS (Improvements): Mention the change, moving the previously added
"prl_fs" change note from "Changes in behavior" to here.
Fixes http://bugs.gnu.org/23283
---
 NEWS       | 9 +++++++--
 src/stat.c | 2 ++
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/NEWS b/NEWS
index dd3ee9c..9445977 100644
--- a/NEWS
+++ b/NEWS
@@ -20,13 +20,18 @@ GNU coreutils NEWS                                    -*- outline -*-
    stat now outputs nanosecond information for time stamps even if
    they are out of localtime range.
 
-   stat -f --format=%T now reports "prl_fs" for a parallels file system.
-
    sort, tail, and uniq now support traditional usage like 'sort +2'
    and 'tail +10' on systems conforming to POSIX 1003.1-2008 and later.
    The 2008 edition of POSIX dropped the requirement that arguments
    like '+2' must be treated as file names.
 
+** Improvements
+
+   stat and tail now know about "prl_fs" (a parallels file system), and
+   "m1fs" (a Plexistor file system).  stat -f --format=%T now reports the
+   file system type, and tail -f uses the more conservative polling for
+   "prl_fs", and inotify for "m1fs" file systems.
+
 
 * Noteworthy changes in release 8.25 (2016-01-20) [stable]
 
diff --git a/src/stat.c b/src/stat.c
index 4d7ead3..ab69fbe 100644
--- a/src/stat.c
+++ b/src/stat.c
@@ -364,6 +364,8 @@ human_fstype (STRUCT_STATVFS const *statfsbuf)
       return "logfs";
     case S_MAGIC_LUSTRE: /* 0x0BD00BD0 remote */
       return "lustre";
+    case S_MAGIC_M1FS: /* 0x5346314D local */
+      return "m1fs";
     case S_MAGIC_MINIX: /* 0x137F local */
       return "minix";
     case S_MAGIC_MINIX_30: /* 0x138F local */
-- 
2.1.4

Subject: 'tail -f' reports "unrecognized file system" for Plexistor's M1FS
From: Yigal Korman <[email-masked]>
To: [email-masked]
Date: Wed, 13 Apr 2016 23:22:37 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,
We (Plexistor Ltd.) are offering the first file-system to support
persistent memory.
You can download the community edition from our website:
http://www.plexistor.com/download/
Our customers are reporting the issue mentioned in the title for our FS,
this is a common output:

> $ tail -f file
> tail: unrecognized file system type 0x5346314d for ‘file’. please report
this to [email-masked]. reverting to polling

Our FS is local and supports inotify.
If it's all possible, please add us to the list of known FSs.
See proposed (trivial) patch below.

Thank you,
Yigal

>From 9d4a87fa71e7c854adec41c5ad9eebd2ad51d5b6 Mon Sep 17 00:00:00 2001
From: Yigal Korman <[email-masked]>
Date: Wed, 13 Apr 2016 16:15:20 +0300
Subject: [PATCH] stat,tail: Add support for M1FS filesystem

* src/stat.c (human_fstype): Add M1FS ID definition.
---
src/stat.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/src/stat.c b/src/stat.c
index 4d7ead3..a71d6af 100644
--- a/src/stat.c
+++ b/src/stat.c
@@ -364,6 +364,8 @@ human_fstype (STRUCT_STATVFS const *statfsbuf)
return "logfs";
case S_MAGIC_LUSTRE: /* 0x0BD00BD0 remote */
return "lustre";
+ case S_MAGIC_M1FS: /* 0x5346314d local */
+ return "m1fs";
case S_MAGIC_MINIX: /* 0x137F local */
return "minix";
case S_MAGIC_MINIX_30: /* 0x138F local */
--
1.9.3