From nobody Wed Dec 17 08:13:14 2025 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 209421B270; Wed, 24 Jan 2024 11:28:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706095740; cv=fail; b=GyvexYmdrsGHZsiuA4qpVlmihVscqydf5bJ7xS75xgTE1Ah3h4X1gOz78H9h4qFuK9/Us7aUxouQYpweODcFP3All6qD7mS0daVoyRcy2ViH/svZp8DrK7m06SBXDz/3IN/vabyDlVHNUYRJbUglLYsm85JBfLeLSKtW8/evVc4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706095740; c=relaxed/simple; bh=dD+EpPWqh9p2PsYJw7Kx6BfTVXzRE0omUncQuGGoDOc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=dW0THAreLJPjaCFNvMYDCMSc/kYgXOPayKddXyrG6flBG7QZevXnQ8d52QKOQ+5ok5/IqsMGMSLDPoqZqkQ9RXyydejK9Cqt0UQxJ4d/CkN44foc0fc4/1ZHeVMDveCkCNfOkhagvo6cw93ptY7h32CkhVVpuNjvLBvkqJB+QaQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=jWv6RhMX; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=wThLawxq; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="jWv6RhMX"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="wThLawxq" Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 40OAxPel030722; Wed, 24 Jan 2024 11:28:49 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=wZWH3TGR3zGHi6IpHY+/DJBwXgrXZgANjuffCQZOFaU=; b=jWv6RhMXJHUTnrZbxR8AsKtR+Yv9tHW9btyK3STfdyTWNdzYZKhBIMcRcOOZsUgavCvZ i9rlO9UUWhD7wwTXy6q+Fs9PnCGJtXc76riacCDETRQoVfcZ/GwjiCW0FjMY1IaWr4WJ JEXDRTDVdbixBhUJikNLLmaDK8JfoiGqN1l4Zxxqb+zXOMs2LFwYTaCCHf2WX9xcJuZJ AgwamfjWiN1Sbr3e1C0h1hde9kfLGD/zRU4CGCLXReF+xrdY51ZJwcuLpTYkbDFTNy8j UP1TxykKriZBjd5vi/I5rTfpT61T/OJqJd7Wzf+38QuW5sTeGJSBf5DWdkfY+KwNHaIV oQ== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3vr7cusvu6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 24 Jan 2024 11:28:49 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 40OATCL8014262; Wed, 24 Jan 2024 11:28:48 GMT Received: from nam04-bn8-obe.outbound.protection.outlook.com (mail-bn8nam04lp2040.outbound.protection.outlook.com [104.47.74.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3vs372vwtw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 24 Jan 2024 11:28:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nddkqYzDjkblwYEefcpk+CdQIsEqtmpRTKk+IrWVQWuwV+X+kQBc4S9m7B+HGSA2Pao5PFFNatXh1IHVJ4lbcX1KfNAADijpElfrczgeq7SvyafxzJwP23IOLvRm3aOPynehQOmsGfmWU5Hj5ptbfuQEkt8ucvUJOrS232JPn00xhGfMjT+bpQdCiFTrvAbioWXO8jIcD6KOus1ooXyWyWUMRKLszDXFoKV//vs+cti1E17AZbX7LN+YY+fKmchHPsm0rCngChUeeTrv90sFcKaFBXH+SsH5AT8zJzyqEc+Cqvrzik8bwJ754aVBW2Mq08Dz0x/lNh3yPO/Pzu4/rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wZWH3TGR3zGHi6IpHY+/DJBwXgrXZgANjuffCQZOFaU=; b=lTK3zepJuo/kGy2iyIFDKZJRyUPl31YShWwuBoVMx4Pyw4AJQl/rO0ic7LqmvjRTPJEKadbYAkZRCOKLg5cZkud9dtHwcqniJXTI5LTH6hdpJUzf1L+B9YFZGIEbYVBb+cG/loHSvx80jvXhBVDPJk42uxaKcZ3sO+LntslrbpnThq5PBZrNMH0NHYHMMtCJiYAHUzt2mI3d8wsYgKxzYGzvRE5Ye4CQ2xk8GC3vIMWEJSxour8iaZqeLtP1HDB9bnjkYiC9lZYJQst1Nnw3HsOvvP7YqbzF1+lbXWVq0vMn8zLwUsF9kiIStaonP8wq4YWAYkJa6iltYwHDdl34kw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wZWH3TGR3zGHi6IpHY+/DJBwXgrXZgANjuffCQZOFaU=; b=wThLawxq4B7P+aEcFqUKUQpSRLDVC6ir3AxNUVIaGOZGca5TFD5TF/3Yj4LeSygC7pn4xA7D5sqiPdvKxsPR7v9QNKC3b/HlrunqORmFNP9rqU4TEvVryXzz+ziGnlLPTrCrA9MbCfhdTlwt79kdMLzVoD57qBVUjhNcLdJeYyM= Received: from DM6PR10MB4313.namprd10.prod.outlook.com (2603:10b6:5:212::20) by SJ0PR10MB5615.namprd10.prod.outlook.com (2603:10b6:a03:3d8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.22; Wed, 24 Jan 2024 11:28:12 +0000 Received: from DM6PR10MB4313.namprd10.prod.outlook.com ([fe80::f11:7303:66e7:286c]) by DM6PR10MB4313.namprd10.prod.outlook.com ([fe80::f11:7303:66e7:286c%5]) with mapi id 15.20.7228.022; Wed, 24 Jan 2024 11:28:12 +0000 From: John Garry To: linux-kernel@vger.kernel.org, linux-api@vger.kernel.org Cc: martin.petersen@oracle.com, djwong@kernel.org, david@fromorbit.com, himanshu.madhani@oracle.com, hch@lst.de, viro@zeniv.linux.org.uk, brauner@kernel.org, jack@suse.cz, John Garry Subject: [PATCH v2 1/3] statx.2: Document STATX_WRITE_ATOMIC Date: Wed, 24 Jan 2024 11:27:29 +0000 Message-Id: <20240124112731.28579-2-john.g.garry@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240124112731.28579-1-john.g.garry@oracle.com> References: <20240124112731.28579-1-john.g.garry@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P265CA0164.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:312::13) To DM6PR10MB4313.namprd10.prod.outlook.com (2603:10b6:5:212::20) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR10MB4313:EE_|SJ0PR10MB5615:EE_ X-MS-Office365-Filtering-Correlation-Id: beb27113-eadf-4767-454c-08dc1ccf8cab X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dEC5kHygWOly26MXDG/HS+Oc91111NawLtmBKai41ahQpOA0EZ/Suw2r9FAOMdKtNItxtLIJY/h4wvzK3FVG6Wbt41wBXr8hC6dwVjt3p2d2xyuvqv5Gom+MhPQcsOp+a8AwSsV+0unxhL/CPmX5mYHxdNs2eScia6hJYAnMHa1RpMMbPAjsTeH9AgkIqdLI5xo1Aipihin/ajElqtVKiKXTVKFC89cPuwfoWy7ZH9xihaEJb0VcJuxvg6DQvfMO8oEn3busSi4cyyL9GSvpI28x+liqPSnWPrMzk6735eLfRwaagRx/DbLNn8eJ54PlywCvZH1SS2ygJ2GqbcpI5b8Zj0pLtZF/aKjS5UhqMkkaTSj3Mxy7TxBdmX91UPnahLEvG+dWmClESOwCz2Z1kVU/M2z77pT6PfgYgm940MLHV8OgbriweR8PsjmjPPDv+XaqoikKYtryeCkEgjctt/m65JAAilvqbHXJguBnIYhO/l6A5DpiQzSysQL/36yA4sAZuQ30a1ESwgkc1DFqgzshnEyUyCwpWbMqn6akczMDyLTNHINpWp6jz/N1TTp+ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR10MB4313.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(376002)(346002)(136003)(230922051799003)(1800799012)(64100799003)(451199024)(186009)(6506007)(26005)(83380400001)(2616005)(107886003)(1076003)(6512007)(41300700001)(36756003)(8936002)(8676002)(66476007)(4326008)(316002)(103116003)(2906002)(5660300002)(66556008)(66946007)(86362001)(6666004)(6486002)(478600001)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?fqxrhAyCooPJKmxNcBmh/4pTkfJNo6VweYIjs09v/t2ZqLSSMKuy3G19P2Eo?= =?us-ascii?Q?4w7gkFvl0C9oI3222gxQIk1mpUIwhKKT43npsy+Ts8ZgYCCJjnDqzkIxLkZL?= =?us-ascii?Q?EKHi7iyb3Ky6vDjdAI68Hs7+2H1qTDMlduBLokYXrW62rlUG09vwKTTMPSUJ?= =?us-ascii?Q?hEA6x4fVOvIerhiZEMfDiloWl21wfWpTzfwECKPfVm6pi+v3yn5QggLc/vn/?= =?us-ascii?Q?mxNyYH1w8PqpJMpqDi8sRiGUqLNh5sakvL378/Tw9zNNLnu8Q0TzTUmMDgkQ?= =?us-ascii?Q?vM09vsE3jr5yaE9TNyDKfjoSmPPYvM570BndVGU49YnQrG/XxVOFo1yI3tei?= =?us-ascii?Q?iS22ubVcmo4oY65n8y2sP9g2HinXD2h5Lj9Og4h8TFq055r1gMtHgaUwzJ3y?= =?us-ascii?Q?EheMBUZ6CthwnBgAhMsHnZXoaoNkYUaSuC/GzFfdOG/MoyLVR8J+bnEu32KH?= =?us-ascii?Q?m5WlmBvaqM4fsFfOIOsZUW5a+9j21iGRbSlUvuy+RoE9nhzNlO6m+97uQ69U?= =?us-ascii?Q?c3CVYjOx+Kp7pFaKPxROgCLadGAVmOgFy2ZlwhymnhCYBiYGme7+kTl1kQpK?= =?us-ascii?Q?Vgnc8o+ZVYHK7aKyihtrhn/NZoAHVtWAisS9ToDOY7BkMdDLlSRaHh/vHexr?= =?us-ascii?Q?Zbx6c+VY0XUpNvhQU4ArAn+fC1e66KWZzJCgcNs2pc45qAQwIiuWSS1KCS8E?= =?us-ascii?Q?pEeRX3sOccYPREKsZbn9AuCXonVTqIj0y3/RtarW2zb+J1ASfbs7710sxtWj?= =?us-ascii?Q?X2lvg4/EuvaZJTlDP21JVix0vqf0dYwF4DzYXShxoLEtNuAChYcsdYz4VPDh?= =?us-ascii?Q?muIreO9A1g5kyIMyQiVq5gQkUAOCIza+hCAl/snJfb26s5jAi3aLXWmD0wyH?= =?us-ascii?Q?6AbCVsWFmUwzpod3jXztlgZB2Kq1qstlk1TrfiP/Ku/oW2sykzE3tGBCqr6Y?= =?us-ascii?Q?1UMtposzfv4GFedqGsRKw69C6AAoWyc25sHueHneiVs4lb1TfbU3gdIPiEme?= =?us-ascii?Q?rCKIMZwTLfJGL6wo/3KqaO/kLC1nCoNbRCfNAevdtLFyVoHm03+LMZNHaDqp?= =?us-ascii?Q?6XqUv0GCQ9u82byB0D3DY81xGlKBxZiWmAgpkQCOkA9HlYW0nHKl+Mq2uLlW?= =?us-ascii?Q?Cr6w0z0mdz8b9HEolmmmdcQG/v00sgrgfJTGPPtyrBj5NjPFIssW5BuDwOfa?= =?us-ascii?Q?F8vXvh1/YhVtsz1M9MhuLjOcKPIpARCX0BDrVD4xRuP4hY8VPAiCRbv0gyiS?= =?us-ascii?Q?23oyaXPPKEwYY+4xUu+kFVIzlC0/I2Sbf0NvKqR5PKCg619BrRXRWb8P7cXr?= =?us-ascii?Q?5mOUrWhyJFynJ3lihTVE6nGj0mr+ZzheyA5QnkNWq+cHTBO7vJU7ypaR6Cqe?= =?us-ascii?Q?cmJpoiU2C4kww3jxyU2GxfleEtl9UHQGUAZfnAydVXtF3thwmE9mAt9rGH3U?= =?us-ascii?Q?yeY9hDSaWP/zfoDp8EtG1GkDQnVLPQDpEJ6aDmq+rojT/IIIyKK4KF/5b3wO?= =?us-ascii?Q?ETQnUE0UKloZy3HTDE3ihjzRC1nr10oiUkkiIsviJkHdUst322+fxk4nCWqy?= =?us-ascii?Q?ZQt3jm0f/OD6LhSvLP9itFQ55TMIZF/EnzT18a5MwK32APNuzlg9cptnHwM4?= =?us-ascii?Q?RQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: qT/LeqFTIFLPSUl4w2j2B7lCigaHLWS56ff1b/NAju0byOaZXrHrpEJJ6iknKaNrlxy8toHc46/BwCl3SwfGOn8N2xBkSAICyC5RBzlJoTZsuHWlrkSFno8GeN3uMKSfuO4HVoLccSN+whDn3BfW4yp52XcZwyeFDNH67e/Qm2oWBl6exR2MfrzKJVUssDqUibH74x4Qh0a22x5u4RvrCn+u3/bFYlQKr1eeceCJl3o54iFyMDzkq0UnOW/HWK4fi/XraByEtNTUFB22JqlyDjHzpnnAdXxQIFhX6j69qpJE2e74zQwlqHUh7hiu8pT1cwHaMNJJR//Ud/UoFeK/dr0y5CynKBQ9htNMrt20FHXG8aiesyCrr4D5+JXulj5VeeiVL+IWS82lAaDRjiPjMQ/aOHRmZZuZY//bM9RkepQ+r8PCu3Sx+42bhNI6C6GnTqB/XL8+5Rw6YUphMX7zn99qxjj9Ad9ftX2z13s3w7aNeYxSTuVEAcr7rXA3BhZJ7g8ylWTmka/UjW1dxNOWuPyT5JqJmF16v78FWEPrlyBShqX/Yz+tBh15JquNB2Yts2oa5Bx6kVr1l2i6A7dgsKB0uCyKmF33ekRCRfY9IUI= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: beb27113-eadf-4767-454c-08dc1ccf8cab X-MS-Exchange-CrossTenant-AuthSource: DM6PR10MB4313.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jan 2024 11:28:12.5532 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: huI9s40ng3K/wy6GPfZ4P+COADnkf8QYZsb5K/g1odRBMWk0wXww6pDnwyfp2Fv3qphb5CI8GAJjyAStx6NWOQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5615 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-01-24_06,2024-01-24_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 mlxlogscore=999 malwarescore=0 mlxscore=0 phishscore=0 bulkscore=0 suspectscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2401240082 X-Proofpoint-ORIG-GUID: 4RYDV04I0S0fWdS8222O2u6CWcTyNAOg X-Proofpoint-GUID: 4RYDV04I0S0fWdS8222O2u6CWcTyNAOg Content-Type: text/plain; charset="utf-8" From: Himanshu Madhani Add the text to the statx man page. Signed-off-by: Himanshu Madhani Signed-off-by: John Garry --- man2/statx.2 | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/man2/statx.2 b/man2/statx.2 index 0dcf7e20b..aa056ecdf 100644 --- a/man2/statx.2 +++ b/man2/statx.2 @@ -68,6 +68,10 @@ struct statx { /* Direct I/O alignment restrictions */ __u32 stx_dio_mem_align; __u32 stx_dio_offset_align; +\& + __u32 stx_atomic_write_unit_min; + __u32 stx_atomic_write_unit_max; + __u32 stx_atomic_write_segments_max; }; .EE .in @@ -255,6 +259,9 @@ STATX_ALL The same as STATX_BASIC_STATS | STATX_BTIME. STATX_MNT_ID Want stx_mnt_id (since Linux 5.8) STATX_DIOALIGN Want stx_dio_mem_align and stx_dio_offset_align (since Linux 6.1; support varies by filesystem) +STATX_WRITE_ATOMIC Want stx_atomic_write_unit_min, stx_atomic_write_unit_m= ax, + and stx_atomic_write_segments_max. + (since Linux 6.9; support varies by filesystem) .TE .in .P @@ -439,6 +446,25 @@ or 0 if direct I/O is not supported on this file. This will only be nonzero if .I stx_dio_mem_align is nonzero, and vice versa. +.TP +.I stx_atomic_write_unit_min +The minimum size (in bytes) supported for direct I/O +.RB ( O_DIRECT ) +on the file to be written with torn-write protection. This value is guaran= teed +to be a power-of-2. +.TP +.I stx_atomic_write_unit_max +The maximum size (in bytes) supported for direct I/O +.RB ( O_DIRECT ) +on the file to be written with torn-write protection. This value is guaran= teed +to be a power-of-2. +.TP +.I stx_atomic_write_segments_max +The maximum number of elements in an array of vectors for a write with +torn-write protection enabled. See +.BR RWF_ATOMIC +flag for +.BR pwritev2 (2). .P For further information on the above fields, see .BR inode (7). @@ -492,6 +518,9 @@ It cannot be written to, and all reads from it will be = verified against a cryptographic hash that covers the entire file (e.g., via a Merkle tree). .TP +.BR STATX_ATTR_WRITE_ATOMIC " (since Linux 6.8)" +The file supports torn-write protection. +.TP .BR STATX_ATTR_DAX " (since Linux 5.8)" The file is in the DAX (cpu direct access) state. DAX state attempts to --=20 2.31.1 From nobody Wed Dec 17 08:13:14 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 819CB481A1; Wed, 24 Jan 2024 11:29:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706095753; cv=fail; b=kF/oZNRGpIS6fZViqkWUp7EUZ7UozAXlXhKNNllFKhRnk2hUcQIHTxh8ImpBfRt1hN+zvSGI5WGSgsGoNeNI0mDvBQi8ZEt2SbrdN6+sLN63T9Gup3H3bOvyfOAwTIj8mPX6+9PvIL6xaxGDSC9fNjE7T/83KtUpcbP9J0gUanc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706095753; c=relaxed/simple; bh=PGsTtKCaIXhJcbBDY2Mi7npv9HDRxSTEq+ri7TH9bQs=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=QPmoiGunZJEUFqfS8nH6apuThemDmYqVg/+GVchsgQKLGHvoSOFDXK+XoNCxhEeoTdLzwVmwhOkNwscI1gsvc5zgEf1rp+H4G7trXmqODYDgdjxNWDfJJG47sZIb4o18zCnPn5NKbArIFJ1w8mHEneD7+hCiJVyBqZ9/tHeoWMQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=RLMpCnV2; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=sbeSzYEx; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="RLMpCnV2"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="sbeSzYEx" Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 40OAwjio002348; Wed, 24 Jan 2024 11:29:01 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=tMp0FldAFhIhKfFYkhbzFAmj6JyD9uSQjdq17pQ4d60=; b=RLMpCnV2yIpn6GMWZYzNjowxLJSqUu8fjQOVnu/MpXg3HG0qEE3amnEIkF+EwXHudWm3 a7HW13iuy7FlTznxxemk0wB8E9aIiramwwy35maox9F6sO6ZZHF5PKQSpJimDdmUvIrO xmh4Qm046Jt2WfVatwJW/TrjgjbybLWXSzW4OdBMCRnCV6TiZDDEdLmTZjoGkK9t7U5y eAxp+LWzJEuLN7zYZ33hfF5UhpqwSGCh1CKbkkPTmNSb6RzchQAZoaS2JxEkxc1l0z11 y21bSLBPBUxbiOLLJri1cjBWgpOxE75RBBn9afAoK/8CC9PQK3zJuM7PWbDBHr/97E6l jQ== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3vr7n81w02-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 24 Jan 2024 11:29:00 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 40OAbrrj006305; Wed, 24 Jan 2024 11:28:46 GMT Received: from nam04-bn8-obe.outbound.protection.outlook.com (mail-bn8nam04lp2041.outbound.protection.outlook.com [104.47.74.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3vs32se9ar-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 24 Jan 2024 11:28:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W0Y3YP06A0WeAofjE6swtjRye0jX3vG4dE+209XS7hp/qc4izAi0i2vIlRvoUOtCxKpqdpFLbvGPR3qtiKgUEbljy6yj7e5/7T5gQnemh6b8ymfjlEJCD+EPhphbwwTl0vPtU6D0nwSkwC+PaAOLjflhEjFxcdp7ZmNrvqSwc9G4H58cHS3rYpACqUzN+c/9IBHcidm4FMskK5tW0icqavHt0BQN7lDeImqIZfK4m9gxnqK7Exzo//vkynvua+doI6S4epxoyVBbRxXsA8+LdvfiDJw8ll/fo77ibI9YgI/lwjaUO4urADkzdVGcjSfsESNVqUHWUtHt/PNqCUpRJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tMp0FldAFhIhKfFYkhbzFAmj6JyD9uSQjdq17pQ4d60=; b=oYb9vtv58DPJ+OVdJz0oZS7qSTvUTw9fZTHBfe/UfPhybXCfZ61TtZGtgX5j/KY0nyb+royQFsOJKvx1/tdcO4PQoAWdQu+yzyNQw1R5GnLZ7QjoRc0itQrXKAS+TcykR+55JZbjMzNAwWwO6TLVToeFJKKgYSZyRiVyVS/lwZiObxYu/s+fhWy+addLibTJp/JTR129MH2rn2wL2x215MPgAd6NKfnfgjMwXXq+ZoEyNzFfRgllQUs94TxHl0imiMH3rImoxbKtIjX8lKB+SdOGEz9SKipYxDIx0CN8tFzqUZj/Emfm6qCnIdHQow3884jMcbPiTUB4ETeKeeJEag== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tMp0FldAFhIhKfFYkhbzFAmj6JyD9uSQjdq17pQ4d60=; b=sbeSzYExiGMG+vXc/AYZfBnok0Ex93G5/zlJr6/Nf7Ic1HRqeNXIP0LwzOW6P2WIw+WonThrjWu+EEiwv9BZd+Ra7lbBkJ+ygGNEArVKNZzysdUwuO4sJwGzwPUbeTTi3F4ml6biaxzaerQWawv/3I8jj70pH/ooULXuvYX854U= Received: from DM6PR10MB4313.namprd10.prod.outlook.com (2603:10b6:5:212::20) by SJ0PR10MB5615.namprd10.prod.outlook.com (2603:10b6:a03:3d8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.22; Wed, 24 Jan 2024 11:28:16 +0000 Received: from DM6PR10MB4313.namprd10.prod.outlook.com ([fe80::f11:7303:66e7:286c]) by DM6PR10MB4313.namprd10.prod.outlook.com ([fe80::f11:7303:66e7:286c%5]) with mapi id 15.20.7228.022; Wed, 24 Jan 2024 11:28:16 +0000 From: John Garry To: linux-kernel@vger.kernel.org, linux-api@vger.kernel.org Cc: martin.petersen@oracle.com, djwong@kernel.org, david@fromorbit.com, himanshu.madhani@oracle.com, hch@lst.de, viro@zeniv.linux.org.uk, brauner@kernel.org, jack@suse.cz, John Garry Subject: [PATCH v2 2/3] readv.2: Document RWF_ATOMIC flag Date: Wed, 24 Jan 2024 11:27:30 +0000 Message-Id: <20240124112731.28579-3-john.g.garry@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240124112731.28579-1-john.g.garry@oracle.com> References: <20240124112731.28579-1-john.g.garry@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO2P123CA0045.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::33) To DM6PR10MB4313.namprd10.prod.outlook.com (2603:10b6:5:212::20) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR10MB4313:EE_|SJ0PR10MB5615:EE_ X-MS-Office365-Filtering-Correlation-Id: 447ceb7c-c0ed-48e1-dda3-08dc1ccf8f15 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1HUey8ZaP7VO3/SSGzM/kAM8RDWbkTDzco+3bY+IfhKmcVMO+Oof8pwwu8OnUp9YE/dDA2qWVz4TgWP2TsilseDVprfXlf78HA5D1V7oNJA4yzaQqTBpmm2DH3Ho6eWm61U1MRwr0rWLutQqkDNZUVFoMgPhJrO0ttpdn3Z+vHXUMlSF955hIvpHJRB6xEwStoZ06NpEd1dCpwq6ZC3CrT9u1+dbk9xPLDq2AqI3oM82QdFIzR1Bkohyrz4C/SJ5QsWEAsIsg0MsdjrQl5LK846HIMlxfO/WHQMwAhxUKsLUQapKlEeWPC8XKezyqrkTPGL67jP89+m604HanOoTVQAvQZlFkiWtMmMnXvV+C0wrq0ujQgAMzPbcyzLVIcoNy1sAdWKdGte5ehmL0bnHM2djP8Un08XARyPQueZecNr2GxJMrIZz79l1Y+ek2816RIUn6xJw8ehPIrdQFlqKcPIREQTaweL+drCxsGFz9Qo7AI+LBjoO9wjIN/fyC7WKmnd0slJo1ObM7BXa9jh1H7Te4H/KDA0GmYw956GWfKOs5Km49UY/bwc2WkQWByEK X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR10MB4313.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(376002)(346002)(136003)(230922051799003)(1800799012)(64100799003)(451199024)(186009)(6506007)(26005)(83380400001)(2616005)(107886003)(1076003)(6512007)(41300700001)(36756003)(8936002)(8676002)(66476007)(4326008)(316002)(103116003)(2906002)(5660300002)(66556008)(66946007)(86362001)(6666004)(6486002)(478600001)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?e3ggV72o5ZIwdjyt6mPJJke413PMSrrU1VDUAb93VjbbhAMT/UGVrU6WNnHl?= =?us-ascii?Q?EoT6KiMmv9ENzQjUe3FSL6Zf62bbs/fF2k6DiicO5jcj8ARRwPtfdfmFDyCb?= =?us-ascii?Q?YFJQ9H/zoS2LqXWI866Sw25CZBWDbp8cHaYq8TQdKRBOp/dImGPsf7aSsMA4?= =?us-ascii?Q?9f9H2WGIixn3pSlSpobWGZt0vuukCTBs93FuQNzpVjKSW70w/Oju4vAo0BkB?= =?us-ascii?Q?mmuSwq1PzdYTEqXZ1FKeHELZcHUqkMHVZGtEDintK4BqHgbyjWZB2XGemZTY?= =?us-ascii?Q?++qjn8kcAg9cV921ou8MFzeLt8ceG4Gs6KLPhF185sA/cxZDAIRw46UDbKzY?= =?us-ascii?Q?QYQ/xwXG7Bdm5Fqjea6BIwnFmXRcCwE17vi9oVaQHlTEltA7h3NvxBk1BNlI?= =?us-ascii?Q?lJMFJWze/uzZUaSd76DoiCpTd4RQz3cPKtq2a9DdOkN58bIn+cmRNGQWSwR5?= =?us-ascii?Q?C40WMv3c28jQCTs8PGfoSR1vtA+Wi4Z3g5sS0rnHvUdpBphOBoPUtZTKvyjS?= =?us-ascii?Q?WyZaDoZvvhOlQ0tO0ZPfG6VwpRFXni8QbVNXrE5JBZd6wW2kX4YaKHZ/ey5K?= =?us-ascii?Q?c+Q75LmrSPzc9mxZFgYoa+HxyV9Vj0/FXklyxi4t37MnnNSQKyZNgKRoPyUE?= =?us-ascii?Q?NRukWJkOTtOcvXvhCw8p9Qbv8PmjhOe4nYQR4L6wJmdBXg8IR+SxNtrxjQxU?= =?us-ascii?Q?kQeli/4luNZtp4/ONa+VjqEXa0O2BKpGJmuBUEsIRJNv0VdpfVuCiOaZBDW+?= =?us-ascii?Q?012ffKtnfPKr8aIpPUX8+A0TayYH5NpZIH5XJlvOUMRXIjhgFIRhmmN6aYjF?= =?us-ascii?Q?2Woliod7PbVHi5OAF/Y6rA/vBh9wzR4f12KQ48h+/+tlQnmQhD4m9B8f5LoD?= =?us-ascii?Q?GmdaddrhK/IM6ugX1uvh6y7/MHt5pXqQway6QKi8ksTqwi6Kec5C2YuO6oY9?= =?us-ascii?Q?JJPRpprdn7cuafT8js8DjdoA9WoL5IJTdnvpqjRB/kZcGNhpKQbzlc1TiRqY?= =?us-ascii?Q?aWya+kYeWhNMB8tWRNCI4vQCBsW0WdTZemL2G6U2DLQkVy//82D1Yg9V9hoi?= =?us-ascii?Q?L6V4d/ZEGt29+w/d+4ZOvmM+LEU1DtcIqGqy3jo1PPQkaEkVdPR321Y60xqX?= =?us-ascii?Q?hPV7vJMb0+e6WrqhQASFsYDAGkJ1S/Msrqytv74HYHPS6w9nMPTepvmSeSea?= =?us-ascii?Q?0UN+ItfFv90e0zr/uURgRIGQbjrTMM+1pyYAcTy+c/Q+hfMQwDj9VYYvhreK?= =?us-ascii?Q?QVlv3FEbsvxXfKDTWhI4h54V11AeM6RvXBqeaUNAnPdVu2SJ1MbSXf5DZQyK?= =?us-ascii?Q?XYP3Oo9IDCiBgBQdASem2EbGc2+bNEKOQcI1y/Um8OrONMzPBTP4J0WXZBGr?= =?us-ascii?Q?V9+NnJi4JuxQztu8Cv9W67L0AYKEmtAtSfKSSm2n1ifl7EZrR7Q2dJum0k6D?= =?us-ascii?Q?x+6hdYRUNFbwIRw2N7IMqAOlqUAkzBDZZrxuFu+md1It4Pikv3iGu8x9jWCe?= =?us-ascii?Q?IVubxwOtOBNcx31k78eFpfjQNTEt1CQ7x/Z/QuNGPvgrAHmWjgKemphy8N/w?= =?us-ascii?Q?EVoeEigLQ10y74PrykT0QsvhynPkPbgxaiAxSGRlfJberGaRjsAjRGEeG3sS?= =?us-ascii?Q?2w=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 4HRFL7irGOl5WwE7EEyFEbFGTUsybJ6Doe0qhVfgSR0P00AnaTUhDR8M8ARIAlXb3KmIueyPXF/s/2rqlvGbW21MlGpCz+f1PsREuJmZadJocH45i2e8GA0LxHJi4Ix6je7JjbRXrb0D9teZLlkUfdnDx8WgLDiMxNkNJSnlT1yRqxtlfgmV7fOTjsatig5YAT4Eekql2P0kPQE//Nv4RntaARQkZQNq2bTY9F4nLgOxSWTf32f1GP4jf0tbFdX1hnQFjIHDbS3KMYwczlf3EhBfG1EByivNmsNyAaAM0napZQFSS48BAXN51vG1kMN/tKMjUGBLIrMUdadby/OFc3c9OKdFkS7Zr5NyCniGVeqxRAdGkCCgjyN8IGBDPGJm1jbdiQ50DlkT+K9aAEuQXiCAxzobWai9eXxLV1WWZHZw8uxVECbu++XhPrpXMTGpvuICThEZ5iJIgPz/JzHcjY5qZARsfWfrle+SrBgFToycCPLyl/qK0LPLxrVAnTP9fxpUIO6gE0m4SCSEgpHqNH8/qOybFtgjMn//1sidxN8EjrbZnrdiGMk8gYigxOOgdxZfj+W3N6sHgH/UURc43zNAtnKYUspXDAWnYcK59dM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 447ceb7c-c0ed-48e1-dda3-08dc1ccf8f15 X-MS-Exchange-CrossTenant-AuthSource: DM6PR10MB4313.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jan 2024 11:28:16.5847 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: k40auin3i/Axrij++nSKujziX/cLELMMobJLYxlGDNl0cQXtMWObftd+u/zoO4rfePMnsignZEhA9zYSq7K82Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5615 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-01-24_06,2024-01-24_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 mlxlogscore=999 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 phishscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2401240082 X-Proofpoint-GUID: zXYq1QrvBLCBsgd3g1VyUOWxN0FYa7Sd X-Proofpoint-ORIG-GUID: zXYq1QrvBLCBsgd3g1VyUOWxN0FYa7Sd Content-Type: text/plain; charset="utf-8" From: Himanshu Madhani Add RWF_ATOMIC flag description for pwritev2(). Signed-off-by: Himanshu Madhani #jpg: complete rewrite Signed-off-by: John Garry --- man2/readv.2 | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) diff --git a/man2/readv.2 b/man2/readv.2 index d39f2b9b9..aa5d6576b 100644 --- a/man2/readv.2 +++ b/man2/readv.2 @@ -193,6 +193,61 @@ which provides lower latency, but may use additional r= esources. .B O_DIRECT flag.) .TP +.BR RWF_ATOMIC " (since Linux 6.8)" +Requires that writes to regular files in block-based filesystems be issued= with +torn-write protection. Torn-write protection means that for a power failur= e or +any other hardware failure, all or none of the data from the write will be +stored, but never a mix of old and new data. This flag is meaningful only = for +.BR pwritev2 (), +and its effect applies only to the data range written by the system call. +The total write length must be power-of-2 and must be sized between +.I stx_atomic_write_unit_min + and +.I stx_atomic_write_unit_max +, both inclusive. The +write must be at a naturally-aligned offset within the file with respect t= o the +total write length - for example, a write of length 32KB at a file offset = of +32KB is permitted, however a write of length 32KB at a file offset of 48KB= is +not permitted. The upper limit of +.I iovcnt +for +.BR pwritev2 () +is in +.I stx_atomic_write_segments_max. +Torn-write protection only works with +.B O_DIRECT +flag, i.e. buffered writes are not supported. To guarantee consistency from +the write between a file's in-core state with the storage device, +.BR fdatasync (2), +or +.BR fsync (2), +or +.BR open (2) +and either +.B O_SYNC +or +.B O_DSYNC, +or +.B pwritev2 () +and either +.B RWF_SYNC +or +.B RWF_DSYNC +is required. Flags +.B O_SYNC +or +.B RWF_SYNC +provide the strongest guarantees for +.BR RWF_ATOMIC, +in that all data and also file metadata updates will be persisted for a +successfully completed write. Just using either flags +.B O_DSYNC +or +.B RWF_DSYNC +means that all data and any file updates will be persisted for a successfu= lly +completed write. Not using any sync flags means that there +is no guarantee that data or filesystem updates are persisted. +.TP .BR RWF_SYNC " (since Linux 4.7)" .\" commit e864f39569f4092c2b2bc72c773b6e486c7e3bd9 Provide a per-write equivalent of the @@ -279,10 +334,26 @@ values overflows an .I ssize_t value. .TP +.B EINVAL + For +.BR RWF_ATOMIC +set, +the combination of the sum of the +.I iov_len +values and the +.I offset +value +does not comply with the length and offset torn-write protection rules. +.TP .B EINVAL The vector count, .IR iovcnt , -is less than zero or greater than the permitted maximum. +is less than zero or greater than the permitted maximum. For +.BR RWF_ATOMIC +set, this maximum is in +.I stx_atomic_write_segments_max +from +.I statx. .TP .B EOPNOTSUPP An unknown flag is specified in \fIflags\fP. --=20 2.31.1 From nobody Wed Dec 17 08:13:14 2025 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D7A0F1AAD1; Wed, 24 Jan 2024 11:28:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706095739; cv=fail; b=b6R6N5pH5ioB+bGqaHDwEUzI3PoKPTiosdhQbwVfNR8RjhsA4xyM9zjlpt0q+VJ+xWpe/XqdOf58bN/yqdhhH/eMMAySx1Y2KMw0pOIh0ZcWLpev8VlcOFHT1RVjhz3eTw8RcTHcidg+U38SMVxO+6a+ZLaFZu3GQKC8ImfJQuY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706095739; c=relaxed/simple; bh=QM+PFFj1D5GFlFRnTBs9wbBtBSHj5YW+vDYOaj2aefo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=HezSjR1omcV3dud1KbE0UcZRUaKiMyzhdJtHoSAsQPMFj2vpji/DPXfKwAvCRClifUFA6LSDFWZgYPyvDw9Ty0qntKHRhFQAF4h36UGo59C4s2oIbznxCN7NgF/zEfEJo41Z1KXitEdj4vLITsf2mjwlHP/L+H3312J4miTR3Vk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=lzMJyZtJ; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=fzSHA5du; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="lzMJyZtJ"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="fzSHA5du" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 40OAwr9W026976; Wed, 24 Jan 2024 11:28:48 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=SJAewlraDjF6yhOQfJpA4Nbu7HRwyOKfeauASZTTAWE=; b=lzMJyZtJYTjg9YoMvKskiXjSLvQxO2jizpuObbf+bwQIDSy7igjeibPlvZzlZcZstWTU sSIYcf/3HqAxqEfPVVlPXWetnTMFdezbt17r1c4ok3vLKtJ+gSAoXsqg1GAtO7tRWlbs pTGL8QU85l9TKr1xbTm/ia5VdJkCl1cq6ON/0V46oWvIobCu2sJvHJZOJUq4jUcwB5nc YVNgBRsiQRXZh9obPn+3uw+1nUZBg5/RS2CMW9XK7n8HvVnhN0382ivM9p+XBsslh6sL bfLw/f5KUOoMDR2qgA3Ou+QT+IHh3ZyGXMMB5utLXio7mB32afGw6gao6IMPtQCoiiIz HA== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3vr7cwhv15-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 24 Jan 2024 11:28:47 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 40OAbrrl006305; Wed, 24 Jan 2024 11:28:47 GMT Received: from nam04-bn8-obe.outbound.protection.outlook.com (mail-bn8nam04lp2041.outbound.protection.outlook.com [104.47.74.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3vs32se9ar-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 24 Jan 2024 11:28:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dR5kOX0WH3GLuyuo2FxyCPp541VK7eLN/e9+3UPuOeE2UB4NjgZNTf3cfgkzylUYQ8BoU0B3anYOumPEXS6Mb24dPdPS6rl7FQa0ioswChe2Y0KOh7wADrL04UG5RXnsCQduNQRTK49b7jOKRlTtQx/6O+DYrLB2wLkh80Ri08YmzfAaHLNqw3L8d6ooag4zKj4H1zgkX9FrYbP9K0BTXGaDjRjPwO2ryM0Ijk+mPIu79wL9qbaaroLbZxS/mYzxTTBSX6x3/7H0apXMm6YfM7Y3txrvgCN9cR5JVyL36r54J7cRV8bCG/wz5119Fue+ABYiFWDaDxRuFO4JpGZ2nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SJAewlraDjF6yhOQfJpA4Nbu7HRwyOKfeauASZTTAWE=; b=fUcesmd8GtnC7pO/UDEWb7HnWHBQ98vd3hOUNWYVv7BtpeCOYMJQnibJ0HkGTkEgQUnXZjCUgx/HPZNiG7cZZiGEbwjhGDr571vgSiNctmtNC42wJ45dx/hskV1xCgR0ecXhVPLs4sk7vsRIOo7PhH2d48Rb0ZRLiO5yZ0CCXlyoiLGz/i6twMLgdpxVCTmOLn4pwclRaivUcAga53vOHzjxKBg5Spd0k807ZE8mRvjUcCeIIEuxv7C2F4FSw9b90LsE+8jXczRweGXmkqPOJHUbh/5ESsFe2aH2fwR5oRBROCRL7dF/sPOz4Z/B2xwX4C/NT1+LHTtot24cfnwARA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SJAewlraDjF6yhOQfJpA4Nbu7HRwyOKfeauASZTTAWE=; b=fzSHA5duPuDgipoInt8Uu0s3QmkIXJjpgGQTKVTLttm4JZlljODwyO06mwtbWgVkSV0XLSl8UYwC44XSaR6ly15O3QpU7Nd1N3QGfv/AKZOhYuGQYnbJ0O3jhh1NNF4lf5G5rDh9DGwIggVvNo2CuOTKoRr2zAEQdc2wDpoHPqg= Received: from DM6PR10MB4313.namprd10.prod.outlook.com (2603:10b6:5:212::20) by SJ0PR10MB5615.namprd10.prod.outlook.com (2603:10b6:a03:3d8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.22; Wed, 24 Jan 2024 11:28:18 +0000 Received: from DM6PR10MB4313.namprd10.prod.outlook.com ([fe80::f11:7303:66e7:286c]) by DM6PR10MB4313.namprd10.prod.outlook.com ([fe80::f11:7303:66e7:286c%5]) with mapi id 15.20.7228.022; Wed, 24 Jan 2024 11:28:18 +0000 From: John Garry To: linux-kernel@vger.kernel.org, linux-api@vger.kernel.org Cc: martin.petersen@oracle.com, djwong@kernel.org, david@fromorbit.com, himanshu.madhani@oracle.com, hch@lst.de, viro@zeniv.linux.org.uk, brauner@kernel.org, jack@suse.cz, John Garry Subject: [PATCH v2 3/3] io_submit.2: Document RWF_ATOMIC Date: Wed, 24 Jan 2024 11:27:31 +0000 Message-Id: <20240124112731.28579-4-john.g.garry@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20240124112731.28579-1-john.g.garry@oracle.com> References: <20240124112731.28579-1-john.g.garry@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: PH7PR17CA0017.namprd17.prod.outlook.com (2603:10b6:510:324::13) To DM6PR10MB4313.namprd10.prod.outlook.com (2603:10b6:5:212::20) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR10MB4313:EE_|SJ0PR10MB5615:EE_ X-MS-Office365-Filtering-Correlation-Id: 68905dd8-b82b-48b5-d7cf-08dc1ccf9061 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2ArKHpD5P3oSBwnafoq2KRZgPwIaVTXlphsNSv5u58mgnlwGaZjAOaRsKyMZtpeLaAhjQEmkOEJhBFzsz+sD74ZECRAuS0hIHwkeNb6Xh4b98NdkseYGuL5NvMOka8HaqkyjWEGfZrzdQOliIrdg/Lx0UN6VeUN7ZGQ5LEPwDzgJ2sx0MmxdsQytF5Mdv8U5sC9W3QkLdXIl2eMwNzGN8ewioXZtD1od/rqEtxts0IWSCBGzCg2jjsydeo7sRrk1p/uc5X41mqPBsUwp9ZdQhaDV3KFEnaJG77zmizKUnlkrzK34a5cm433cw0iqSaD75gAPyUOo5MmLu50p7IK4zEi5W2wW2KG6b3oUIP2tlEbzrCohKTig4L+B3bduaIeO4J3cfzv2rQQ9J7CC2rM47YS7tJsXFuvi5SS8gkMmCcB+ng/V0CN42eZ30l0njXhOuTUirMUrUfmFBRXrSt0FAaQXYxn4xlWFEcL0L4gTfRPBGyn98mbUT6XER0yd9C2UIGRt4Vo0kHy+V0Wrtj3xcQUfDZ48FKxa9dMPQ3dHGV7cnBy3rdY5VzD6SWyWg63d X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR10MB4313.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(376002)(346002)(136003)(230922051799003)(1800799012)(64100799003)(451199024)(186009)(6506007)(26005)(83380400001)(2616005)(107886003)(1076003)(6512007)(41300700001)(36756003)(8936002)(8676002)(66476007)(4326008)(316002)(103116003)(2906002)(4744005)(5660300002)(66556008)(66946007)(86362001)(6666004)(6486002)(478600001)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?9IF3YC9mwGDjod9usk/6SE3Fnp3XQqZCsU95MM55vhFdy8TW+snb+U+xbxuf?= =?us-ascii?Q?5UD37yCi4oePgbUoFx0s/aWOgF2bnpluviEEMfpKTw4Blcj9CtGtG4z1/OlV?= =?us-ascii?Q?UNR7K3/4bOmiJwaHzy4A+N2HyNHnfjFxaiPRnDj0K7B6y/75jlzioViCASR2?= =?us-ascii?Q?exNlzoGb0Z0+JLjABnBaDtjo7e2JNds+uFpj41QCSknWfZ7ssXnxt8OiGhcp?= =?us-ascii?Q?v8rhXdnn4FvybTY9Z15vRjeyB8TnwuqNt1SN2ABXM0ZUFH52cEaIhh3Rq7Aq?= =?us-ascii?Q?2VtjZqNZuPg39i8RgZI/aCRA6gVXH1fX1g5ZBZ05SkENKZ6LavVYdfZ0DFs9?= =?us-ascii?Q?LwPtoq2j+7FaIPhmhg3j78d2eM9VT/9sPhQ0r7meMFWarRpRP+m+SSKEAPzi?= =?us-ascii?Q?VqbWJsXXLCM+e2Lmy9NVtLHqtnwa3oufFSDFoNJ+/i8gX5Gap+UcgtbV4B/D?= =?us-ascii?Q?G02//d7UaqRuLe+0XUUTOhlnWncmaVTdHC7sFpQnGfzxwF6lBhBl+0To+BeE?= =?us-ascii?Q?7R1WlbFvC33QvJU5ELt5c2ENr1xbClUeFWqzvZCgoqx1NCRjLgoG6ClTW0OH?= =?us-ascii?Q?tbvURg9KGqGtoRwaTvzKCPZ8E9TkXyRma6/yGOkiLDrDjOZxHjRQSYAhMeSd?= =?us-ascii?Q?7VUs/UdVlJtQFkky0rX0YYPZWO32DzvgfyCN4rreIbDHwF4J7fZiKviDfZtd?= =?us-ascii?Q?KlvyrzKBsWwKRP78u/SC7wp0zXdXKk87/yuU7V1G7DaR45uKQf6J9wq/Yg5k?= =?us-ascii?Q?r96veDeZV4O6Z0jsXk+0F0Yuxm3MaPWPXvNiN/SMNMSaLy/L50YJtp4anZIA?= =?us-ascii?Q?+Urg2HUGsHRnUXvTIo+JoRWTnSNi1lvk52xLaADGM5UZzYW1JJ7kLd6ELbVs?= =?us-ascii?Q?fF2bEh/BIZA1nmJS/WhAyVOvYXa5RQM8VUePwAwr+he28mHIBc8MT9T7vO+u?= =?us-ascii?Q?p4a2Fu4uVLLHtjpc7NhcRrnpvE5/kXyfBRsmwcCCXw0YidKXDE+mq6F0Oj7c?= =?us-ascii?Q?P7YK2reLHFqHCzObbrkjSYhC44quMAPyAcPFzlfVmH9wqB5weX+ARZnCXiyR?= =?us-ascii?Q?XH7FBe9x6ENAqJgLfN2R1Jqew0dFWHZa0jgA0a4J9dMA2rG31VRVb/DEACP/?= =?us-ascii?Q?dFBN+lbrfOlST6oNLk40r5m5gdTEX6GnwYE3PCsf7DQeMr2LT47YycwJbb33?= =?us-ascii?Q?cc8tdsL7jvH4WsKKzKaHo2ME46xWDN1Bfw21cnFOFuzCEntS0nwYsIpQWfJo?= =?us-ascii?Q?MrDj+QszvtUWu0kLjVHETMmO61Bujza9HvStSSl1clU61KzjKXnoHoHwkFf5?= =?us-ascii?Q?tq6Ny6jJBRBn2dpJL9LpajGDSFYQk8+Ti8PVPSd4dynlMnwB+ma+xic/LgeQ?= =?us-ascii?Q?rwn4LbQ1azzuKoKqkAsBHN1MRu2+daKpdWQeVyZIfXRkEG1kGE61GQnle0QP?= =?us-ascii?Q?TVp/hwk0VKxx6/3wavr1QfrxVXTXjOwhBOlxGA3Jexe/VOH+gyMfSEwrW81S?= =?us-ascii?Q?bgAK5hrlZ5jGSh3soNzqIpJJCE2gTSFqKvS+ETxoUcJNYIQZtZXCZ9K9o2Uz?= =?us-ascii?Q?ttt7fItcwe/PbqnZSzB3ciebOVvqQT8bBFT4L0wttCLQXmkZStYtuYXuHo6k?= =?us-ascii?Q?cw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: PoDyCpZh7ANCgAGN8Yr6VMr/IdzapNVcktaWpY8z3MupJiPNuy3MWlCXnROWILWjv4v59f1fIrOjpwrUOBd/JPnEN1P1HkIuJ5ztTiU0JB0jgbiTQeojMDrQ8v2GW9nlHsCuTgq/nHgRlqhJqHQFMsWgWpTSpgXBnSi05wnzwPLQcaGKQAtuOeXinS0nu3hNRz8aS0eCo717crN1FnkEc/omwZdptmYagaVxnJasQySMunVUe/VckelxLtND4lCjpGrW0FHQnAo8iuIQZ7fd/PxgcLJMiX7NIzBdjcr1yxf1tv6QaHphb+ckFHvsnYU6JDPHVIVTYumPYEmXlzgCPEGEV/2CKZ4d3RsnCu8ApdYvXPGUnssDPPZW+uD6Y8zVoFPCrJrORWKJRmC0JMH2NGT3lXBp1yycBEtGkt/1AY33GRwWLEx/ISzdlvMwB5xbDd/YPfwRIhwna5vtMihPCFnfQoGV/kRevIodsY9jsoaJGaGVPq4hPQfZZgHXJSKHb/tGmjFpYMSeF9yzWu3P0LkZo8wrq6kg1XSfAcSJD6p+ilk1pECOs9sdm/cm6rQuwZkl2YOUD9nZgJSQEhK7f2Cpvd/+VwLV0RatHYRv/Zc= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 68905dd8-b82b-48b5-d7cf-08dc1ccf9061 X-MS-Exchange-CrossTenant-AuthSource: DM6PR10MB4313.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jan 2024 11:28:18.6682 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VBvXXyyRE4mNAyUFaYYvz8kaAfahJFh8xqOI68XEiHMjdPoqYmVPj8wz/qScMD16lu0xutST9+EXkSvAhO5thw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5615 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-01-24_06,2024-01-24_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 mlxlogscore=999 spamscore=0 mlxscore=0 adultscore=0 bulkscore=0 phishscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2401240082 X-Proofpoint-ORIG-GUID: hiaAgQw6vkmxz_B0Eitce-0oPIZFSrVf X-Proofpoint-GUID: hiaAgQw6vkmxz_B0Eitce-0oPIZFSrVf Content-Type: text/plain; charset="utf-8" Document RWF_ATOMIC for asynchronous I/O. Signed-off-by: John Garry --- man2/io_submit.2 | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/man2/io_submit.2 b/man2/io_submit.2 index c53ae9aaf..fb6c4d9bc 100644 --- a/man2/io_submit.2 +++ b/man2/io_submit.2 @@ -140,6 +140,23 @@ as well the description of .B O_SYNC in .BR open (2). +.TP +.BR RWF_ATOMIC " (since Linux 6.9)" +Write a block of data such that a write will never be +torn from power fail or similar. See the description +of the flag of the same name in +.BR pwritev2 (2). +For usage with +.BR IOCB_CMD_PWRITEV, +the upper vector limit is in +.I stx_atomic_write_segments_max. +See +.B STATX_WRITE_ATOMIC +and +.I stx_atomic_write_segments_max +description +in +.BR statx (2). .RE .TP .I aio_lio_opcode --=20 2.31.1