Milos Nikic, le lun. 14 sept. 2026 10:28:21 -0700, a ecrit:
> Now, during testing, I tracked down the Deleted inode X has zero dtime fsck
> warnings on nodes like /dev/log and similar files. This is actually a
> pre-existing Hurd timing issue.

Yes, it's known :)

https://www.gnu.org/software/hurd/faq/fsck.html

> Mach delivers the final asynchronous port-death
> notifications after the system is put into read-only mode during shutdown, so
> the dtime update is abandoned in RAM. The journal doesn't cause this; it just
> faithfully records the power-cut state.
> 
> I added a manual pager teardown loop in ext2fs/pager.c (diskfs_shutdown_pager)
> that forces these unlinked nodes to drop synchronously. This gets us a
> pristine, clean fsck when a drive is cleanly unmounted as a translator.
> However, this workaround doesn't (and cannot) apply to the root filesystem
> (which bypasses this and uses startup_dosync), so the root system still
> observes the native dtime drop behavior.
> 
> The architecturally correct way to fix this OS-wide is to utilize the
> pre-existing s_last_orphan Ext3 mechanism that is already present on the ext2
> headers and fsck "speaks it". 
> If we implement the Orphan Inode List, fsck will silently clean up these late
> drops on boot and make the warnings go away completely. That is something i 
> can
> do next, if you agree.

Nice, yes, please :)

Samuel

Reply via email to