From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 39350C001DD for ; Fri, 7 Jul 2023 10:51:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 783A98D0002; Fri, 7 Jul 2023 06:51:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 70AD98D0001; Fri, 7 Jul 2023 06:51:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 58D008D0002; Fri, 7 Jul 2023 06:51:04 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 49A1A8D0001 for ; Fri, 7 Jul 2023 06:51:04 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 12DA280788 for ; Fri, 7 Jul 2023 10:51:04 +0000 (UTC) X-FDA: 80984498448.29.908F16A Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf01.hostedemail.com (Postfix) with ESMTP id 2F6C340014 for ; Fri, 7 Jul 2023 10:51:01 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=jXdQbiZ5; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf01.hostedemail.com: domain of jlayton@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=jlayton@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1688727062; a=rsa-sha256; cv=none; b=KurLClN8sljv27XIY1qddIKS1MWNRekTy8RdumeDFgM/dvhTSCl3jPreVzpxQckQkiSwoP ExdAIjkymArZ3f3vTmICDmy6vHVHAWdq2pEC9vGjMPOLAi1xqB/cBXIWEpPAVWhF5keB9J aghCuOM1usaGvkb8FYhr2JSarUavR0o= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=jXdQbiZ5; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf01.hostedemail.com: domain of jlayton@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=jlayton@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1688727062; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ldKWM9MUIfpU86mj7+BbtZZKGTcTUE1WlO3GxCj9e0Y=; b=1UaGWRkjjkv4sk4jdGmtMMGJmnH03GZcfvJ8d5BoCQjMZ62gWxJ+MIFNJoORR9gNYUvA2t zqJNTX87AZ5I4fyD2EcacKgg34dwBNk2pSJJzO17khKYfdW5Q2aW5iKQvDXXA2CYVKu18/ NflOLMuRJU8K11mPaNvUb7JTdcpXHRM= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 9C49D618A6; Fri, 7 Jul 2023 10:51:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1904CC433C7; Fri, 7 Jul 2023 10:50:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1688727060; bh=YY2+JZ9K159BEA5iSbeX62sRGYZcpbUaLjQvLugmLbE=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=jXdQbiZ5Du/aIdze7VeTdm89AeKeYW1m4/7P1K420P54fp2uTq7aOaGBMwqlLnw11 5T+jXE1w9xr2TFIydSymIs59E5/D60tiQwOrG5t4hwTmZ4+DNTLa0LgW/JlS7C6Rg0 Mzl7zZGaHcBNbE8fs+RYzBh/pLfQTiwpAzbqUwnaVBq4Wks4CGEmJGniuijWbkznN9 yKSAP4Wd0VGwzQyH6kGj1b/zaEVMosXLl47jzHBi50p2AWNvdkuhe4kCPVw/2GfwLp PcUD4QVeNETkqKyUuCjgzrA8gjstIliNy9GhxSwhdsoWExJoMegiOtBnIsuS31XbZX flM91ZzrsjFeA== Message-ID: Subject: Re: [apparmor] [PATCH v2 08/92] fs: new helper: simple_rename_timestamp From: Jeff Layton To: Seth Arnold Cc: Damien Le Moal , jk@ozlabs.org, arnd@arndb.de, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu, hca@linux.ibm.com, gor@linux.ibm.com, agordeev@linux.ibm.com, borntraeger@linux.ibm.com, svens@linux.ibm.com, gregkh@linuxfoundation.org, arve@android.com, tkjos@android.com, maco@android.com, joel@joelfernandes.org, brauner@kernel.org, cmllamas@google.com, surenb@google.com, dennis.dalessandro@cornelisnetworks.com, jgg@ziepe.ca, leon@kernel.org, bwarrum@linux.ibm.com, rituagar@linux.ibm.com, ericvh@kernel.org, lucho@ionkov.net, asmadeus@codewreck.org, linux_oss@crudebyte.com, dsterba@suse.com, dhowells@redhat.com, marc.dionne@auristor.com, viro@zeniv.linux.org.uk, raven@themaw.net, luisbg@kernel.org, salah.triki@gmail.com, aivazian.tigran@gmail.com, ebiederm@xmission.com, keescook@chromium.org, clm@fb.com, josef@toxicpanda.com, xiubli@redhat.com, idryomov@gmail.com, jaharkes@cs.cmu.edu, coda@cs.cmu.edu, jlbec@evilplan.org, hch@lst.de, nico@fluxnic.net, rafael@kernel.org, code@tyhicks.com, ardb@kernel.org, xiang@kernel.org, chao@kernel.org, huyue2@coolpad.com, jefflexu@linux.alibaba.com, linkinjeon@kernel.org, sj1557.seo@samsung.com, jack@suse.com, tytso@mit.edu, adilger.kernel@dilger.ca, jaegeuk@kernel.org, hirofumi@mail.parknet.co.jp, miklos@szeredi.hu, rpeterso@redhat.com, agruenba@redhat.com, richard@nod.at, anton.ivanov@cambridgegreys.com, johannes@sipsolutions.net, mikulas@artax.karlin.mff.cuni.cz, mike.kravetz@oracle.com, muchun.song@linux.dev, dwmw2@infradead.org, shaggy@kernel.org, tj@kernel.org, trond.myklebust@hammerspace.com, anna@kernel.org, chuck.lever@oracle.com, neilb@suse.de, kolga@netapp.com, Dai.Ngo@oracle.com, tom@talpey.com, konishi.ryusuke@gmail.com, anton@tuxera.com, almaz.alexandrovich@paragon-software.com, mark@fasheh.com, joseph.qi@linux.alibaba.com, me@bobcopeland.com, hubcap@omnibond.com, martin@omnibond.com, amir73il@gmail.com, mcgrof@kernel.org, yzaikin@google.com, tony.luck@intel.com, gpiccoli@igalia.com, al@alarsen.net, sfrench@samba.org, pc@manguebit.com, lsahlber@redhat.com, sprasad@microsoft.com, senozhatsky@chromium.org, phillip@squashfs.org.uk, rostedt@goodmis.org, mhiramat@kernel.org, dushistov@mail.ru, hdegoede@redhat.com, djwong@kernel.org, naohiro.aota@wdc.com, jth@kernel.org, ast@kernel.org, daniel@iogearbox.net, andrii@kernel.org, martin.lau@linux.dev, song@kernel.org, yhs@fb.com, john.fastabend@gmail.com, kpsingh@kernel.org, sdf@google.com, haoluo@google.com, jolsa@kernel.org, hughd@google.com, akpm@linux-foundation.org, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, john.johansen@canonical.com, paul@paul-moore.com, jmorris@namei.org, serge@hallyn.com, stephen.smalley.work@gmail.com, eparis@parisplace.org, jgross@suse.com, stern@rowland.harvard.edu, lrh2000@pku.edu.cn, sebastian.reichel@collabora.com, wsa+renesas@sang-engineering.com, quic_ugoswami@quicinc.com, quic_linyyuan@quicinc.com, john@keeping.me.uk, error27@gmail.com, quic_uaggarwa@quicinc.com, hayama@lineo.co.jp, jomajm@gmail.com, axboe@kernel.dk, dhavale@google.com, dchinner@redhat.com, hannes@cmpxchg.org, zhangpeng362@huawei.com, slava@dubeyko.com, gargaditya08@live.com, penguin-kernel@I-love.SAKURA.ne.jp, yifeliu@cs.stonybrook.edu, madkar@cs.stonybrook.edu, ezk@cs.stonybrook.edu, yuzhe@nfschina.com, willy@infradead.org, okanatov@gmail.com, jeffxu@chromium.org, linux@treblig.org, mirimmad17@gmail.com, yijiangshan@kylinos.cn, yang.yang29@zte.com.cn, xu.xin16@zte.com.cn, chengzhihao1@huawei.com, shr@devkernel.io, Liam.Howlett@Oracle.com, adobriyan@gmail.com, chi.minghao@zte.com.cn, roberto.sassu@huawei.com, linuszeng@tencent.com, bvanassche@acm.org, zohar@linux.ibm.com, yi.zhang@huawei.com, trix@redhat.com, fmdefrancesco@gmail.com, ebiggers@google.com, princekumarmaurya06@gmail.com, chenzhongjin@huawei.com, riel@surriel.com, shaozhengchao@huawei.com, jingyuwang_vip@163.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org, linux-rdma@vger.kernel.org, linux-usb@vger.kernel.org, v9fs@lists.linux.dev, linux-fsdevel@vger.kernel.org, linux-afs@lists.infradead.org, autofs@vger.kernel.org, linux-mm@kvack.org, linux-btrfs@vger.kernel.org, ceph-devel@vger.kernel.org, codalist@coda.cs.cmu.edu, ecryptfs@vger.kernel.org, linux-efi@vger.kernel.org, linux-erofs@lists.ozlabs.org, linux-ext4@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, cluster-devel@redhat.com, linux-um@lists.infradead.org, linux-mtd@lists.infradead.org, jfs-discussion@lists.sourceforge.net, linux-nfs@vger.kernel.org, linux-nilfs@vger.kernel.org, linux-ntfs-dev@lists.sourceforge.net, ntfs3@lists.linux.dev, ocfs2-devel@lists.linux.dev, linux-karma-devel@lists.sourceforge.net, devel@lists.orangefs.org, linux-unionfs@vger.kernel.org, linux-hardening@vger.kernel.org, reiserfs-devel@vger.kernel.org, linux-cifs@vger.kernel.org, samba-technical@lists.samba.org, linux-trace-kernel@vger.kernel.org, linux-xfs@vger.kernel.org, bpf@vger.kernel.org, netdev@vger.kernel.org, apparmor@lists.ubuntu.com, linux-security-module@vger.kernel.org, selinux@vger.kernel.org Date: Fri, 07 Jul 2023 06:50:40 -0400 In-Reply-To: <20230706210236.GB3244704@millbarge> References: <20230705185812.579118-1-jlayton@kernel.org> <20230705185812.579118-3-jlayton@kernel.org> <3b403ef1-22e6-0220-6c9c-435e3444b4d3@kernel.org> <7c783969641b67d6ffdfb10e509f382d083c5291.camel@kernel.org> <20230706210236.GB3244704@millbarge> Content-Type: text/plain; charset="ISO-8859-15" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 2F6C340014 X-Stat-Signature: mnbqqtqqmk4xqy14eqog5gw65c8ohs3x X-HE-Tag: 1688727061-633670 X-HE-Meta: U2FsdGVkX192uzHj+qQX4ce+zsU8IDxG5DjhB2AyE4rTDfYAogj2eUwaq+VAnRhlCSlzAoplwB6o22KAMETOZvkA8UqTPQP+EAg2RpL1xGkMeZ/vfBdbeAUlXxsltfch74DBqJThMLAUoj1wvjBvtFFBZ9/x7KBEnpp4Ok4jFEJ8t1ZnQMIEYht9unAL6+LS1zkipzgLLCSR9W4cJNt3zq+AGWTOGL0vhTXGMGIaYJLKuwxdXJQhjcKhvNYxx7+htls30AGReBJIuHMbABUqFxAGOYXOFxhNY+Qe/pOk1JYWrMGEbYOhGbHW3//jG9vWd3sM7w0aKjAl33sgshYqCL7HEsJQ8Gx6e5FuIdZ7/9oExFG/nA16MnuJq36sJKRHeDyREYlwWy2pREFy4DjCkJwoueKwueRnH4JaohHaIELcxGzfCONPIn9Wl8Nga9mLrbTLZ5bGrviPTTZIxXboKoCtVfPO1vqT/Bnbw4FuM3v63CvraIaa938Cx94uSnDnMBu/aEmJDxd7Pji/XOUMm4Aj1pRBVmB1IhKcBPjiR1eoXJJ2i5r2bnXLWLzYg8KHlFEMG6u2LIxs25OPJIh9Xh45MainmwltUUZfaYRZ4VyEPANDL51DEwxIshIMhmsj8eCFCI3J115+Wr6/h84O0oBjtYsMHwnFeIq9ZseBJ3pRMI5PjwPGhZUqT/CYtG0SU2eA9oK2FRYtucyT3N/7E+hzVG1USQ5ASR3h0GO/td8yejah5sUbMM9akMbD/Jez2lzlCyi4x2CBXknsshz7ME51TOwmrXqMNBhW8uwyfQytKdwZ9uhKy05lsZRgEx2UQ0bzhiKvTzpudmLQDQZoBqyC6BTq/jhv0VGKGzJuKXo4GnkUNrU7oeoEJhSRi61RiGsvWZBGziPFcp+6LsipvwKMyzCCwIyLFtxD1D/BpO2mVrdNCQw0UP6cS0behRjRXwNT/d/C8t3wvjzw5oP +KXqIitY PBztz1N/OI3M9pqcuMJHQz4ASutNqaxHQ3PbAu0AYg7mlVLiXLKDKEe/YXcHkEWHFXIy8JWDcFb81MOfBu3rrnUbGfRoRxV5o5MknwTVo1hLBe6TU8t8qyZ6QcAG9p+op3Y6dPUko6pvhW31aTEnbWUxlE45khJfYzWok2OUniCupq2ETEYnn4GE1G1dBcN+9b4GrB/MG54HhkYO3MrgATm3qbbODkJqSiLqUxFyX/AxMcdmTWeqKKTvYA8DbpulxcCiJNHf4KyISdDeYmjzg2XPs6oslaD20D/F7jsEHk8NG/Sl2mF3nuAnQPTzoPvjSW9kwbpKu/gkYuzUZlFDDUDWcecyJELhCf0wh6ZG0UDKFGdTMV+YXutaqSMXyucjQXDXVJqwx1N/59grd43HtHQrZ/EnoWy0P/D2EGGgw5V+fUpoYCaWUUIFnwqTjy1cJy8irbD50PcQXFB8zyaTcGsAeeY4Xk9+Lo4aibEMr8R1dOEi2mztC1tabSKYRE/Y47OzyGCnPf12PV0pVxQbhwqKgua9TIFR5yprmVJQZIdcnTvw9fMNBKlu2gjEmxF2FQuy2zJiUH5G81gIZQzKZqwQacU7h/RtuE/+Lc6by0EjJN7iDO29jCncybHgog6QbaRPHmtoDRoCMaZnaHxLJy2wOOhWhY0wEuSsMjrPlMUEeqJUY3/rByJryhvcjmGIjR7elfJT8iz2WFceH7DKHlvdEV/gdsnrwXzmpe6LJxXltx3ns31VwcVP2zTZ8U4ovUsUCS4GFbryQb7DeGhOafonlMzK7H8v8cBgZXDVz/F9fjEkVmAfnkxCe7EPxmatHgdYi+4k3neXUgstTINjalfP1R/lYXi5Mh7Y6L0+MGt5bl5gvPHMS7unUlhajSVm2K2J8NMGTJpIXIUdhnXtBJGHcCSFkJmoYGBruRay4ItC1ogxanaNo9m2+Xu7w1UtKcIjlX844Y9GSb8AzRhrS5DTvdIjA zaUV6q20 kotGQhAIBc9ld0xc0qBKX9JmNjialw70DBoCTg/EygDsLetn6T3u6OqKVQnJNCP9vUvhYwK7yNnGbyaCiVGN6x/YXwnpap1zXkPkQhCRa/Hq2DlQ7+2gR4XU98F9Wy5wQy9+k+JqKthemTMKPeW5xNyNYKgrTyFD3ZIZmUodp4+LkGzy9HuDP0MOblyoiVHXTbQdkgLrdx9asdUazrtFBLGOYE6QBAIpFMmGU+cyJE29u8Royr8VNQg+XylGzjka7BUYn9Zyq0Be8QbM8ivB4Q6/tbZYZT0ogkErfqkVo0YI+CvwulQL71c6I6Byi0LLpHmtBsnPvzf0Un1HxkEtrpRNe3AToJea4pIuY/twdQrfOlbL5HGUtz7q1A51qSM+QpYA90eO+nB0jZCGhoBEXYlDADFrWS6jn7VQKgXzCazvqMyn9y9b6/hkbPIIxx21cAypNeMAegVgVYRqobHJBxbXPrIVamgoHYxrGPLJbsHRjfsQpace619q+mCf6LpSkGf2qJFJ6d2tJbz0RH3hC0ZMzfR1FtZm4dCZ3J75kIOTIcI2U5RwYfAH+rPh7wdG7bC3CdiyYqOihGfpfVztBNhh7x+QxphBbwUPo/JHlABNLbehHROLx2s0w77K2FaEutHEoXa5e+l4QjRZ8F9mqsIuY4/9aNdqqlA+O7SnT6du6WLIUz6EheByZPSi3M5FfjkkIJSuj+ShYC3xD0HgQHR8TSlWwmEef+7xvV6EjCuqB4Ec9hK0o5xiDUsuuNpQeOOuPZLHOcPRoTX/gjjiujU3dD+xNAYsvwuzv3AP7nKMcJ4/ecLBoibCXVN9duTJUZiMY6Q9big+5LHhSy1Kk0jmKBDFqsXxuO/lxLldQ4i56YgjYm+LVdDGX49A9bQ2lUJ+cNqiCJXyVOf0kS0h2lrnOWi2o4qnpoYhhZmga4j0w0lGDhe5o+ZjBU4nOzNI0ZjdzjD0J2tyJbZ8tpxP/eI/4Zfcb t5XJkk/r f5UXQtvLzMLxISz7vZmPut6QtquHbJ8yZbANvThQkN8g2zKQ9cY93sBUCuOMn7J3T+3S7uADzBNOov5d6V8PmSubWUkgnzoB/vRsq+SJPvQdotb1x4nXawI8wZvSEu3/6k/FR7Ww0Y8+9MmfPbhngWm9TRW3oUKyJoDxHfGAEzz9t0ZGbqJcz9+Y64zYl3P9dpVYhOSHau5dgzDjcuxD5zT+TBYof87jQCfwTegtKWjgZFPeu/lAeLFfmPDiO8f462AeT4vM+vcRF2bJMdZQCuNM1J/m8La86QfvsSmPWLqrD2PIcufq3V6JyhU49zKqSK+36YEEKKFy6oV1+GcvY/LgCAwUoYXgeuJ+vLxU93XNhVKMwyFtEi4RNCByuXSjPwdqGOpNhrtvgQLAOci68Xfy0htcbDKjnzJgg7+rDBd/JJ+kwfoI7Mt+LAgMwSl4w80911jmy0ITAWWyzCOA+NnIrwlmXKbVhZ8jwbf/4aU0wDMi9B2EQi8K/jk0jjnCeYglTNTau0hUHfpXFgyJJpocEU8dSYZphsBT9A+sXLS7y+9cxeVtK5la6lrT63i8fObCzf+9k6KNB8oz83zhnYECLcLWvlOj9sQ5a38nSkt3FEfjt0qAJYwNZGXfjgenJcbiRB+xGkc2TUGyjhqsLs33XbbNYA28e3z5X8LrRDvXv21wpmw4V0Wx+aCxVs/8eW+iUcwxaABEGgpdFweSH+6/38ABKFl9ryjgGtaKyRRmYK11SgH2zyi8pkiCsOjWPhYfBybNP5/tuKMSsANbNsUY6rgqlMFOTgpVkL56/jbvRN0DPP0dUtdiM0Sie5cDFXUtfzJ1N5LCwlX7pBv+yvYrVfjuZHVOugzGKluRHrH0sFVTAmbAtLIrALAJosuHBwGHDs/eThAGBUHUz2BWCmDmv0bNwy+EgGGHB+wEu6ltizzx/UT+EsghCevSEJ/Q9hI9nms72jn+ecNu3rsSFgKRu2NpS /hWu3RQJ btrpExcJrT6w5Lt08FLYSpDMpqymUy5a+mpGcG8T14i5bx6YZtoxgIj8c2Ykkl3jZOlE6wyaWqByOxr4cAkN9zqYEizPhrD7R6rg/lvwimIdXFCpPe7xtDHjrlL5TQbSugdriwXuyohct24MOWWLWrvw27Z6Y0+zBRhv7UCvQN73oUmTQGPKeuJCf0ap5M8VsB49Hh/glUQewGjSix6Y650h0bsxm+qvanfhao+YTlRNmtWb+BywdaIpSoeCijFL2A69PhLL5zeixHYcrwxjabbHdpH+KfQT9VF4t5Fjiu44g1iwHUuatGPIq1DA+IwKkElh98WG2EYyYzSzPqYmB8aK22bwFUM9HSMIoJjJS/+XVfGL2a3A1P5RLz0ECOlw2ZMzEtf/jp7q2RcNo3JgCs4BODohhJ8NFd50AZLGfb6FOpeKFQUjnHLiwAhyAUJ/e83eQ62mkFJM5zYK/PBjJlzvJLZrRunohhM8OM6jYCKKTaYWRUKU4FiPNVhbpVcmXUQoqZ5yLOUvS0BDCB5LUOJi1l2uuOfDpq6249rpmQASXjkDMG0KIS X-Bogosity: Ham, tests=bogofilter, spamicity=0.000027, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, 2023-07-06 at 21:02 +0000, Seth Arnold wrote: > On Wed, Jul 05, 2023 at 08:04:41PM -0400, Jeff Layton wrote: > >=20 > > I don't believe it's an issue. I've seen nothing in the POSIX spec that > > mandates that timestamp updates to different inodes involved in an > > operation be set to the _same_ value. It just says they must be updated= . > >=20 > > It's also hard to believe that any software would depend on this either= , > > given that it's very inconsistent across filesystems today. AFAICT, thi= s > > was mostly done in the past just as a matter of convenience. >=20 > I've seen this assumption in several programs: >=20 Thanks for looking into this! To be clear, POSIX doesn't require that _different_ inodes ever be set to the same timestamp value. IOW, it certainly doesn't require that the source and target directories on a rename() end up with the exact same timestamp value. Granted, POSIX is rather vague on timestamps in general, but most of the examples below involve comparing different timestamps on the _same_ inode. > mutt buffy.c > https://sources.debian.org/src/mutt/2.2.9-1/buffy.c/?hl=3D625#L625 >=20 > if (mailbox->newly_created && > (sb->st_ctime !=3D sb->st_mtime || sb->st_ctime !=3D sb->st_atime)) > mailbox->newly_created =3D 0; >=20 This should be fine with this patchset. Note that this is comparing a/c/mtime on the same inode, and our usual pattern on inode instantiation is: inode->i_atime =3D inode->i_mtime =3D inode_set_ctime_current(inode); ...which should result in all of inode's timestamps being synchronized. >=20 > neomutt mbox/mbox.c > https://sources.debian.org/src/neomutt/20220429+dfsg1-4.1/mbox/mbox.c/?hl= =3D1820#L1820 >=20 > if (m->newly_created && ((st.st_ctime !=3D st.st_mtime) || (st.st_ctime= !=3D st.st_atime))) > m->newly_created =3D false; >=20 Ditto here. >=20 > screen logfile.c > https://sources.debian.org/src/screen/4.9.0-4/logfile.c/?hl=3D130#L130 >=20 > if ((!s->st_dev && !s->st_ino) || /* stat failed, that's ne= w! */ > !s->st_nlink || /* red alert: file unlink= ed */ > (s->st_size < o.st_size) || /* file truncat= ed */ > (s->st_mtime !=3D o.st_mtime) || /* file modi= fied */ > ((s->st_ctime !=3D o.st_ctime) && /* file changed (mo= ved) */ > !(s->st_mtime =3D=3D s->st_ctime && /* and it was not a = change */ > o.st_ctime < s->st_ctime))) /* due to delayed nfs wri= te */ > { >=20 This one is really weird. You have two different struct stat's, "o" and "s". I assume though that these should be stat values from the same inode, because otherwise this comparison would make no sense: ((s->st_ctime !=3D o.st_ctime) && /* file changed (move= d) */ In general, we can never contrive to ensure that the ctime of two different inodes are the same, since that is always set by the kernel to the current time, and you'd have to ensure that they were created within the same jiffy (at least with today's code). > nemo libnemo-private/nemo-vfs-file.c > https://sources.debian.org/src/nemo/5.6.5-1/libnemo-private/nemo-vfs-file= .c/?hl=3D344#L344 >=20 > /* mtime is when the contents changed; ctime is when the > * contents or the permissions (inc. owner/group) changed. > * So we can only know when the permissions changed if mtime > * and ctime are different. > */ > if (file->details->mtime =3D=3D file->details->ctime) { > return FALSE; > } >=20 Ditto here with the first examples. This involves comparing timestamps on the same inode, which should be fine. >=20 > While looking for more examples, I found a perl test that seems to sugges= t > that at least Solaris, AFS, AmigaOS, DragonFly BSD do as you suggest: > https://sources.debian.org/src/perl/5.36.0-7/t/op/stat.t/?hl=3D158#L140 >=20 (I kinda miss Perl. I wrote a bunch of stuff in it in the 90's and early naughties) I think this test is supposed to be testing whether the mtime changes on link() ? -----------------8<---------------- my($nlink, $mtime, $ctime) =3D (stat($tmpfile))[$NLINK, $MTIME, $CTIME]= ; [...] skip "Solaris tmpfs has different mtime/ctime link semantics", 2 if $Is_Solaris and $cwd =3D~ m#^/tmp# = and $mtime && $mtime =3D=3D $ctime; -----------------8<---------------- ...again, I think this would be ok too since it's just comparing the mtime and ctime of the same inode. Granted this is a Solaris-specific test, but Linux would be fine here too. So in conclusion, I don't think this patchset will cause problems with any of the above code. --=20 Jeff Layton