linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] write.2: Partial direct I/O writes
@ 2018-05-21 11:32 Goldwyn Rodrigues
  2018-05-28  9:36 ` Michael Kerrisk (man-opages)
  0 siblings, 1 reply; 2+ messages in thread
From: Goldwyn Rodrigues @ 2018-05-21 11:32 UTC (permalink / raw)
  To: linux-man; +Cc: linux-fsdevel, Goldwyn Rodrigues

Direct writes can perform partial writes because large writes
can be broken into smaller chunks by the block layer. Part of
the I/O submitted can fail and the failure is returned to write
as an error in the return value. However, part of the write can
be successful which means that data at the offset is inconsistent.

Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>

diff --git a/man2/write.2 b/man2/write.2
index f8a94f3ff..d6e14aaf0 100644
--- a/man2/write.2
+++ b/man2/write.2
@@ -274,6 +274,14 @@ On Linux,
 returning the number of bytes actually transferred.
 .\" commit e28cc71572da38a5a12c1cfe4d7032017adccf69
 (This is true on both 32-bit and 64-bit systems.)
+.PP
+An error return value while performing
+.BR write()
+using direct I/O does not mean the
+entire write has failed. Partial data may be written
+and the data at the file offset on which the
+.BR write()
+was attempted should be considered inconsistent.
 .SH BUGS
 According to POSIX.1-2008/SUSv4 Section XSI 2.9.7
 ("Thread Interactions with Regular File Operations"):

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

* Re: [PATCH] write.2: Partial direct I/O writes
  2018-05-21 11:32 [PATCH] write.2: Partial direct I/O writes Goldwyn Rodrigues
@ 2018-05-28  9:36 ` Michael Kerrisk (man-opages)
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Kerrisk (man-opages) @ 2018-05-28  9:36 UTC (permalink / raw)
  To: Goldwyn Rodrigues, linux-man
  Cc: mtk.manpages, linux-fsdevel, Goldwyn Rodrigues

Hello Goldwyn,

On 05/21/2018 01:32 PM, Goldwyn Rodrigues wrote:
> Direct writes can perform partial writes because large writes
> can be broken into smaller chunks by the block layer. Part of
> the I/O submitted can fail and the failure is returned to write
> as an error in the return value. However, part of the write can
> be successful which means that data at the offset is inconsistent.
> 
> Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>

Thanks. Applied.

Cheers,

Michael

> diff --git a/man2/write.2 b/man2/write.2
> index f8a94f3ff..d6e14aaf0 100644
> --- a/man2/write.2
> +++ b/man2/write.2
> @@ -274,6 +274,14 @@ On Linux,
>   returning the number of bytes actually transferred.
>   .\" commit e28cc71572da38a5a12c1cfe4d7032017adccf69
>   (This is true on both 32-bit and 64-bit systems.)
> +.PP
> +An error return value while performing
> +.BR write()
> +using direct I/O does not mean the
> +entire write has failed. Partial data may be written
> +and the data at the file offset on which the
> +.BR write()
> +was attempted should be considered inconsistent.
>   .SH BUGS
>   According to POSIX.1-2008/SUSv4 Section XSI 2.9.7
>   ("Thread Interactions with Regular File Operations"):
> --
> To unsubscribe from this list: send the line "unsubscribe linux-man" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

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

end of thread, other threads:[~2018-05-28  9:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-21 11:32 [PATCH] write.2: Partial direct I/O writes Goldwyn Rodrigues
2018-05-28  9:36 ` Michael Kerrisk (man-opages)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).