+1
−1
Loading
Merge Pull Request from: @leoliu-oc In the struct address_space, there is a 32-byte gap between i_mmap and i_mmap_rwsem. Due to the alignment of struct address_space variables to 8 bytes, in certain situations, i_mmap and i_mmap_rwsem may end up in the same CACHE line. While running Unixbench/execl, we observe high false sharing issues when accessing i_mmap against i_mmap_rwsem. We move i_mmap_rwsem after i_private_list, ensuring a 64-byte gap between i_mmap and i_mmap_rwsem. For Intel Silver machines (2 sockets) using kernel v6.8 rc-2, the score of Unixbench/execl improves by ~3.94%, and the score of Unixbench/shell improves by ~3.26%. https://gitee.com/openeuler/kernel/issues/I99AZK Link:https://gitee.com/openeuler/kernel/pulls/5284 Reviewed-by:zhangyi (F) <yi.zhang@huawei.com> Signed-off-by:
Zheng Zengkai <zhengzengkai@huawei.com>