Description
In the Linux kernel, the following vulnerability has been resolved: mm/ksm: fix race with VMA iteration and mm_struct teardown exit_mmap() will tear down the VMAs and maple tree with the mmap_lock held in write mode. Ensure that the maple tree is still valid by checking ksm_test_exit() after taking the mmap_lock in read mode, but before the for_each_vma() iterator dereferences a destroyed maple tree. Since the maple tree is destroyed, the flags telling lockdep to check an external lock has been cleared. Skip the for_each_vma() iterator to avoid dereferencing a maple tree without the external lock flag, which would create a lockdep warning.
Product status
a5f18ba0727656bd1fe3bcdb0d563f81790f9a04 before 286b0cab31bac29960e5684f6fb331d42f03b363
a5f18ba0727656bd1fe3bcdb0d563f81790f9a04 before b4f664ffd8f78c05a1fd542a28bc5a11e994c014
a5f18ba0727656bd1fe3bcdb0d563f81790f9a04 before 6db504ce55bdbc575723938fc480713c9183f6a2
6.1
Any version before 6.1
6.1.22
6.2.9
6.3
References
git.kernel.org/...c/286b0cab31bac29960e5684f6fb331d42f03b363
git.kernel.org/...c/b4f664ffd8f78c05a1fd542a28bc5a11e994c014
git.kernel.org/...c/6db504ce55bdbc575723938fc480713c9183f6a2