From patchwork Wed Dec 6 15:14:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Konstantin Komarov X-Patchwork-Id: 174637 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:bcd1:0:b0:403:3b70:6f57 with SMTP id r17csp4176793vqy; Wed, 6 Dec 2023 07:20:44 -0800 (PST) X-Google-Smtp-Source: AGHT+IFEtOoHVt8G5U9WBv7qfDheXyBugOUjLuORHfwlitRUm0+i7Q1nsHkrG0Y5PKB/c1/CG95s X-Received: by 2002:a17:903:44f:b0:1d0:8fad:f1a7 with SMTP id iw15-20020a170903044f00b001d08fadf1a7mr838559plb.54.1701876043877; Wed, 06 Dec 2023 07:20:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701876043; cv=none; d=google.com; s=arc-20160816; b=J7zwOqLdh9SO9Q7W//c2AKQd4Pu1vFpGC+Wq9NKgPtzuChJlxyERAsVzzo5YY2ZfIe luLRUgEzCjBMtQnYsElLlfDtE+YhqXQpWsSp+Q8yt4e10tbIydNV5jV+12Zz4jZ72TOj I+ym6AHZZz6vEL3C2VJycmNCyqFi5nFdYrnjFfhKro3klzzA0Wi9WTL/5j6Zj++H0qf0 o3hTJnhO22mgPagldEm69w9/1SevqnbxcPsNMVGg3xCvksi38OLNjJuBgHslxfDR3Y6b 73eRBylwzJLl51FGse8UDUCA2Q3kJwNlShhqL+2QqgwiYhqFC9gBoJal8lKsxLLbYv9m kLUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:references :cc:to:from:content-language:subject:user-agent:mime-version:date :message-id:dkim-signature; bh=/4I47So9TsCFHrAhRoQV8zzXSeAqCb/39siaVWL+gX0=; fh=P7I85FIabZcM8ojWdeG8ABpTZepe/Xtte9jKWDfUHBM=; b=wPWTCfGA1VTaDbw/t3TcoVr1NehrMe+1ZGLlieOPX0o1bezvQSbHhrCBUxRr2XaLHm KurnXwTjo7TWxTM/Rk52tBldAsy0naJwpecwtjs2iHWR3PnLBzLQWaqqSbkcQ6fneyLS AHf8X0VexBozq79Uy7fO2U08X3jh4uIrTP1PMPfKoJUNpTuc2R2WhLMR68HcbyBsPh1X sKuy1m9bv+huDNbUE4ssKtnQYoWEmfw1iCLZjCm1ErvqnaHb1s/UUjvcZFkTxpRBOYzp z2FW+kHo0ovo94tXzJjMKRcyN6VOqw3NLz7fL5hzca9DMax1HVj+5v7Zv4ulc0Xtk2De WPCg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@paragon-software.com header.s=mail header.b=kN9J13WY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=paragon-software.com Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id h9-20020a170902f7c900b001cffe1e01aesi6480681plw.603.2023.12.06.07.20.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Dec 2023 07:20:43 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=pass header.i=@paragon-software.com header.s=mail header.b=kN9J13WY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=paragon-software.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 566768078613; Wed, 6 Dec 2023 07:14:12 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1442470AbjLFPOD (ORCPT + 99 others); Wed, 6 Dec 2023 10:14:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46164 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379228AbjLFPOC (ORCPT ); Wed, 6 Dec 2023 10:14:02 -0500 Received: from relayaws-01.paragon-software.com (relayaws-01.paragon-software.com [35.157.23.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 31CCDD50; Wed, 6 Dec 2023 07:14:07 -0800 (PST) Received: from dlg2.mail.paragon-software.com (vdlg-exch-02.paragon-software.com [172.30.1.105]) by relayaws-01.paragon-software.com (Postfix) with ESMTPS id 6E1C01E1A; Wed, 6 Dec 2023 15:07:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paragon-software.com; s=mail; t=1701875261; bh=/4I47So9TsCFHrAhRoQV8zzXSeAqCb/39siaVWL+gX0=; h=Date:Subject:From:To:CC:References:In-Reply-To; b=kN9J13WYKnTwM0/sOLGjGLDz5CC0z/k/AWpQjtIuyS78sqffL6F87LGiEKPYmwkL7 XsjaUGyF0vm3bNzJtlU1jEwm+8I+J8WbK9Qb1LZvwz2k8okN3eA6tNWNsW0vDDrybY zpr03m2YeMhs+FawFYMsmtMwLO398U/xikV1iWiY= Received: from [172.16.192.129] (192.168.211.144) by vdlg-exch-02.paragon-software.com (172.30.1.105) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.7; Wed, 6 Dec 2023 18:14:05 +0300 Message-ID: <9cfeb726-0b6a-48bc-a640-435bcb6e359a@paragon-software.com> Date: Wed, 6 Dec 2023 18:14:05 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 14/16] fs/ntfs3: Add and fix comments Content-Language: en-US From: Konstantin Komarovc To: CC: , References: <00fd1558-fda5-421b-be43-7de69e32cb4e@paragon-software.com> In-Reply-To: <00fd1558-fda5-421b-be43-7de69e32cb4e@paragon-software.com> X-Originating-IP: [192.168.211.144] X-ClientProxiedBy: vobn-exch-01.paragon-software.com (172.30.72.13) To vdlg-exch-02.paragon-software.com (172.30.1.105) X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Wed, 06 Dec 2023 07:14:12 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1784546374960797565 X-GMAIL-MSGID: 1784546374960797565 Signed-off-by: Konstantin Komarov ---  fs/ntfs3/dir.c     | 4 +++-  fs/ntfs3/fsntfs.c  | 2 +-  fs/ntfs3/ntfs.h    | 2 +-  fs/ntfs3/ntfs_fs.h | 2 +-  4 files changed, 6 insertions(+), 4 deletions(-)  void ntfs_get_wsl_perm(struct inode *inode); diff --git a/fs/ntfs3/dir.c b/fs/ntfs3/dir.c index 726122ecd39b..9f6dd445eb04 100644 --- a/fs/ntfs3/dir.c +++ b/fs/ntfs3/dir.c @@ -536,8 +536,10 @@ static int ntfs_dir_count(struct inode *dir, bool *is_empty, size_t *dirs,              e = Add2Ptr(hdr, off);              e_size = le16_to_cpu(e->size);              if (e_size < sizeof(struct NTFS_DE) || -                off + e_size > end) +                off + e_size > end) { +                /* Looks like corruption. */                  break; +            }              if (de_is_last(e))                  break; diff --git a/fs/ntfs3/fsntfs.c b/fs/ntfs3/fsntfs.c index 350461d8cece..321978019407 100644 --- a/fs/ntfs3/fsntfs.c +++ b/fs/ntfs3/fsntfs.c @@ -2129,8 +2129,8 @@ int ntfs_insert_security(struct ntfs_sb_info *sbi,              if (le32_to_cpu(d_security->size) == new_sec_size &&                  d_security->key.hash == hash_key.hash &&                  !memcmp(d_security + 1, sd, size_sd)) { -                *security_id = d_security->key.sec_id;                  /* Such security already exists. */ +                *security_id = d_security->key.sec_id;                  err = 0;                  goto out;              } diff --git a/fs/ntfs3/ntfs.h b/fs/ntfs3/ntfs.h index 13e96fc63dae..c8981429c721 100644 --- a/fs/ntfs3/ntfs.h +++ b/fs/ntfs3/ntfs.h @@ -523,7 +523,7 @@ struct ATTR_LIST_ENTRY {      __le64 vcn;        // 0x08: Starting VCN of this attribute.      struct MFT_REF ref;    // 0x10: MFT record number with attribute.      __le16 id;        // 0x18: struct ATTRIB ID. -    __le16 name[];        // 0x1A: Just to align. To get real name can use name_off. +    __le16 name[];        // 0x1A: To get real name use name_off.  }; // sizeof(0x20) diff --git a/fs/ntfs3/ntfs_fs.h b/fs/ntfs3/ntfs_fs.h index 7510875efef6..abbc7182554a 100644 --- a/fs/ntfs3/ntfs_fs.h +++ b/fs/ntfs3/ntfs_fs.h @@ -874,7 +874,7 @@ int ntfs_init_acl(struct mnt_idmap *idmap, struct inode *inode,  int ntfs_acl_chmod(struct mnt_idmap *idmap, struct dentry *dentry);  ssize_t ntfs_listxattr(struct dentry *dentry, char *buffer, size_t size); -extern const struct xattr_handler * const ntfs_xattr_handlers[]; +extern const struct xattr_handler *const ntfs_xattr_handlers[];  int ntfs_save_wsl_perm(struct inode *inode, __le16 *ea_size);