All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] xfstests: disable generic/003 for HFS file system
@ 2026-05-14 20:00 Viacheslav Dubeyko
  2026-05-17  9:38 ` Zorro Lang
  0 siblings, 1 reply; 4+ messages in thread
From: Viacheslav Dubeyko @ 2026-05-14 20:00 UTC (permalink / raw)
  To: zlang, fstests
  Cc: glaubitz, Slava.Dubeyko, linux-fsdevel, frank.li,
	Viacheslav Dubeyko

HFS hasn't any field in on-disk layout that can keep
the file/folder access times (atime):

/* The catalog record for a file */
struct hfs_cat_file {
        s8 type;                        /* The type of entry */
        u8 reserved;
        u8 Flags;                       /* Flags such as read-only */
        s8 Typ;                         /* file version number = 0 */
        struct hfs_finfo UsrWds;        /* data used by the Finder */
        __be32 FlNum;                   /* The CNID */
        __be16 StBlk;                   /* obsolete */
        __be32 LgLen;                   /* The logical EOF of the data fork*/
        __be32 PyLen;                   /* The physical EOF of the data fork */
        __be16 RStBlk;                  /* obsolete */
        __be32 RLgLen;                  /* The logical EOF of the rsrc fork */
        __be32 RPyLen;                  /* The physical EOF of the rsrc fork */
        __be32 CrDat;                   /* The creation date */
        __be32 MdDat;                   /* The modified date */
        __be32 BkDat;                   /* The last backup date */
        struct hfs_fxinfo FndrInfo;     /* more data for the Finder */
        __be16 ClpSize;                 /* number of bytes to allocate
                                           when extending files */
        hfs_extent_rec ExtRec;          /* first extent record
                                           for the data fork */
        hfs_extent_rec RExtRec;         /* first extent record
                                           for the resource fork */
        u32 Resrv;                      /* reserved by Apple */
} __packed;

This patch disable the generic/003 test-case for
HFS file system.

Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
cc: Yangtao Li <frank.li@vivo.com>
cc: linux-fsdevel@vger.kernel.org
cc: fstests@vger.kernel.org
---
 common/rc | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/common/rc b/common/rc
index 5fe44e21..b897ef0b 100644
--- a/common/rc
+++ b/common/rc
@@ -4559,6 +4559,9 @@ _require_atime()
 	ceph|ceph-fuse)
 		_notrun "atime not maintained by $FSTYP"
 		;;
+	hfs)
+		_notrun "atime not maintained by $FSTYP"
+		;;
 	esac
 
 }
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] xfstests: disable generic/003 for HFS file system
  2026-05-14 20:00 [PATCH] xfstests: disable generic/003 for HFS file system Viacheslav Dubeyko
@ 2026-05-17  9:38 ` Zorro Lang
  2026-05-18 18:27   ` Viacheslav Dubeyko
  0 siblings, 1 reply; 4+ messages in thread
From: Zorro Lang @ 2026-05-17  9:38 UTC (permalink / raw)
  To: Viacheslav Dubeyko
  Cc: zlang, fstests, glaubitz, Slava.Dubeyko, linux-fsdevel, frank.li

On Thu, May 14, 2026 at 01:00:05PM -0700, Viacheslav Dubeyko wrote:
> HFS hasn't any field in on-disk layout that can keep
> the file/folder access times (atime):
> 
> /* The catalog record for a file */
> struct hfs_cat_file {
>         s8 type;                        /* The type of entry */
>         u8 reserved;
>         u8 Flags;                       /* Flags such as read-only */
>         s8 Typ;                         /* file version number = 0 */
>         struct hfs_finfo UsrWds;        /* data used by the Finder */
>         __be32 FlNum;                   /* The CNID */
>         __be16 StBlk;                   /* obsolete */
>         __be32 LgLen;                   /* The logical EOF of the data fork*/
>         __be32 PyLen;                   /* The physical EOF of the data fork */
>         __be16 RStBlk;                  /* obsolete */
>         __be32 RLgLen;                  /* The logical EOF of the rsrc fork */
>         __be32 RPyLen;                  /* The physical EOF of the rsrc fork */
>         __be32 CrDat;                   /* The creation date */
>         __be32 MdDat;                   /* The modified date */
>         __be32 BkDat;                   /* The last backup date */
>         struct hfs_fxinfo FndrInfo;     /* more data for the Finder */
>         __be16 ClpSize;                 /* number of bytes to allocate
>                                            when extending files */
>         hfs_extent_rec ExtRec;          /* first extent record
>                                            for the data fork */
>         hfs_extent_rec RExtRec;         /* first extent record
>                                            for the resource fork */
>         u32 Resrv;                      /* reserved by Apple */
> } __packed;
> 
> This patch disable the generic/003 test-case for
> HFS file system.
> 
> Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
> cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
> cc: Yangtao Li <frank.li@vivo.com>
> cc: linux-fsdevel@vger.kernel.org
> cc: fstests@vger.kernel.org
> ---
>  common/rc | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/common/rc b/common/rc
> index 5fe44e21..b897ef0b 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -4559,6 +4559,9 @@ _require_atime()
>  	ceph|ceph-fuse)
>  		_notrun "atime not maintained by $FSTYP"
>  		;;
> +	hfs)
> +		_notrun "atime not maintained by $FSTYP"

Good to me, thanks! But how about grouping "hfs" together with "ceph|ceph-fuse",
since you want them to share the same _notrun output message. I can help to
change that when I merge it if you agree. Or you can send v2 with my:

Reviewed-by: Zorro Lang <zlang@kernel.org>

Currently we have two kinds of *output* in _require_atime:

        nfs|afs|cifs|virtiofs)
                _notrun "atime related mount options have no effect on $FSTYP"
                ;;
        ceph|ceph-fuse)
                _notrun "atime not maintained by $FSTYP"
                ;;

But the boundary between them seems a bit fuzzy. If the struct supports
atime-related fields, but the mount options don't work or are highly
discouraged, it should fall into the first category (like NFS and CIFS).
If the struct itself doesn't have atime, it should be the second category
(like Ceph and HFS).

But looking at it this way, AFS's struct afs_file_status doesn't seem to
have anything related to atime either. Haha, it's getting a bit messy here.

Thanks,
Zorro

> +		;;
>  	esac
>  
>  }
> -- 
> 2.43.0
> 
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] xfstests: disable generic/003 for HFS file system
  2026-05-17  9:38 ` Zorro Lang
@ 2026-05-18 18:27   ` Viacheslav Dubeyko
  2026-05-20 10:36     ` Zorro Lang
  0 siblings, 1 reply; 4+ messages in thread
From: Viacheslav Dubeyko @ 2026-05-18 18:27 UTC (permalink / raw)
  To: fstests@vger.kernel.org, glaubitz@physik.fu-berlin.de,
	frank.li@vivo.com, slava@dubeyko.com, Zirong Lang,
	linux-fsdevel@vger.kernel.org

On Sun, 2026-05-17 at 17:38 +0800, Zorro Lang wrote:
> On Thu, May 14, 2026 at 01:00:05PM -0700, Viacheslav Dubeyko wrote:
> > HFS hasn't any field in on-disk layout that can keep
> > the file/folder access times (atime):
> > 
> > /* The catalog record for a file */
> > struct hfs_cat_file {
> >         s8 type;                        /* The type of entry */
> >         u8 reserved;
> >         u8 Flags;                       /* Flags such as read-only */
> >         s8 Typ;                         /* file version number = 0 */
> >         struct hfs_finfo UsrWds;        /* data used by the Finder */
> >         __be32 FlNum;                   /* The CNID */
> >         __be16 StBlk;                   /* obsolete */
> >         __be32 LgLen;                   /* The logical EOF of the data fork*/
> >         __be32 PyLen;                   /* The physical EOF of the data fork */
> >         __be16 RStBlk;                  /* obsolete */
> >         __be32 RLgLen;                  /* The logical EOF of the rsrc fork */
> >         __be32 RPyLen;                  /* The physical EOF of the rsrc fork */
> >         __be32 CrDat;                   /* The creation date */
> >         __be32 MdDat;                   /* The modified date */
> >         __be32 BkDat;                   /* The last backup date */
> >         struct hfs_fxinfo FndrInfo;     /* more data for the Finder */
> >         __be16 ClpSize;                 /* number of bytes to allocate
> >                                            when extending files */
> >         hfs_extent_rec ExtRec;          /* first extent record
> >                                            for the data fork */
> >         hfs_extent_rec RExtRec;         /* first extent record
> >                                            for the resource fork */
> >         u32 Resrv;                      /* reserved by Apple */
> > } __packed;
> > 
> > This patch disable the generic/003 test-case for
> > HFS file system.
> > 
> > Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
> > cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
> > cc: Yangtao Li <frank.li@vivo.com>
> > cc: linux-fsdevel@vger.kernel.org
> > cc: fstests@vger.kernel.org
> > ---
> >  common/rc | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/common/rc b/common/rc
> > index 5fe44e21..b897ef0b 100644
> > --- a/common/rc
> > +++ b/common/rc
> > @@ -4559,6 +4559,9 @@ _require_atime()
> >  	ceph|ceph-fuse)
> >  		_notrun "atime not maintained by $FSTYP"
> >  		;;
> > +	hfs)
> > +		_notrun "atime not maintained by $FSTYP"
> 
> Good to me, thanks! But how about grouping "hfs" together with "ceph|ceph-fuse",
> since you want them to share the same _notrun output message. I can help to
> change that when I merge it if you agree. Or you can send v2 with my:
> 
> Reviewed-by: Zorro Lang <zlang@kernel.org>
> 
> Currently we have two kinds of *output* in _require_atime:
> 
>         nfs|afs|cifs|virtiofs)
>                 _notrun "atime related mount options have no effect on $FSTYP"
>                 ;;
>         ceph|ceph-fuse)
>                 _notrun "atime not maintained by $FSTYP"
>                 ;;
> 
> But the boundary between them seems a bit fuzzy. If the struct supports
> atime-related fields, but the mount options don't work or are highly
> discouraged, it should fall into the first category (like NFS and CIFS).
> If the struct itself doesn't have atime, it should be the second category
> (like Ceph and HFS).
> 
> But looking at it this way, AFS's struct afs_file_status doesn't seem to
> have anything related to atime either. Haha, it's getting a bit messy here.
> 

I completely trust to your way of changing the patch. But if you need a reworked
version of the patch, then I am ready to rework it. But, I slightly lost the
point which modification should be done, finally. :)

Thanks,
Slava.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] xfstests: disable generic/003 for HFS file system
  2026-05-18 18:27   ` Viacheslav Dubeyko
@ 2026-05-20 10:36     ` Zorro Lang
  0 siblings, 0 replies; 4+ messages in thread
From: Zorro Lang @ 2026-05-20 10:36 UTC (permalink / raw)
  To: Viacheslav Dubeyko
  Cc: fstests@vger.kernel.org, glaubitz@physik.fu-berlin.de,
	frank.li@vivo.com, slava@dubeyko.com, Zirong Lang,
	linux-fsdevel@vger.kernel.org

On Mon, May 18, 2026 at 06:27:52PM +0000, Viacheslav Dubeyko wrote:
> On Sun, 2026-05-17 at 17:38 +0800, Zorro Lang wrote:
> > On Thu, May 14, 2026 at 01:00:05PM -0700, Viacheslav Dubeyko wrote:
> > > HFS hasn't any field in on-disk layout that can keep
> > > the file/folder access times (atime):
> > > 
> > > /* The catalog record for a file */
> > > struct hfs_cat_file {
> > >         s8 type;                        /* The type of entry */
> > >         u8 reserved;
> > >         u8 Flags;                       /* Flags such as read-only */
> > >         s8 Typ;                         /* file version number = 0 */
> > >         struct hfs_finfo UsrWds;        /* data used by the Finder */
> > >         __be32 FlNum;                   /* The CNID */
> > >         __be16 StBlk;                   /* obsolete */
> > >         __be32 LgLen;                   /* The logical EOF of the data fork*/
> > >         __be32 PyLen;                   /* The physical EOF of the data fork */
> > >         __be16 RStBlk;                  /* obsolete */
> > >         __be32 RLgLen;                  /* The logical EOF of the rsrc fork */
> > >         __be32 RPyLen;                  /* The physical EOF of the rsrc fork */
> > >         __be32 CrDat;                   /* The creation date */
> > >         __be32 MdDat;                   /* The modified date */
> > >         __be32 BkDat;                   /* The last backup date */
> > >         struct hfs_fxinfo FndrInfo;     /* more data for the Finder */
> > >         __be16 ClpSize;                 /* number of bytes to allocate
> > >                                            when extending files */
> > >         hfs_extent_rec ExtRec;          /* first extent record
> > >                                            for the data fork */
> > >         hfs_extent_rec RExtRec;         /* first extent record
> > >                                            for the resource fork */
> > >         u32 Resrv;                      /* reserved by Apple */
> > > } __packed;
> > > 
> > > This patch disable the generic/003 test-case for
> > > HFS file system.
> > > 
> > > Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
> > > cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
> > > cc: Yangtao Li <frank.li@vivo.com>
> > > cc: linux-fsdevel@vger.kernel.org
> > > cc: fstests@vger.kernel.org
> > > ---
> > >  common/rc | 3 +++
> > >  1 file changed, 3 insertions(+)
> > > 
> > > diff --git a/common/rc b/common/rc
> > > index 5fe44e21..b897ef0b 100644
> > > --- a/common/rc
> > > +++ b/common/rc
> > > @@ -4559,6 +4559,9 @@ _require_atime()
> > >  	ceph|ceph-fuse)
> > >  		_notrun "atime not maintained by $FSTYP"
> > >  		;;
> > > +	hfs)
> > > +		_notrun "atime not maintained by $FSTYP"
> > 
> > Good to me, thanks! But how about grouping "hfs" together with "ceph|ceph-fuse",
> > since you want them to share the same _notrun output message. I can help to
> > change that when I merge it if you agree. Or you can send v2 with my:
> > 
> > Reviewed-by: Zorro Lang <zlang@kernel.org>
> > 
> > Currently we have two kinds of *output* in _require_atime:
> > 
> >         nfs|afs|cifs|virtiofs)
> >                 _notrun "atime related mount options have no effect on $FSTYP"
> >                 ;;
> >         ceph|ceph-fuse)
> >                 _notrun "atime not maintained by $FSTYP"
> >                 ;;
> > 
> > But the boundary between them seems a bit fuzzy. If the struct supports
> > atime-related fields, but the mount options don't work or are highly
> > discouraged, it should fall into the first category (like NFS and CIFS).
> > If the struct itself doesn't have atime, it should be the second category
> > (like Ceph and HFS).
> > 
> > But looking at it this way, AFS's struct afs_file_status doesn't seem to
> > have anything related to atime either. Haha, it's getting a bit messy here.
> > 
> 
> I completely trust to your way of changing the patch. But if you need a reworked
> version of the patch, then I am ready to rework it. But, I slightly lost the
> point which modification should be done, finally. :)

No worries at all, I might have caused some confusion. I have already Acked this
patch. For this patch itself, you don’t need to rework anything, I will handle a
minor clean-up during merge, to group hfs and ceph|ceph-fuse together :-D

As for my question about AFS, I was just curious and wanted to have a quick side
discussion; it has nothing to do with this patch and we can discuss it separately.

Thanks for your patch!

> 
> Thanks,
> Slava.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-05-20 10:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-14 20:00 [PATCH] xfstests: disable generic/003 for HFS file system Viacheslav Dubeyko
2026-05-17  9:38 ` Zorro Lang
2026-05-18 18:27   ` Viacheslav Dubeyko
2026-05-20 10:36     ` Zorro Lang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.