From patchwork Mon Jan 22 02:04:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Deepa Dinamani X-Patchwork-Id: 864135 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-ext4-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="jM1WEYzi"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3zPvtY6vj0z9s74 for ; Mon, 22 Jan 2018 13:06:29 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751126AbeAVCFK (ORCPT ); Sun, 21 Jan 2018 21:05:10 -0500 Received: from mail-pf0-f196.google.com ([209.85.192.196]:37995 "EHLO mail-pf0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751050AbeAVCFJ (ORCPT ); Sun, 21 Jan 2018 21:05:09 -0500 Received: by mail-pf0-f196.google.com with SMTP id k19so5918531pfj.5; Sun, 21 Jan 2018 18:05:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:vfs; bh=672DQ/ZPvYZiC/r873e28ARYoAHZJgtPbj/1f+5yp8o=; b=jM1WEYziAsqSdabwGS2Fux+l+CW5dk9SVpeq+TJel0Vs3FQWXOMQr4G5+NPsqdMnXF f8xP9yPMzmtbLnz4zJnOlQs1YjvV9FuqoiPKL9wS8YBrIon/Oqrukobq1vYypedZpBcz AOKeVQQvGT7XGedC7ocwgkO3cpLGntJrICGiM8Q/Kr3xINnEFRj4/4qlykyRrKcBf3ps 7gCpyDwrC6kpcf8pBZJaNI2SE6PjZc17ZcRFtxwfORGSW24j5hZSImHEsuD7rwzbnLy6 +UIqVfVrUgnAn4k2m0TubkoKIHs/Vt7V2gJ/naLfBehiQhVpjfnbdNyepXOFtgNuMhFQ 4ZUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:vfs; bh=672DQ/ZPvYZiC/r873e28ARYoAHZJgtPbj/1f+5yp8o=; b=IYNz8eZowOl/eLbdnHB4yRlKaU3IJYXTPp+mnKgsYhR6w2qXGnVJRRdjGHdYK5hdvh w9+U0STUIGBgMS71T4rM4swRv8A1BDIolH54vv4hPbsnDqGJAKvcbK07iajiWWTcH2iu p3+5c26x/GPO7RsH79k7II+wGCtwRgcZsy7uX+p2g/xvZEf2Y7e1jR9kiqgvWc2A1nbB WtVnSojKb89mNpZG/mxg9sQJF1DI4LjLTaQXJKW0kSyWi2HTz6faX+/twz/TIyi/eRZP SPHH7fbO/hRlKCuXsNn9Xj8gBfQau2zYmfUUIYkPRSO9sefnOuMy2csVZUK+4bV70117 rZEg== X-Gm-Message-State: AKwxytdBN8MxAggb0+pVxHTj+BvVGo/cXpJsxbF9C1qztLGYhl66S8ed B3iN+f/8+JqDFKTGXs15pLw= X-Google-Smtp-Source: AH8x22485G8LDECtFjmYXNZ/h2IIgD18NpQpbvbBy7I0KCIFOGJfRaJb0wkyWfrTXJYhT0nAvbNmVQ== X-Received: by 10.99.161.26 with SMTP id b26mr6045386pgf.322.1516586708404; Sun, 21 Jan 2018 18:05:08 -0800 (PST) Received: from deepa-ubuntu.lan (c-67-170-212-194.hsd1.ca.comcast.net. [67.170.212.194]) by smtp.gmail.com with ESMTPSA id y79sm27168472pfb.177.2018.01.21.18.05.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 21 Jan 2018 18:05:07 -0800 (PST) From: Deepa Dinamani To: viro@zeniv.linux.org.uk, tytso@mit.edu, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org Cc: torvalds@linux-foundation.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, arnd@arndb.de, y2038@lists.linaro.org Subject: [PATCH v6 0/4] Date: Sun, 21 Jan 2018 18:04:22 -0800 Message-Id: <20180122020426.2988-1-deepa.kernel@gmail.com> X-Mailer: git-send-email 2.14.1 vfs: Add timestamp range support Sender: linux-ext4-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org The series is aimed at adding support to maintain individual timestamp ranges for filesystems. This helps futimens, utimensat and utimes syscalls to conform to POSIX defined behavior when the time being set is outside of the corresponding filesystem's supported limits. The series was developed with discussions and guidance from Arnd Bergmann. The original thread is at https://lkml.org/lkml/2016/11/2/294 I will be submitting follow up kernel patches to update all filesystems. Currently ext4 is the only filesystem that reflects correct limits. The branch is available at https://github.com/deepa-hub/vfs.git refs/heads/range Changes since v5: * Dropped y2038-specific changes Changes since v4: * Added documentation for boot param Changes since v3: * Remove redundant initializations in libfs.c * Change early_param to __setup similar to other root mount options. * Fix documentation warning Changes since v2: * Introduce early boot param override for checks. * Drop afs patch for timestamp limits. Changes since v1: * return EROFS on mount errors * fix mtime copy/paste error in utimes Deepa Dinamani (4): vfs: Add file timestamp range support ext4: Initialize timestamps limits vfs: Add timestamp_truncate() api utimes: Clamp the timestamps before update fs/ext4/ext4.h | 4 ++++ fs/ext4/super.c | 7 ++++++- fs/inode.c | 32 +++++++++++++++++++++++++++++++- fs/super.c | 2 ++ fs/utimes.c | 17 +++++++++++++---- include/linux/fs.h | 3 +++ include/linux/time64.h | 2 ++ 7 files changed, 61 insertions(+), 6 deletions(-)