public inbox for linux-man@vger.kernel.org
 help / color / mirror / Atom feed
From: Alejandro Colomar <alx@kernel.org>
To: linux-man@vger.kernel.org
Cc: "Alejandro Colomar" <alx@kernel.org>,
	"Pali Rohár" <pali@kernel.org>, "Jan Kara" <jack@suse.cz>,
	"G. Branden Robinson" <branden@debian.org>,
	linux-fsdevel@vger.kernel.org
Subject: [PATCH v3] man/man3/readdir.3, man/man3type/stat.3type: Improve documentation about .d_ino and .st_ino
Date: Fri, 31 Oct 2025 11:44:14 +0100	[thread overview]
Message-ID: <bfa7e72ea17ed369a1cf7589675c35728bb53ae4.1761907223.git.alx@kernel.org> (raw)
In-Reply-To: <h7mdd3ecjwbxjlrj2wdmoq4zw4ugwqclzonli5vslh6hob543w@hbay377rxnjd>

Suggested-by: Pali Rohár <pali@kernel.org>
Co-authored-by: Pali Rohár <pali@kernel.org>
Co-authored-by: Jan Kara <jack@suse.cz>
Cc: "G. Branden Robinson" <branden@debian.org>
Cc: <linux-fsdevel@vger.kernel.org>
Signed-off-by: Alejandro Colomar <alx@kernel.org>
---

Hi Jan,

I've put your suggestions into the patch.  I've also removed the
sentence about POSIX, as Pali discussed with Branden.

At the bottom of the email is the range-diff against the previous
version.


Have a lovely day!
Alex

 man/man3/readdir.3      | 19 ++++++++++++++++++-
 man/man3type/stat.3type | 20 +++++++++++++++++++-
 2 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/man/man3/readdir.3 b/man/man3/readdir.3
index e1c7d2a6a..220643795 100644
--- a/man/man3/readdir.3
+++ b/man/man3/readdir.3
@@ -58,7 +58,24 @@ .SH DESCRIPTION
 structure are as follows:
 .TP
 .I .d_ino
-This is the inode number of the file.
+This is the inode number of the file
+in the filesystem containing
+the directory on which
+.BR readdir ()
+was called.
+If the directory entry is the mount point,
+then
+.I .d_ino
+differs from
+.I .st_ino
+returned by
+.BR stat (2)
+on this file:
+.I .d_ino
+is the inode number of the mount point,
+while
+.I .st_ino
+is the inode number of the root directory of the mounted filesystem.
 .TP
 .I .d_off
 The value returned in
diff --git a/man/man3type/stat.3type b/man/man3type/stat.3type
index 76ee3765d..ea9acc5ec 100644
--- a/man/man3type/stat.3type
+++ b/man/man3type/stat.3type
@@ -66,7 +66,25 @@ .SH DESCRIPTION
 macros may be useful to decompose the device ID in this field.)
 .TP
 .I .st_ino
-This field contains the file's inode number.
+This field contains the file's inode number
+in the filesystem on
+.IR .st_dev .
+If
+.BR stat (2)
+was called on the mount point,
+then
+.I .st_ino
+differs from
+.I .d_ino
+returned by
+.BR readdir (3)
+for the corresponding directory entry in the parent directory.
+In this case,
+.I .st_ino
+is the inode number of the root directory of the mounted filesystem,
+while
+.I .d_ino
+is the inode number of the mount point in the parent filesystem.
 .TP
 .I .st_mode
 This field contains the file type and mode.

Range-diff against v2:
1:  d3eeebe81 ! 1:  bfa7e72ea man/man3/readdir.3, man/man3type/stat.3type: Improve documentation about .d_ino and .st_ino
    @@ Commit message
     
         Suggested-by: Pali Rohár <pali@kernel.org>
         Co-authored-by: Pali Rohár <pali@kernel.org>
    +    Co-authored-by: Jan Kara <jack@suse.cz>
         Cc: "G. Branden Robinson" <branden@debian.org>
         Cc: <linux-fsdevel@vger.kernel.org>
         Signed-off-by: Alejandro Colomar <alx@kernel.org>
    @@ man/man3/readdir.3: .SH DESCRIPTION
      .TP
      .I .d_ino
     -This is the inode number of the file.
    -+This is the inode number of the file,
    -+which belongs to the filesystem
    -+.I .st_dev
    -+(see
    -+.BR stat (3type))
    -+of the directory on which
    ++This is the inode number of the file
    ++in the filesystem containing
    ++the directory on which
     +.BR readdir ()
     +was called.
     +If the directory entry is the mount point,
     +then
     +.I .d_ino
     +differs from
    -+.IR .st_ino :
    ++.I .st_ino
    ++returned by
    ++.BR stat (2)
    ++on this file:
     +.I .d_ino
    -+is the inode number of the underlying mount point,
    ++is the inode number of the mount point,
     +while
     +.I .st_ino
    -+is the inode number of the mounted file system.
    -+According to POSIX,
    -+this Linux behavior is considered to be a bug,
    -+but is nevertheless conforming.
    ++is the inode number of the root directory of the mounted filesystem.
      .TP
      .I .d_off
      The value returned in
    @@ man/man3type/stat.3type: .SH DESCRIPTION
      .TP
      .I .st_ino
     -This field contains the file's inode number.
    -+This field contains the file's inode number,
    -+which belongs to the
    ++This field contains the file's inode number
    ++in the filesystem on
     +.IR .st_dev .
     +If
     +.BR stat (2)
     +was called on the mount point,
     +then
    -+.I .d_ino
    -+differs from
    -+.IR .st_ino :
    -+.I .d_ino
    -+is the inode number of the underlying mount point,
    -+while
     +.I .st_ino
    -+is the inode number of the mounted file system.
    ++differs from
    ++.I .d_ino
    ++returned by
    ++.BR readdir (3)
    ++for the corresponding directory entry in the parent directory.
    ++In this case,
    ++.I .st_ino
    ++is the inode number of the root directory of the mounted filesystem,
    ++while
    ++.I .d_ino
    ++is the inode number of the mount point in the parent filesystem.
      .TP
      .I .st_mode
      This field contains the file type and mode.

base-commit: f305f7647d5cf62e7e764fb7a25c4926160c594f
-- 
2.51.0


  parent reply	other threads:[~2025-10-31 10:44 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-25 10:33 Improving inode number documentation Pali Rohár
2025-05-25 23:30 ` Alejandro Colomar
2025-05-28 18:25   ` Pali Rohár
2025-05-28 19:03     ` Alejandro Colomar
2025-05-28 19:41       ` Pali Rohár
2025-05-28 19:59         ` Alejandro Colomar
2025-05-28 21:31           ` [RFC v1] man/man3/readdir.3, man/man3type/stat.3type: Improve documentation about .d_ino and .st_ino Alejandro Colomar
2025-05-28 22:54             ` G. Branden Robinson
2025-10-28 23:15           ` [PATCH v2] " Alejandro Colomar
2025-10-28 23:53             ` Pali Rohár
2025-10-29  7:00               ` G. Branden Robinson
2025-10-29 19:34                 ` Pali Rohár
2025-11-21 21:10                   ` Pali Rohár
2025-11-21 23:39                     ` G. Branden Robinson
2025-11-22  0:53                       ` Pali Rohár
2025-10-30 11:58             ` Jan Kara
2025-10-31 10:44           ` Alejandro Colomar [this message]
2025-10-31 10:56             ` [PATCH v3] " Jan Kara
2025-10-31 11:31               ` Alejandro Colomar
2025-10-31 17:10                 ` Pali Rohár
2025-10-31 15:25             ` Darrick J. Wong
2025-11-02 21:17               ` Alejandro Colomar
2025-11-03 11:28                 ` Jan Kara
2025-11-09 12:07                   ` Alejandro Colomar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bfa7e72ea17ed369a1cf7589675c35728bb53ae4.1761907223.git.alx@kernel.org \
    --to=alx@kernel.org \
    --cc=branden@debian.org \
    --cc=jack@suse.cz \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-man@vger.kernel.org \
    --cc=pali@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox