On Wed, Apr 14, 2021 at 10:33:37AM +0900, Naohiro Aota wrote: > --- a/configure.ac > +++ b/configure.ac > @@ -302,6 +302,7 @@ AC_CHECK_HEADERS([ \ > lastlog.h \ > libutil.h \ > linux/btrfs.h \ > + linux/blkzoned.h \ unnecessary, there is already AC_CHECK_HEADERS([linux/blkzoned.h]) on another place. > linux/capability.h \ > linux/cdrom.h \ > linux/falloc.h \ > diff --git a/libblkid/src/blkidP.h b/libblkid/src/blkidP.h > index a3fe6748a969..e3a160aa97c0 100644 > --- a/libblkid/src/blkidP.h > +++ b/libblkid/src/blkidP.h > @@ -150,6 +150,10 @@ struct blkid_idmag > const char *hoff; /* hint which contains byte offset to kboff */ > long kboff; /* kilobyte offset of superblock */ > unsigned int sboff; /* byte offset within superblock */ > + > + int is_zoned; /* indicate magic location is calcluated based on zone position */ > + long zonenum; /* zone number which has superblock */ > + long kboff_inzone; /* kilobyte offset of superblock in a zone */ It would be better to use 'flags' struct field and #define BLKID_FL_ZONED_DEV (1 << 6) like we use for another stuff. > diff --git a/libblkid/src/probe.c b/libblkid/src/probe.c > index a47a8720d4ac..9d180aab5242 100644 > --- a/libblkid/src/probe.c > +++ b/libblkid/src/probe.c > @@ -94,6 +94,9 @@ > #ifdef HAVE_LINUX_CDROM_H > #include <linux/cdrom.h> > #endif > +#ifdef HAVE_LINUX_BLKZONED_H > +#include <linux/blkzoned.h> > +#endif > #ifdef HAVE_SYS_STAT_H > #include <sys/stat.h> > #endif > @@ -897,6 +900,7 @@ int blkid_probe_set_device(blkid_probe pr, int fd, > pr->wipe_off = 0; > pr->wipe_size = 0; > pr->wipe_chain = NULL; > + pr->zone_size = 0; you also need to update blkid_clone_probe() function Karel -- Karel Zak <kzak@xxxxxxxxxx> http://karelzak.blogspot.com