Unverified Commit 406331af authored by Christian Brauner's avatar Christian Brauner
Browse files

Merge patch series "Documentation: iomap: Add missing flags description"

Add missing flag descriptions to documentation.

* patches from https://lore.kernel.org/8d8534a704c4f162f347a84830710db32a927b2e.1744432270.git.ritesh.list@gmail.com:
  iomap: trace: Add missing flags to [IOMAP_|IOMAP_F_]FLAGS_STRINGS
  Documentation: iomap: Add missing flags description

Link: https://lore.kernel.org/8d8534a704c4f162f347a84830710db32a927b2e.1744432270.git.ritesh.list@gmail.com


Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parents 0af2f6be d1253c67
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -243,13 +243,25 @@ The fields are as follows:
     regular file data.
     This is only useful for FIEMAP.

   * **IOMAP_F_PRIVATE**: Starting with this value, the upper bits can
     be set by the filesystem for its own purposes.
   * **IOMAP_F_BOUNDARY**: This indicates I/O and its completion must not be
     merged with any other I/O or completion. Filesystems must use this when
     submitting I/O to devices that cannot handle I/O crossing certain LBAs
     (e.g. ZNS devices). This flag applies only to buffered I/O writeback; all
     other functions ignore it.

   * **IOMAP_F_PRIVATE**: This flag is reserved for filesystem private use.

   * **IOMAP_F_ANON_WRITE**: Indicates that (write) I/O does not have a target
     block assigned to it yet and the file system will do that in the bio
     submission handler, splitting the I/O as needed.

   * **IOMAP_F_ATOMIC_BIO**: This indicates write I/O must be submitted with the
     ``REQ_ATOMIC`` flag set in the bio. Filesystems need to set this flag to
     inform iomap that the write I/O operation requires torn-write protection
     based on HW-offload mechanism. They must also ensure that mapping updates
     upon the completion of the I/O must be performed in a single metadata
     update.

   These flags can be set by iomap itself during file operations.
   The filesystem should supply an ``->iomap_end`` function if it needs
   to observe these flags:
+21 −6
Original line number Diff line number Diff line
@@ -99,7 +99,11 @@ DEFINE_RANGE_EVENT(iomap_dio_rw_queued);
	{ IOMAP_FAULT,		"FAULT" }, \
	{ IOMAP_DIRECT,		"DIRECT" }, \
	{ IOMAP_NOWAIT,		"NOWAIT" }, \
	{ IOMAP_ATOMIC,		"ATOMIC" }
	{ IOMAP_OVERWRITE_ONLY,	"OVERWRITE_ONLY" }, \
	{ IOMAP_UNSHARE,	"UNSHARE" }, \
	{ IOMAP_DAX,		"DAX" }, \
	{ IOMAP_ATOMIC,		"ATOMIC" }, \
	{ IOMAP_DONTCACHE,	"DONTCACHE" }

#define IOMAP_F_FLAGS_STRINGS \
	{ IOMAP_F_NEW,		"NEW" }, \
@@ -107,7 +111,14 @@ DEFINE_RANGE_EVENT(iomap_dio_rw_queued);
	{ IOMAP_F_SHARED,	"SHARED" }, \
	{ IOMAP_F_MERGED,	"MERGED" }, \
	{ IOMAP_F_BUFFER_HEAD,	"BH" }, \
	{ IOMAP_F_SIZE_CHANGED,	"SIZE_CHANGED" }
	{ IOMAP_F_XATTR,	"XATTR" }, \
	{ IOMAP_F_BOUNDARY,	"BOUNDARY" }, \
	{ IOMAP_F_ANON_WRITE,	"ANON_WRITE" }, \
	{ IOMAP_F_ATOMIC_BIO,	"ATOMIC_BIO" }, \
	{ IOMAP_F_PRIVATE,	"PRIVATE" }, \
	{ IOMAP_F_SIZE_CHANGED,	"SIZE_CHANGED" }, \
	{ IOMAP_F_STALE,	"STALE" }


#define IOMAP_DIO_STRINGS \
	{IOMAP_DIO_FORCE_WAIT,	"DIO_FORCE_WAIT" }, \
@@ -138,7 +149,7 @@ DECLARE_EVENT_CLASS(iomap_class,
		__entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0;
	),
	TP_printk("dev %d:%d ino 0x%llx bdev %d:%d addr 0x%llx offset 0x%llx "
		  "length 0x%llx type %s flags %s",
		  "length 0x%llx type %s (0x%x) flags %s (0x%x)",
		  MAJOR(__entry->dev), MINOR(__entry->dev),
		  __entry->ino,
		  MAJOR(__entry->bdev), MINOR(__entry->bdev),
@@ -146,7 +157,9 @@ DECLARE_EVENT_CLASS(iomap_class,
		  __entry->offset,
		  __entry->length,
		  __print_symbolic(__entry->type, IOMAP_TYPE_STRINGS),
		  __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS))
		  __entry->type,
		  __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS),
		  __entry->flags)
)

#define DEFINE_IOMAP_EVENT(name)		\
@@ -185,7 +198,7 @@ TRACE_EVENT(iomap_writepage_map,
		__entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0;
	),
	TP_printk("dev %d:%d ino 0x%llx bdev %d:%d pos 0x%llx dirty len 0x%llx "
		  "addr 0x%llx offset 0x%llx length 0x%llx type %s flags %s",
		  "addr 0x%llx offset 0x%llx length 0x%llx type %s (0x%x) flags %s (0x%x)",
		  MAJOR(__entry->dev), MINOR(__entry->dev),
		  __entry->ino,
		  MAJOR(__entry->bdev), MINOR(__entry->bdev),
@@ -195,7 +208,9 @@ TRACE_EVENT(iomap_writepage_map,
		  __entry->offset,
		  __entry->length,
		  __print_symbolic(__entry->type, IOMAP_TYPE_STRINGS),
		  __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS))
		  __entry->type,
		  __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS),
		  __entry->flags)
);

TRACE_EVENT(iomap_iter,