Messages in this thread | ![/](/images/icornerl.gif) | | Subject | Re: [PATCH] erofs: fix extended inode could cross boundary | From | Chao Yu <> | Date | Mon, 3 Aug 2020 20:26:22 +0800 |
| |
On 2020/7/30 1:58, Gao Xiang wrote: > Each ondisk inode should be aligned with inode slot boundary > (32-byte alignment) because of nid calculation formula, so all > compact inodes (32 byte) cannot across page boundary. However, > extended inode is now 64-byte form, which can across page boundary > in principle if the location is specified on purpose, although > it's hard to be generated by mkfs due to the allocation policy > and rarely used by Android use case now mainly for > 4GiB files. > > For now, only two fields `i_ctime_nsec` and `i_nlink' couldn't > be read from disk properly and cause out-of-bound memory read > with random value. > > Let's fix now. > > Fixes: 431339ba9042 ("staging: erofs: add inode operations") > Cc: <stable@vger.kernel.org> # 4.19+ > Signed-off-by: Gao Xiang <hsiangkao@redhat.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Thanks,
| ![\](/images/icornerr.gif) |