[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211209143839.31021-1-mark-pk.tsai@mediatek.com>
Date: Thu, 9 Dec 2021 22:38:39 +0800
From: Mark-PK Tsai <mark-pk.tsai@...iatek.com>
To: <luca.stefani.ge1@...il.com>
CC: <akpm@...ux-foundation.org>, <anton@...era.com>,
<clang-built-linux@...glegroups.com>,
<linux-kernel@...r.kernel.org>,
<linux-ntfs-dev@...ts.sourceforge.net>,
<michalechner92@...glemail.com>, <stable@...r.kernel.org>,
<mark-pk.tsai@...iatek.com>, <yj.chiang@...iatek.com>
Subject: [PATCH v2] ntfs: Fix ntfs_test_inode and ntfs_init_locked_inode function type
> Clang's Control Flow Integrity (CFI) is a security mechanism that can
> help prevent JOP chains, deployed extensively in downstream kernels
> used in Android.
>
> It's deployment is hindered by mismatches in function signatures. For
> this case, we make callbacks match their intended function signature,
> and cast parameters within them rather than casting the callback when
> passed as a parameter.
>
> When running `mount -t ntfs ...` we observe the following trace:
>
> Call trace:
> __cfi_check_fail+0x1c/0x24
> name_to_dev_t+0x0/0x404
> iget5_locked+0x594/0x5e8
> ntfs_fill_super+0xbfc/0x43ec
> mount_bdev+0x30c/0x3cc
> ntfs_mount+0x18/0x24
> mount_fs+0x1b0/0x380
> vfs_kern_mount+0x90/0x398
> do_mount+0x5d8/0x1a10
> SyS_mount+0x108/0x144
> el0_svc_naked+0x34/0x38
>
> Signed-off-by: Luca Stefani <luca.stefani.ge1@...il.com>
> Tested-by: freak07 <michalechner92@...glemail.com>
> Acked-by: Anton Altaparmakov <anton@...era.com>
> ---
> fs/ntfs/dir.c | 2 +-
> fs/ntfs/inode.c | 27 ++++++++++++++-------------
> fs/ntfs/inode.h | 4 +---
> fs/ntfs/mft.c | 4 ++--
> 4 files changed, 18 insertions(+), 19 deletions(-)
>
Hi,
I think stable tree should pick this change.
Below is the mainline commit.
(1146f7e2dc15 ntfs: fix ntfs_test_inode and ntfs_init_locked_inode function type)
5.4 stable have the same issue when CFI is enabled.
Powered by blists - more mailing lists