mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-07-06 22:05:22 +02:00
a8889f753c
1189 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
![]() |
a8889f753c |
This is the 6.1.141 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmhAPsAACgkQONu9yGCS aT5bsA/9GAXiE7V78xym1UyF8Rib0vcQ2vQuilw+kzGr8UJyg9bBO5+H3j3W8stu TrFMYk3mFDdfJ/ozKSQkFlVPI7XFfz8x7T1/3+ytqf90TLe9hBfx4WsDMA+OCz7K GJqPMCmfb6yZi/Jp0Cotqd7cRmLisNvvPl2k+8QO2PbNnsZOJPYNy7XsS5WCNY81 r27Lu/eyPYdb4CRuxWDLBjeFkC+npVsUxbVUaUgODwlJwmg3z5G+vhMhsw5roZlN IXxnDnVorIK/q9Cfw5AK89kIQzL5PQE9EAUBS+mKaGYvU8I4uvttA2ebkosQV+xW ahMX4TZldSWYC5fsfL57MnHdWGQ4c/+RTKUBhEqwKALu4bv8bavC1XQ3vv5GiD0A f83Km2dq4+bOIyLCXhx2m1b983eGVC9t4s1OacqlKfupmt0H6NhtRlBPTLCRMajG njHPoaHdPXTq1EjCpu7m4d7tyFSK/oGiWeWSCEdQciAzT6ET9FEGErr9UG5auVz4 NSHZq1I7WtZbRGz6RmcwdgGpPLD+Q5+wWkqaaezCzrfsqgtmxwXp7LmM5yVkvEYq 0HitEOcaHCT1Cl+VFsClFbsrad98KAcDV6wIfTgSbL9GjBG7kW8vgZaFbir+XG4j 5yqdj8lo+DiXtK+JXibfcAVQufciOZzuWhiDnV/nD+qVKOdqcvI= =O5on -----END PGP SIGNATURE----- Merge tag 'v6.1.141' into v6.1/standard/base This is the 6.1.141 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmhAPsAACgkQONu9yGCS # aT5bsA/9GAXiE7V78xym1UyF8Rib0vcQ2vQuilw+kzGr8UJyg9bBO5+H3j3W8stu # TrFMYk3mFDdfJ/ozKSQkFlVPI7XFfz8x7T1/3+ytqf90TLe9hBfx4WsDMA+OCz7K # GJqPMCmfb6yZi/Jp0Cotqd7cRmLisNvvPl2k+8QO2PbNnsZOJPYNy7XsS5WCNY81 # r27Lu/eyPYdb4CRuxWDLBjeFkC+npVsUxbVUaUgODwlJwmg3z5G+vhMhsw5roZlN # IXxnDnVorIK/q9Cfw5AK89kIQzL5PQE9EAUBS+mKaGYvU8I4uvttA2ebkosQV+xW # ahMX4TZldSWYC5fsfL57MnHdWGQ4c/+RTKUBhEqwKALu4bv8bavC1XQ3vv5GiD0A # f83Km2dq4+bOIyLCXhx2m1b983eGVC9t4s1OacqlKfupmt0H6NhtRlBPTLCRMajG # njHPoaHdPXTq1EjCpu7m4d7tyFSK/oGiWeWSCEdQciAzT6ET9FEGErr9UG5auVz4 # NSHZq1I7WtZbRGz6RmcwdgGpPLD+Q5+wWkqaaezCzrfsqgtmxwXp7LmM5yVkvEYq # 0HitEOcaHCT1Cl+VFsClFbsrad98KAcDV6wIfTgSbL9GjBG7kW8vgZaFbir+XG4j # 5yqdj8lo+DiXtK+JXibfcAVQufciOZzuWhiDnV/nD+qVKOdqcvI= # =O5on # -----END PGP SIGNATURE----- # gpg: Signature made Wed 04 Jun 2025 08:40:32 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
b2a5bf1cf4 |
fork: use pidfd_prepare()
commit
|
||
![]() |
1ced79b25f |
pid: add pidfd_prepare()
commit
|
||
![]() |
042fcb3843 |
This is the 6.1.117 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmc16mIACgkQONu9yGCS aT6V1A/+MrNSR3dN6ALmyHaKnxoYA1PNyFDUyDWFDswPLV8vW8z4daYOk78ieLTX u8RlufF9xpB8kPTN9S/o3R2bcM2pR2inIZ8q5SqTnEpKyjTF1JPTMUunXK6O/GOY swthmAB06q+NNdM8GlBlgnb43paM93JQw9DFeR6FWCdW+Zb4+sGkVQKG0kVuJUS5 vgjjy2u4cgmCgKU7/3tTbDk99Tn+IZ1+Yi3JnUSReANOIAcpEJMnNIwzAkjM4ZOw wrmw4s20KvPNCpiSrlwzvE03gVbmaloirfb//4CmdbX7X+yqolvz73GjxUhGumvp XGjUj8H4GCV4r8YtL8klgxqgsT8BEjbiWRjUkJLNdxfHHWorpAoRiVIFvaP0ETHP QZH5w+6HlkE2ZvlAcAzAHwf2BRsPhFy7FJ966at41IyYqMCFJqCM/K0mDSGS+bY4 C64zysuY2Ev8ot2k0XvfjmSFsTr02PtI+T9F/L75T+zuY6aU6e9aCwdzw5WI7fxL 2UGRBPXj5Q0SINoHrAud89a/8dQvQSP0MizsxsQkFB3HbzzyZzhSLwcXsp5UIO9B +DWja/YmwLIFON8BpyoVdzslHeeyrOCVlhRLEhaarwdm8rSRDM9kpI6kHolApEQ0 K6QEFgDisd1HRAJYt3h/WkpfNcTog01YGB9WhiHIr8k80uAlPTA= =mrdw -----END PGP SIGNATURE----- Merge tag 'v6.1.117' into v6.1/standard/base This is the 6.1.117 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmc16mIACgkQONu9yGCS # aT6V1A/+MrNSR3dN6ALmyHaKnxoYA1PNyFDUyDWFDswPLV8vW8z4daYOk78ieLTX # u8RlufF9xpB8kPTN9S/o3R2bcM2pR2inIZ8q5SqTnEpKyjTF1JPTMUunXK6O/GOY # swthmAB06q+NNdM8GlBlgnb43paM93JQw9DFeR6FWCdW+Zb4+sGkVQKG0kVuJUS5 # vgjjy2u4cgmCgKU7/3tTbDk99Tn+IZ1+Yi3JnUSReANOIAcpEJMnNIwzAkjM4ZOw # wrmw4s20KvPNCpiSrlwzvE03gVbmaloirfb//4CmdbX7X+yqolvz73GjxUhGumvp # XGjUj8H4GCV4r8YtL8klgxqgsT8BEjbiWRjUkJLNdxfHHWorpAoRiVIFvaP0ETHP # QZH5w+6HlkE2ZvlAcAzAHwf2BRsPhFy7FJ966at41IyYqMCFJqCM/K0mDSGS+bY4 # C64zysuY2Ev8ot2k0XvfjmSFsTr02PtI+T9F/L75T+zuY6aU6e9aCwdzw5WI7fxL # 2UGRBPXj5Q0SINoHrAud89a/8dQvQSP0MizsxsQkFB3HbzzyZzhSLwcXsp5UIO9B # +DWja/YmwLIFON8BpyoVdzslHeeyrOCVlhRLEhaarwdm8rSRDM9kpI6kHolApEQ0 # K6QEFgDisd1HRAJYt3h/WkpfNcTog01YGB9WhiHIr8k80uAlPTA= # =mrdw # -----END PGP SIGNATURE----- # gpg: Signature made Thu 14 Nov 2024 07:17:38 AM EST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
d3bcf4069d |
posix-cpu-timers: Clear TICK_DEP_BIT_POSIX_TIMER on clone
[ Upstream commit |
||
![]() |
6a3e72e9c6 |
This is the 6.1.113 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmcRD6QACgkQONu9yGCS aT6Kjg/5AQ+HmrE8dMEDCOeN2noXxUDMAOUoR9JTc+RGJlVQBf74jITg2yYdGqcC gjJz3qIciBLK4DWwmlvFxRtZzUxpQyEz9q+LpOUWOBdzoNNBB+AltbGilxpdEZ3F D2nGHLDHLVxRPs11yQMI5DhBd58QTzGroQAr3mbJlwTJuxFMv250Cjq7WBwUyV2r 2XJjsBxheWkxEkWrEfQ9WbBL50yCQul+9fpDuGe6vA0dEbck3/6YfJ+Q3bjCkhKZ n743f2O+ZoPVAw0IGNn0iNNjIaQrugLjthGEC4Dwb/Afvmvz+EitCeJyNsl8XfAz bA4McJ1oXoic7W6rbcww6JQgAWhnXzPBL96rYonAKBby1bCXWb11wgDXH06JwI+D GWRhp+ny5sZwxN3oWjR5YZPYgsQM4r6I+A2ZhSbx2qKUQkGeZQ145u2rbxcRcp+e LqzT0IIxpKWXb46KHutOq1YGg69ms0BsNNhlFcnZI3jdIQefw/1oWpxOqTVJ2rNt Jz9HWfC5+sHd3+gbbdfg8rhZstA7xgKkdUPdNV8ntPfLEPOTmlimBs8+GRtxPLgV OYoChWrc7UpBc9NDYZKqHH5u7/mXQzt1dOFejVaEk147dUlMAyppjOrcPqxYWvqq 9/wYGBcW0KjXuazyWDaI6jOwhyEzX3doJCS3sbGfYzsCdqMmdYw= =GFiq -----END PGP SIGNATURE----- Merge tag 'v6.1.113' into v6.1/standard/base This is the 6.1.113 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmcRD6QACgkQONu9yGCS # aT6Kjg/5AQ+HmrE8dMEDCOeN2noXxUDMAOUoR9JTc+RGJlVQBf74jITg2yYdGqcC # gjJz3qIciBLK4DWwmlvFxRtZzUxpQyEz9q+LpOUWOBdzoNNBB+AltbGilxpdEZ3F # D2nGHLDHLVxRPs11yQMI5DhBd58QTzGroQAr3mbJlwTJuxFMv250Cjq7WBwUyV2r # 2XJjsBxheWkxEkWrEfQ9WbBL50yCQul+9fpDuGe6vA0dEbck3/6YfJ+Q3bjCkhKZ # n743f2O+ZoPVAw0IGNn0iNNjIaQrugLjthGEC4Dwb/Afvmvz+EitCeJyNsl8XfAz # bA4McJ1oXoic7W6rbcww6JQgAWhnXzPBL96rYonAKBby1bCXWb11wgDXH06JwI+D # GWRhp+ny5sZwxN3oWjR5YZPYgsQM4r6I+A2ZhSbx2qKUQkGeZQ145u2rbxcRcp+e # LqzT0IIxpKWXb46KHutOq1YGg69ms0BsNNhlFcnZI3jdIQefw/1oWpxOqTVJ2rNt # Jz9HWfC5+sHd3+gbbdfg8rhZstA7xgKkdUPdNV8ntPfLEPOTmlimBs8+GRtxPLgV # OYoChWrc7UpBc9NDYZKqHH5u7/mXQzt1dOFejVaEk147dUlMAyppjOrcPqxYWvqq # 9/wYGBcW0KjXuazyWDaI6jOwhyEzX3doJCS3sbGfYzsCdqMmdYw= # =GFiq # -----END PGP SIGNATURE----- # gpg: Signature made Thu 17 Oct 2024 09:22:44 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
3812169643 |
close_range(): fix the logics in descriptor table trimming
commit |
||
![]() |
c4ee42477b |
This is the 6.1.95 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmZ1c7gACgkQONu9yGCS aT6k6w//dJLH5VWQ2Gc3OCzKYKjNGa5vAdMpsqHZmyMUiK8Rhv/38cb9NrAYcFHQ wlxm6sftbPPCHet6GpSiqDB/HDemGtqjCzHng8AywSsaiPhpvki4wvpt6p+hlUmf Lck1qyvyJitoUoUikdWskD4HU02kBXRLHj5k4TxBVTT9FmyG5rjbXRD2pZjI6897 PVni/94hJhBcTV/rqAufLOivKE4gwiYVfa7et9WMD3xiAmN7i5hcYUeBCCXlaE4B wMbYTBcMZF2rz3q5LP1ZC/qotnaT04xSwm8bW21FTji6tsyVAK8XmYIenLunTOgw 3om5GJBYciZ0bHrxugUEz5UenORFS2bMuMQJ0q0fuo5vkVHoSRZt5DnOmtxq4fGN t2/TYFDKp7V52z0FJ3moWwwxBdfCEeZ/+XVKtwzb/rT1fFAfemMrY7TnkAZxbmhv 2PTw+i59hlwrOgw3VeiZDA9gxNDEas9SbwZYFDndTmMA9KtYLj2OGKH1K1rCEDkp tOTWTzWR4Tkd255J3z4WBvw6VCRsun5tSSEBUkDen8QgWtk57XmIzGu+479zINkQ SUqXJA9dFiAPBHSsVGgcz7RsQMi2ubVjM9ZWa9i2CK7IkwAP1qISFqI8Wdthr4M8 UK/SI0RF/M+mMWlxqr6Kyfj7JBZmljqzu+vwiX8D6KgXNp2npbk= =RFmj -----END PGP SIGNATURE----- Merge tag 'v6.1.95' into v6.1/standard/base This is the 6.1.95 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmZ1c7gACgkQONu9yGCS # aT6k6w//dJLH5VWQ2Gc3OCzKYKjNGa5vAdMpsqHZmyMUiK8Rhv/38cb9NrAYcFHQ # wlxm6sftbPPCHet6GpSiqDB/HDemGtqjCzHng8AywSsaiPhpvki4wvpt6p+hlUmf # Lck1qyvyJitoUoUikdWskD4HU02kBXRLHj5k4TxBVTT9FmyG5rjbXRD2pZjI6897 # PVni/94hJhBcTV/rqAufLOivKE4gwiYVfa7et9WMD3xiAmN7i5hcYUeBCCXlaE4B # wMbYTBcMZF2rz3q5LP1ZC/qotnaT04xSwm8bW21FTji6tsyVAK8XmYIenLunTOgw # 3om5GJBYciZ0bHrxugUEz5UenORFS2bMuMQJ0q0fuo5vkVHoSRZt5DnOmtxq4fGN # t2/TYFDKp7V52z0FJ3moWwwxBdfCEeZ/+XVKtwzb/rT1fFAfemMrY7TnkAZxbmhv # 2PTw+i59hlwrOgw3VeiZDA9gxNDEas9SbwZYFDndTmMA9KtYLj2OGKH1K1rCEDkp # tOTWTzWR4Tkd255J3z4WBvw6VCRsun5tSSEBUkDen8QgWtk57XmIzGu+479zINkQ # SUqXJA9dFiAPBHSsVGgcz7RsQMi2ubVjM9ZWa9i2CK7IkwAP1qISFqI8Wdthr4M8 # UK/SI0RF/M+mMWlxqr6Kyfj7JBZmljqzu+vwiX8D6KgXNp2npbk= # =RFmj # -----END PGP SIGNATURE----- # gpg: Signature made Fri 21 Jun 2024 08:36:08 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
04b0c41912 |
Revert "fork: defer linking file vma until vma is fully initialized"
This reverts commit |
||
![]() |
f60cfd5b99 |
This is the 6.1.90 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmYzo7QACgkQONu9yGCS aT7gag/+L3r2MdLi+ARRUuREouP93MrmcLV4NaI+xo1u15TCdAf7OL1R5bjKcA6g QVI2HJfJqCuPai+DzR6OO1at2MfWNWIEXElg67a/aP8HIPEVHh6co68NmavJE2xn +Wdual1QEdRVs7w/OGWrPd37nseOsMUFrflqxwUy1P9ZkYY0iR4Uuz5kdVWpFJLw qz6oFRh2ScoXgn2SWaWH+Z+7bu/Mx6sj3p98zg5AiBKZ+uDQUoH3YC5CpFmiPda3 TaDizOcYcSlzxduHoHG3WHe64bCCJqyc85lTCKDxKVpoK/C8ybuYMnWPkMub2a/t bu7riv9dEhG4TeWN5rjztsa3sZrHYjG9KJnoyJeXX7SN2QfXT+uOXypEI/sgBDgL KU08H+4mSJPtje90JTeJRW0B5+XH2unRr0PCUf+vwjB0cUnHNor8VZOLmvzc4PXd /kXEaOvNrtFpc8L4CR0MRJoR/vMt+yPTJt+X+ARbYOG+86LTlA+5+T7pyVoGkQKY maTJnM/wAl2Y/lwK4x9yOQpV9kJKhVT+kgNskjRQp9h56D+KLEI7J3rratBffXFp hy1lFr3bpTrUk8mDyRtiCB/DWb+AdXkoDClsttLCBFcMJp/a9c2Gk/CLeyqxz63N hBjjgZ8iyYOAcj4m6TeUFJ/FkFKJ5ufvkzZKT+1R6BITy8PbU68= =e8uH -----END PGP SIGNATURE----- Merge tag 'v6.1.90' into v6.1/standard/base This is the 6.1.90 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmYzo7QACgkQONu9yGCS # aT7gag/+L3r2MdLi+ARRUuREouP93MrmcLV4NaI+xo1u15TCdAf7OL1R5bjKcA6g # QVI2HJfJqCuPai+DzR6OO1at2MfWNWIEXElg67a/aP8HIPEVHh6co68NmavJE2xn # +Wdual1QEdRVs7w/OGWrPd37nseOsMUFrflqxwUy1P9ZkYY0iR4Uuz5kdVWpFJLw # qz6oFRh2ScoXgn2SWaWH+Z+7bu/Mx6sj3p98zg5AiBKZ+uDQUoH3YC5CpFmiPda3 # TaDizOcYcSlzxduHoHG3WHe64bCCJqyc85lTCKDxKVpoK/C8ybuYMnWPkMub2a/t # bu7riv9dEhG4TeWN5rjztsa3sZrHYjG9KJnoyJeXX7SN2QfXT+uOXypEI/sgBDgL # KU08H+4mSJPtje90JTeJRW0B5+XH2unRr0PCUf+vwjB0cUnHNor8VZOLmvzc4PXd # /kXEaOvNrtFpc8L4CR0MRJoR/vMt+yPTJt+X+ARbYOG+86LTlA+5+T7pyVoGkQKY # maTJnM/wAl2Y/lwK4x9yOQpV9kJKhVT+kgNskjRQp9h56D+KLEI7J3rratBffXFp # hy1lFr3bpTrUk8mDyRtiCB/DWb+AdXkoDClsttLCBFcMJp/a9c2Gk/CLeyqxz63N # hBjjgZ8iyYOAcj4m6TeUFJ/FkFKJ5ufvkzZKT+1R6BITy8PbU68= # =e8uH # -----END PGP SIGNATURE----- # gpg: Signature made Thu 02 May 2024 10:31:16 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
0c42f7e039 |
fork: defer linking file vma until vma is fully initialized
commit |
||
![]() |
644e73fa08 |
This is the 6.1.55 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmUOrEIACgkQONu9yGCS aT7HOQ/+O2A8FUQlGfMDjz6KjAiQM1tCmSZRat21tUMVEUk99lShCsxV5qLsqr1R z6WmCjhpjySjYVy/gC09WN+as2ybHpfSRB/7nmo/Heu6mf8/NfaZ8QyZs3M4EXyy 2Ip4TRPHxbIpuE6jhdINVkUROPSFHtd2ucQoXIpI9oQ6KxKJx2riiiEKT6xQp5TA CZx+x2O3Id6pAl23CgPbg0bEZxii6xsaBEeG0kcU6zYXO/rYVAuVBujU3QnHqv56 KwAXmknq2FYdCrm5+R+G79EUDRA3HTc1mOOhV0TKQnD8D4J9+W/SFdiihSrRexpJ DQcmJxpRstKsF6EG+5AUoSTuH++QfJCNElIeoXaP1Q270mS1jI2IPzI9j70cRj/h +2fypeKPHedsch78v2A4xZuHl2DFlI+P4+58gP4azCrB7udJN3yEY0s4tVLokpNt pCvaNXAC10trqIEOCgll1mJsHirnH6jhMdVSwwUTYLz4x5MFXGxu+ZDG2lNMz+3v LHa3DftPL1U+Y8Sp2loe2NclLc6H31nq3P1mS0BLCQgA6nH8XgQOeI4QGzGQ24hk T8U6awoCVRURpOP6C6GW6rXfz78TmYNcpkgwMMjpzcGTbtijGN+NGrWFxcbyF7rJ 0IKcjF8PBslP8krym1LPji9y5qi+a5aXeY7s5F2yUXXir9qAyWk= =TfUI -----END PGP SIGNATURE----- Merge tag 'v6.1.55' into v6.1/standard/base This is the 6.1.55 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmUOrEIACgkQONu9yGCS # aT7HOQ/+O2A8FUQlGfMDjz6KjAiQM1tCmSZRat21tUMVEUk99lShCsxV5qLsqr1R # z6WmCjhpjySjYVy/gC09WN+as2ybHpfSRB/7nmo/Heu6mf8/NfaZ8QyZs3M4EXyy # 2Ip4TRPHxbIpuE6jhdINVkUROPSFHtd2ucQoXIpI9oQ6KxKJx2riiiEKT6xQp5TA # CZx+x2O3Id6pAl23CgPbg0bEZxii6xsaBEeG0kcU6zYXO/rYVAuVBujU3QnHqv56 # KwAXmknq2FYdCrm5+R+G79EUDRA3HTc1mOOhV0TKQnD8D4J9+W/SFdiihSrRexpJ # DQcmJxpRstKsF6EG+5AUoSTuH++QfJCNElIeoXaP1Q270mS1jI2IPzI9j70cRj/h # +2fypeKPHedsch78v2A4xZuHl2DFlI+P4+58gP4azCrB7udJN3yEY0s4tVLokpNt # pCvaNXAC10trqIEOCgll1mJsHirnH6jhMdVSwwUTYLz4x5MFXGxu+ZDG2lNMz+3v # LHa3DftPL1U+Y8Sp2loe2NclLc6H31nq3P1mS0BLCQgA6nH8XgQOeI4QGzGQ24hk # T8U6awoCVRURpOP6C6GW6rXfz78TmYNcpkgwMMjpzcGTbtijGN+NGrWFxcbyF7rJ # 0IKcjF8PBslP8krym1LPji9y5qi+a5aXeY7s5F2yUXXir9qAyWk= # =TfUI # -----END PGP SIGNATURE----- # gpg: Signature made Sat 23 Sep 2023 05:13:38 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
3b1107abdc |
kernel/fork: beware of __put_task_struct() calling context
[ Upstream commit
|
||
![]() |
a0e01625bc |
This is the 6.1.44 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmTSg4wACgkQONu9yGCS aT43gg//X7+E83o0Fb/H9EOmOYwQLehJf0bgI7V4cZUt5aVNcqW89OPajCTzqtbj vebt1vuZUDl7jsP8Yjlo1xT8TqjhEG5HoiCrTLzIVdVE5tViEHki19JXMykC4NfC 0wIBWa6rAU9iW8IoydTVfS+t2bhor4cY+ZloUEK5hSKMhWcLod6c9R9ZRAmZeJ7z oemtKpiizhOSgNP4kiNSIaNBme62ek4H71M1AaCOpOIlitUYLhAhYhDhwPuISCIO 56lKlnNYFb+nk0Y27mc5DnYuDeGL9rHtmylAMKqS8R6pF47W8cJvYVUW4UYRghUC J5jGawRaqPGVrtw2yQI2DDf6hauZfkyLdGUIVjtFMi8SKoe4XXU9fsUvwONTsMl0 eV0yjh1k1GUnIZ25O56ocIARSaMiGgYfaV81V78yzDBYrDC2Fg/eEcxmg4tP1kUt 3HW9TB+sZ6mH0GylRdjm7+/0WObbfg2GTKiaCJpP+BGNFzampjsofgRoalmSWrh/ mC+AzDo0+pvo3nQXkoReYpdJbhnApvk3VoT8KqN+gRpQtmXurWF0StIPK7i3qjWF IJm7qzyLfB36pKqht9geWfY29TWPUjosch9kTBQv5CLrWZsOjOVcNJ3LIhZCLIZ+ kgLRQTc5Cyf2uBet3duhRWESl4+JfQ6tiaxYoC3xoqHPEbjN2Ls= =gpHX -----END PGP SIGNATURE----- Merge tag 'v6.1.44' into v6.1/standard/base This is the 6.1.44 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmTSg4wACgkQONu9yGCS # aT43gg//X7+E83o0Fb/H9EOmOYwQLehJf0bgI7V4cZUt5aVNcqW89OPajCTzqtbj # vebt1vuZUDl7jsP8Yjlo1xT8TqjhEG5HoiCrTLzIVdVE5tViEHki19JXMykC4NfC # 0wIBWa6rAU9iW8IoydTVfS+t2bhor4cY+ZloUEK5hSKMhWcLod6c9R9ZRAmZeJ7z # oemtKpiizhOSgNP4kiNSIaNBme62ek4H71M1AaCOpOIlitUYLhAhYhDhwPuISCIO # 56lKlnNYFb+nk0Y27mc5DnYuDeGL9rHtmylAMKqS8R6pF47W8cJvYVUW4UYRghUC # J5jGawRaqPGVrtw2yQI2DDf6hauZfkyLdGUIVjtFMi8SKoe4XXU9fsUvwONTsMl0 # eV0yjh1k1GUnIZ25O56ocIARSaMiGgYfaV81V78yzDBYrDC2Fg/eEcxmg4tP1kUt # 3HW9TB+sZ6mH0GylRdjm7+/0WObbfg2GTKiaCJpP+BGNFzampjsofgRoalmSWrh/ # mC+AzDo0+pvo3nQXkoReYpdJbhnApvk3VoT8KqN+gRpQtmXurWF0StIPK7i3qjWF # IJm7qzyLfB36pKqht9geWfY29TWPUjosch9kTBQv5CLrWZsOjOVcNJ3LIhZCLIZ+ # kgLRQTc5Cyf2uBet3duhRWESl4+JfQ6tiaxYoC3xoqHPEbjN2Ls= # =gpHX # -----END PGP SIGNATURE----- # gpg: Signature made Tue 08 Aug 2023 02:03:56 PM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
e0fd83a193 |
mm: Move mm_cachep initialization to mm_init()
commit
|
||
![]() |
9ae15aaff3 |
x86/mm: Use mm_alloc() in poking_init()
commit
|
||
![]() |
78b6c1da5b |
This is the 6.1.34 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmSJhT4ACgkQONu9yGCS aT5vqg//Y6ARJLsFpbZrV6oJlptaD8VHq+wTgk+oklE8bXM2Y3/3PcxCARtdE/UZ qst6LLnMNsbcCc8F8FWd73FvM74Op9N9th/yxcCmMGu5lim8bVFcKbL/8aYK9KYJ prT4Zyfa9esCaOINlGNw8n8GOnlhaCZN00ozydzGBXZ7t5SpGQAbkhf8P1FjZBwE JAZgu/hmfPMfntcNR2Syft/9XtwXJjt/usNBV9Gt7HJOQjy6AE7jrX4f7KbQ8Oo8 3IpRWkmvV/LDxvTpztfLmESZmHc+tF6V/Fhatcmli873T76iXf+mu3VGh3UhL1w3 cpYtenkgAsliwRjz0Cc19kL0dfAAUM9EBAFFiNLSyVGMzJM0FUKnu0iCT9Xin/4t PmhvwzyrAQu2NRqxgwUaaMmzoqudclugB6VP3Yuf8XnAeMnJCuzO/f72V94+4T/X YwR3QJ4EpZkmyC5m0JEI1hscH4E9YhyMgWT41rrH4P8UOTt0d5Q19mcmZQtzZlIw L/x+KVIvDzGipXLddlYDAe9ozGvmH3iv3VzzkvGnN/aq5bBA+eQC8V9xaXmk1e/q tDHAYtIgysZb5f5BhsQXeATstUooCWCEuv2g+yVWTz5pM3Bp9r+ukYdmBKqPXYjS S3SnBOP0WeAJHJU53XSeYyDYgHH2pDU1Bk9qSCXALEifA+UnZlM= =a6+4 -----END PGP SIGNATURE----- Merge tag 'v6.1.34' into v6.1/standard/base This is the 6.1.34 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmSJhT4ACgkQONu9yGCS # aT5vqg//Y6ARJLsFpbZrV6oJlptaD8VHq+wTgk+oklE8bXM2Y3/3PcxCARtdE/UZ # qst6LLnMNsbcCc8F8FWd73FvM74Op9N9th/yxcCmMGu5lim8bVFcKbL/8aYK9KYJ # prT4Zyfa9esCaOINlGNw8n8GOnlhaCZN00ozydzGBXZ7t5SpGQAbkhf8P1FjZBwE # JAZgu/hmfPMfntcNR2Syft/9XtwXJjt/usNBV9Gt7HJOQjy6AE7jrX4f7KbQ8Oo8 # 3IpRWkmvV/LDxvTpztfLmESZmHc+tF6V/Fhatcmli873T76iXf+mu3VGh3UhL1w3 # cpYtenkgAsliwRjz0Cc19kL0dfAAUM9EBAFFiNLSyVGMzJM0FUKnu0iCT9Xin/4t # PmhvwzyrAQu2NRqxgwUaaMmzoqudclugB6VP3Yuf8XnAeMnJCuzO/f72V94+4T/X # YwR3QJ4EpZkmyC5m0JEI1hscH4E9YhyMgWT41rrH4P8UOTt0d5Q19mcmZQtzZlIw # L/x+KVIvDzGipXLddlYDAe9ozGvmH3iv3VzzkvGnN/aq5bBA+eQC8V9xaXmk1e/q # tDHAYtIgysZb5f5BhsQXeATstUooCWCEuv2g+yVWTz5pM3Bp9r+ukYdmBKqPXYjS # S3SnBOP0WeAJHJU53XSeYyDYgHH2pDU1Bk9qSCXALEifA+UnZlM= # =a6+4 # -----END PGP SIGNATURE----- # gpg: Signature made Wed 14 Jun 2023 05:15:42 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
d7612a922b |
bpf: Fix UAF in task local storage
[ Upstream commit |
||
![]() |
524858820f |
This is the 6.1.24 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmQ4GVwACgkQONu9yGCS aT5BUQ//UaxJ5BMVfcWduTcLXcEdS50rmbQAKnTyZZDwGyUobTBRUbqBQj0BdBvb LubODrgTMPD/5wSJDEidHFvIlk7IHnDFL/GApcAxDdZYaccJqEtJQFO/vMt0eCNW y0rjKaUo3Yp7xe9A7hZFSZwCTQGNDNtmepTNIdADIUp2VPff1zoGQry10X3MFkV5 4vjy6gmbCX8ouL5bwdiCPSvB7U5nMZC+vPn/r3GnSeNnOTkd5YRJ8eQmzYlONlU4 IyxZmi3FXhX8ga5I6l7dFKIM9Akqypv9PJ09fL1yNL2JIDdK2A/qLJe3FUbCOn1K 7hLlNvloxw2REqYi7k5pgTYbj7cu48dAi4pO3Cnuo6AIZEUMSfEMJocgWdrT4oNM Agfk5H1X8OYnaQzPUEAMJZBt/pW7Y2v/VTtETU88XepoZewre0TQBJmxU3EaQW4M E008utRqhpv4DapDTMnWNnvzI3jOB2qUYiH9buJM+ORfoCGa2+LlVqFDhBlakeLL PQm9dF0TrYw6aLU6ICjR+0zPXy+KNzd8EhtSPImNq8mgGebu5Jv9d83n3UTTJaIY o31ULvBps8vFdMvlTeyRgIS3Z+zJjIxjSOd2E2iqgq8LZ/5kdunbp0u50JQ2FD2u RQghYJAMJZDksMuMKzJwNLqZawYbPTroM+YYGUwgOO1hOdhOoYo= =lWag -----END PGP SIGNATURE----- Merge tag 'v6.1.24' into v6.1/standard/base This is the 6.1.24 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmQ4GVwACgkQONu9yGCS # aT5BUQ//UaxJ5BMVfcWduTcLXcEdS50rmbQAKnTyZZDwGyUobTBRUbqBQj0BdBvb # LubODrgTMPD/5wSJDEidHFvIlk7IHnDFL/GApcAxDdZYaccJqEtJQFO/vMt0eCNW # y0rjKaUo3Yp7xe9A7hZFSZwCTQGNDNtmepTNIdADIUp2VPff1zoGQry10X3MFkV5 # 4vjy6gmbCX8ouL5bwdiCPSvB7U5nMZC+vPn/r3GnSeNnOTkd5YRJ8eQmzYlONlU4 # IyxZmi3FXhX8ga5I6l7dFKIM9Akqypv9PJ09fL1yNL2JIDdK2A/qLJe3FUbCOn1K # 7hLlNvloxw2REqYi7k5pgTYbj7cu48dAi4pO3Cnuo6AIZEUMSfEMJocgWdrT4oNM # Agfk5H1X8OYnaQzPUEAMJZBt/pW7Y2v/VTtETU88XepoZewre0TQBJmxU3EaQW4M # E008utRqhpv4DapDTMnWNnvzI3jOB2qUYiH9buJM+ORfoCGa2+LlVqFDhBlakeLL # PQm9dF0TrYw6aLU6ICjR+0zPXy+KNzd8EhtSPImNq8mgGebu5Jv9d83n3UTTJaIY # o31ULvBps8vFdMvlTeyRgIS3Z+zJjIxjSOd2E2iqgq8LZ/5kdunbp0u50JQ2FD2u # RQghYJAMJZDksMuMKzJwNLqZawYbPTroM+YYGUwgOO1hOdhOoYo= # =lWag # -----END PGP SIGNATURE----- # gpg: Signature made Thu 13 Apr 2023 11:01:48 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
1c87a6f82a |
mm: enable maple tree RCU mode by default.
commit |
||
![]() |
423e199669 |
This is the 6.1.20 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmQUHEcACgkQONu9yGCS aT5GehAAwp60eX2Yotr+xSoCHKg9DqTsR6LImBbyHvzWA6L/GsU5LalWAON56avp avbtvozo7AmnNBMOlaZRYUqGTPGhiOc3oh5LIBM5ung77j0pkJzhd2KjzTO6FACE sIAVn7dnEt+1u1SsglwE+Cy79yrgPJqnnS9RUOPxwayqP0S9UImLEarvV9DRSNjf 8g4c5cT1iWT/qiDMiHK9dMYnYlZxIhWDBnyyrAlgAiFvNY6nUpbVJJmMz79pP3uH XWUNOLR4ZNhiGfZBOg/noSV3f2DfrAryRY43yoJrONi5aAowSM/FzRCJaJElGXvS xB6yZQ32fZocFDQmoIWyfGAT7FU3kHbMXWHQCfMHJfDJVsbLfuf8aNgKiTC5EFgk 1UBYZCJRc33jLYMt5BZsHk2gOgThrxaJMyxCyqSgTypqxAo0y0DjHSi6pjHSb1gA xW9YVPz0HlU7Cey427p4ktkNX+Sh1SIaLfOGPrFSQDYTU8y+38DEbNRXXAOUILyI /RQt3YM/qgst/iWM+P4Q1G7XSzFHiRh0MOJXlUQwX+C66KEd1bSSm0l+D9SNnuwn z/wzqp/UG+KXRTvZanLQDyFfqNaWBoAAXB5vS1k559pTU1Q3h526zTpNzL9HwZGC uBIcCGENfoBBRdF1aguft2EwXWQd0UpQdUnxB4cUXvLoqgwB0KI= =hkv5 -----END PGP SIGNATURE----- Merge tag 'v6.1.20' into v6.1/standard/base This is the 6.1.20 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmQUHEcACgkQONu9yGCS # aT5GehAAwp60eX2Yotr+xSoCHKg9DqTsR6LImBbyHvzWA6L/GsU5LalWAON56avp # avbtvozo7AmnNBMOlaZRYUqGTPGhiOc3oh5LIBM5ung77j0pkJzhd2KjzTO6FACE # sIAVn7dnEt+1u1SsglwE+Cy79yrgPJqnnS9RUOPxwayqP0S9UImLEarvV9DRSNjf # 8g4c5cT1iWT/qiDMiHK9dMYnYlZxIhWDBnyyrAlgAiFvNY6nUpbVJJmMz79pP3uH # XWUNOLR4ZNhiGfZBOg/noSV3f2DfrAryRY43yoJrONi5aAowSM/FzRCJaJElGXvS # xB6yZQ32fZocFDQmoIWyfGAT7FU3kHbMXWHQCfMHJfDJVsbLfuf8aNgKiTC5EFgk # 1UBYZCJRc33jLYMt5BZsHk2gOgThrxaJMyxCyqSgTypqxAo0y0DjHSi6pjHSb1gA # xW9YVPz0HlU7Cey427p4ktkNX+Sh1SIaLfOGPrFSQDYTU8y+38DEbNRXXAOUILyI # /RQt3YM/qgst/iWM+P4Q1G7XSzFHiRh0MOJXlUQwX+C66KEd1bSSm0l+D9SNnuwn # z/wzqp/UG+KXRTvZanLQDyFfqNaWBoAAXB5vS1k559pTU1Q3h526zTpNzL9HwZGC # uBIcCGENfoBBRdF1aguft2EwXWQd0UpQdUnxB4cUXvLoqgwB0KI= # =hkv5 # -----END PGP SIGNATURE----- # gpg: Signature made Fri 17 Mar 2023 03:52:39 AM EDT # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
120f7a9287 |
fork: allow CLONE_NEWTIME in clone3 flags
commit |
||
![]() |
bdde6f2ecd |
This is the 6.1.2 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmOwLA8ACgkQONu9yGCS aT6RYxAAhsnIlIBCtaca7Uio9TZdluV7Fzn3c9+QogVisrwVMTtP1iHX43ofFC89 BCmiQOS9fForddjNP0vkqjZlshMYYSCDPX0s0mK6R4UoNPVg8oehZ9vJfOiR3MMX C3fApQQhYf5Bx/rC50i58ChdAw/Dqj0WNBZX/ZWod4B2JKUq7ORk7GjnorfuJxuP xO2K6KdpajZufkxtTyKtwqK8FG3dkZP9YF6MqFIvTfQ8qkLnQsrL3moFGU9giSH5 swRCFH/QII+kumKS2bir87QHz0CmvtSa3Ob4DyKiJMkNN8tspE7nOMkds4usCov6 +yM84sWp03j2RKFyadctAMKwdH16IGU0kdgqlhb9OmzGNRvX6/l5q4+QzqzPJHHQ F+v/PEJoKz3K6CK2ai8DPXoTUMgDDCaYDHg139Tv2Dj/ulDg9xzJ+CS6WBMQxMoU xO1OWhpLMDKT8soPogGY13yOsSbhPY6ef3+//eRczxLf8bg3qzoKo362PjqHVxlq IY01Ul+MB3M4NdFuFNMKM2/DBHn9qBeoZdQxnQ/vpxhBbpP2hIyEflyfsUQOmUYU lWBcnxbSLxf87CmJ3f1VSsms6kbgnxYJyNBgkXiU3WHFfcRZqoU/R+SFu2THRMPt ugor1zCHNxBBIdDEMRDWJvDTt34vRsT51Xbig+hH5BVdiKQzQ3k= =MYDV -----END PGP SIGNATURE----- Merge tag 'v6.1.2' into v6.1/standard/base This is the 6.1.2 stable release # gpg: Signature made Sat 31 Dec 2022 07:33:19 AM EST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key |
||
![]() |
5b81f0c6c6 |
seccomp: Move copy_seccomp() to no failure path.
[ Upstream commit |
||
![]() |
e6537c94f0 |
aufs6: mmap
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> |
||
![]() |
676cb49573 |
- hfs and hfsplus kmap API modernization from Fabio Francesco
- Valentin Schneider makes crash-kexec work properly when invoked from an NMI-time panic. - ntfs bugfixes from Hawkins Jiawei - Jiebin Sun improves IPC msg scalability by replacing atomic_t's with percpu counters. - nilfs2 cleanups from Minghao Chi - lots of other single patches all over the tree! -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCY0Yf0gAKCRDdBJ7gKXxA joapAQDT1d1zu7T8yf9cQXkYnZVuBKCjxKE/IsYvqaq1a42MjQD/SeWZg0wV05B8 DhJPj9nkEp6R3Rj3Mssip+3vNuceAQM= =lUQY -----END PGP SIGNATURE----- Merge tag 'mm-nonmm-stable-2022-10-11' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Pull non-MM updates from Andrew Morton: - hfs and hfsplus kmap API modernization (Fabio Francesco) - make crash-kexec work properly when invoked from an NMI-time panic (Valentin Schneider) - ntfs bugfixes (Hawkins Jiawei) - improve IPC msg scalability by replacing atomic_t's with percpu counters (Jiebin Sun) - nilfs2 cleanups (Minghao Chi) - lots of other single patches all over the tree! * tag 'mm-nonmm-stable-2022-10-11' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (71 commits) include/linux/entry-common.h: remove has_signal comment of arch_do_signal_or_restart() prototype proc: test how it holds up with mapping'less process mailmap: update Frank Rowand email address ia64: mca: use strscpy() is more robust and safer init/Kconfig: fix unmet direct dependencies ia64: update config files nilfs2: replace WARN_ONs by nilfs_error for checkpoint acquisition failure fork: remove duplicate included header files init/main.c: remove unnecessary (void*) conversions proc: mark more files as permanent nilfs2: remove the unneeded result variable nilfs2: delete unnecessary checks before brelse() checkpatch: warn for non-standard fixes tag style usr/gen_init_cpio.c: remove unnecessary -1 values from int file ipc/msg: mitigate the lock contention with percpu counter percpu: add percpu_counter_add_local and percpu_counter_sub_local fs/ocfs2: fix repeated words in comments relay: use kvcalloc to alloc page array in relay_alloc_page_array proc: make config PROC_CHILDREN depend on PROC_FS fs: uninline inode_maybe_inc_iversion() ... |
||
![]() |
ef79361b26 |
fork: remove duplicate included header files
linux/sched/mm.h is included more than once. Link: https://lkml.kernel.org/r/20220912071556.16811-1-xu.panda@zte.com.cn Signed-off-by: Xu Panda <xu.panda@zte.com.cn> Reported-by: Zeal Robot <zealci@zte.com.cn> Cc: Andy Lutomirski <luto@kernel.org> Cc: Christian Brauner (Microsoft) <brauner@kernel.org> Cc: "Eric W . Biederman" <ebiederm@xmission.com> Cc: Fenghua Yu <fenghua.yu@intel.com> Cc: Liam Howlett <liam.howlett@oracle.com> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
27bc50fc90 |
- Yu Zhao's Multi-Gen LRU patches are here. They've been under test in
linux-next for a couple of months without, to my knowledge, any negative reports (or any positive ones, come to that). - Also the Maple Tree from Liam R. Howlett. An overlapping range-based tree for vmas. It it apparently slight more efficient in its own right, but is mainly targeted at enabling work to reduce mmap_lock contention. Liam has identified a number of other tree users in the kernel which could be beneficially onverted to mapletrees. Yu Zhao has identified a hard-to-hit but "easy to fix" lockdep splat (https://lkml.kernel.org/r/CAOUHufZabH85CeUN-MEMgL8gJGzJEWUrkiM58JkTbBhh-jew0Q@mail.gmail.com). This has yet to be addressed due to Liam's unfortunately timed vacation. He is now back and we'll get this fixed up. - Dmitry Vyukov introduces KMSAN: the Kernel Memory Sanitizer. It uses clang-generated instrumentation to detect used-unintialized bugs down to the single bit level. KMSAN keeps finding bugs. New ones, as well as the legacy ones. - Yang Shi adds a userspace mechanism (madvise) to induce a collapse of memory into THPs. - Zach O'Keefe has expanded Yang Shi's madvise(MADV_COLLAPSE) to support file/shmem-backed pages. - userfaultfd updates from Axel Rasmussen - zsmalloc cleanups from Alexey Romanov - cleanups from Miaohe Lin: vmscan, hugetlb_cgroup, hugetlb and memory-failure - Huang Ying adds enhancements to NUMA balancing memory tiering mode's page promotion, with a new way of detecting hot pages. - memcg updates from Shakeel Butt: charging optimizations and reduced memory consumption. - memcg cleanups from Kairui Song. - memcg fixes and cleanups from Johannes Weiner. - Vishal Moola provides more folio conversions - Zhang Yi removed ll_rw_block() :( - migration enhancements from Peter Xu - migration error-path bugfixes from Huang Ying - Aneesh Kumar added ability for a device driver to alter the memory tiering promotion paths. For optimizations by PMEM drivers, DRM drivers, etc. - vma merging improvements from Jakub Matěn. - NUMA hinting cleanups from David Hildenbrand. - xu xin added aditional userspace visibility into KSM merging activity. - THP & KSM code consolidation from Qi Zheng. - more folio work from Matthew Wilcox. - KASAN updates from Andrey Konovalov. - DAMON cleanups from Kaixu Xia. - DAMON work from SeongJae Park: fixes, cleanups. - hugetlb sysfs cleanups from Muchun Song. - Mike Kravetz fixes locking issues in hugetlbfs and in hugetlb core. -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCY0HaPgAKCRDdBJ7gKXxA joPjAQDZ5LlRCMWZ1oxLP2NOTp6nm63q9PWcGnmY50FjD/dNlwEAnx7OejCLWGWf bbTuk6U2+TKgJa4X7+pbbejeoqnt5QU= =xfWx -----END PGP SIGNATURE----- Merge tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Pull MM updates from Andrew Morton: - Yu Zhao's Multi-Gen LRU patches are here. They've been under test in linux-next for a couple of months without, to my knowledge, any negative reports (or any positive ones, come to that). - Also the Maple Tree from Liam Howlett. An overlapping range-based tree for vmas. It it apparently slightly more efficient in its own right, but is mainly targeted at enabling work to reduce mmap_lock contention. Liam has identified a number of other tree users in the kernel which could be beneficially onverted to mapletrees. Yu Zhao has identified a hard-to-hit but "easy to fix" lockdep splat at [1]. This has yet to be addressed due to Liam's unfortunately timed vacation. He is now back and we'll get this fixed up. - Dmitry Vyukov introduces KMSAN: the Kernel Memory Sanitizer. It uses clang-generated instrumentation to detect used-unintialized bugs down to the single bit level. KMSAN keeps finding bugs. New ones, as well as the legacy ones. - Yang Shi adds a userspace mechanism (madvise) to induce a collapse of memory into THPs. - Zach O'Keefe has expanded Yang Shi's madvise(MADV_COLLAPSE) to support file/shmem-backed pages. - userfaultfd updates from Axel Rasmussen - zsmalloc cleanups from Alexey Romanov - cleanups from Miaohe Lin: vmscan, hugetlb_cgroup, hugetlb and memory-failure - Huang Ying adds enhancements to NUMA balancing memory tiering mode's page promotion, with a new way of detecting hot pages. - memcg updates from Shakeel Butt: charging optimizations and reduced memory consumption. - memcg cleanups from Kairui Song. - memcg fixes and cleanups from Johannes Weiner. - Vishal Moola provides more folio conversions - Zhang Yi removed ll_rw_block() :( - migration enhancements from Peter Xu - migration error-path bugfixes from Huang Ying - Aneesh Kumar added ability for a device driver to alter the memory tiering promotion paths. For optimizations by PMEM drivers, DRM drivers, etc. - vma merging improvements from Jakub Matěn. - NUMA hinting cleanups from David Hildenbrand. - xu xin added aditional userspace visibility into KSM merging activity. - THP & KSM code consolidation from Qi Zheng. - more folio work from Matthew Wilcox. - KASAN updates from Andrey Konovalov. - DAMON cleanups from Kaixu Xia. - DAMON work from SeongJae Park: fixes, cleanups. - hugetlb sysfs cleanups from Muchun Song. - Mike Kravetz fixes locking issues in hugetlbfs and in hugetlb core. Link: https://lkml.kernel.org/r/CAOUHufZabH85CeUN-MEMgL8gJGzJEWUrkiM58JkTbBhh-jew0Q@mail.gmail.com [1] * tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (555 commits) hugetlb: allocate vma lock for all sharable vmas hugetlb: take hugetlb vma_lock when clearing vma_lock->vma pointer hugetlb: fix vma lock handling during split vma and range unmapping mglru: mm/vmscan.c: fix imprecise comments mm/mglru: don't sync disk for each aging cycle mm: memcontrol: drop dead CONFIG_MEMCG_SWAP config symbol mm: memcontrol: use do_memsw_account() in a few more places mm: memcontrol: deprecate swapaccounting=0 mode mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled mm/secretmem: remove reduntant return value mm/hugetlb: add available_huge_pages() func mm: remove unused inline functions from include/linux/mm_inline.h selftests/vm: add selftest for MADV_COLLAPSE of uffd-minor memory selftests/vm: add file/shmem MADV_COLLAPSE selftest for cleared pmd selftests/vm: add thp collapse shmem testing selftests/vm: add thp collapse file and tmpfs testing selftests/vm: modularize thp collapse memory operations selftests/vm: dedup THP helpers mm/khugepaged: add tracepoint to hpage_collapse_scan_file() mm/madvise: add file and shmem support to MADV_COLLAPSE ... |
||
![]() |
30c999937f |
Scheduler changes for v6.1:
- Debuggability: - Change most occurances of BUG_ON() to WARN_ON_ONCE() - Reorganize & fix TASK_ state comparisons, turn it into a bitmap - Update/fix misc scheduler debugging facilities - Load-balancing & regular scheduling: - Improve the behavior of the scheduler in presence of lot of SCHED_IDLE tasks - in particular they should not impact other scheduling classes. - Optimize task load tracking, cleanups & fixes - Clean up & simplify misc load-balancing code - Freezer: - Rewrite the core freezer to behave better wrt thawing and be simpler in general, by replacing PF_FROZEN with TASK_FROZEN & fixing/adjusting all the fallout. - Deadline scheduler: - Fix the DL capacity-aware code - Factor out dl_task_is_earliest_deadline() & replenish_dl_new_period() - Relax/optimize locking in task_non_contending() - Cleanups: - Factor out the update_current_exec_runtime() helper - Various cleanups, simplifications Signed-off-by: Ingo Molnar <mingo@kernel.org> -----BEGIN PGP SIGNATURE----- iQJFBAABCgAvFiEEBpT5eoXrXCwVQwEKEnMQ0APhK1gFAmM/01cRHG1pbmdvQGtl cm5lbC5vcmcACgkQEnMQ0APhK1geZA/+PB4KC1T9aVxzaTHI36R03YgJYZmIdtxw wTf02MixePmz+gQCbepJbempGOh5ST28aOcI0xhdYOql5B63MaUBBMlB0HvGUyDG IU3zETqLMRtAbnSTdQFv8m++ECUtZYp8/x1FCel4WO7ya4ETkRu1NRfCoUepEhpZ aVAlae9LH3NBaF9t7s0PT2lTjf3pIzMFRkddJ0ywJhbFR3VnWat05fAK+J6fGY8+ LS54coefNlJD4oDh5TY8uniL1j5SmWmmwbk9Cdj7bLU5P3dFSS0/+5FJNHJPVGDE srGT7wstRUcDrN0CnZo48VIUBiApJCCDqTfJYi9wNYd0NAHvwY6MIJJgEIY8mKsI L/qH26H81Wt+ezSZ/5JIlGlZ/LIeNaa6OO/fbWEYABBQogvvx3nxsRNUYKSQzumH CnSBasBjLnjWyLlK4qARM9cI7NFSEK6NUigrEx/7h8JFu/8T4DlSy6LsF1HUyKgq 4+FJLAqG6cL0tcwB/fHYd0oRESN8dStnQhGxSojgufwLc7dlFULvCYF5JM/dX+/V IKwbOfIOeOn6ViMtSOXAEGdII+IQ2/ZFPwr+8Z5JC7NzvTVL6xlu/3JXkLZR3L7o yaXTSaz06h1vil7Z+GRf7RHc+wUeGkEpXh5vnarGZKXivhFdWsBdROIJANK+xR0i TeSLCxQxXlU= =KjMD -----END PGP SIGNATURE----- Merge tag 'sched-core-2022-10-07' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull scheduler updates from Ingo Molnar: "Debuggability: - Change most occurances of BUG_ON() to WARN_ON_ONCE() - Reorganize & fix TASK_ state comparisons, turn it into a bitmap - Update/fix misc scheduler debugging facilities Load-balancing & regular scheduling: - Improve the behavior of the scheduler in presence of lot of SCHED_IDLE tasks - in particular they should not impact other scheduling classes. - Optimize task load tracking, cleanups & fixes - Clean up & simplify misc load-balancing code Freezer: - Rewrite the core freezer to behave better wrt thawing and be simpler in general, by replacing PF_FROZEN with TASK_FROZEN & fixing/adjusting all the fallout. Deadline scheduler: - Fix the DL capacity-aware code - Factor out dl_task_is_earliest_deadline() & replenish_dl_new_period() - Relax/optimize locking in task_non_contending() Cleanups: - Factor out the update_current_exec_runtime() helper - Various cleanups, simplifications" * tag 'sched-core-2022-10-07' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (41 commits) sched: Fix more TASK_state comparisons sched: Fix TASK_state comparisons sched/fair: Move call to list_last_entry() in detach_tasks sched/fair: Cleanup loop_max and loop_break sched/fair: Make sure to try to detach at least one movable task sched: Show PF_flag holes freezer,sched: Rewrite core freezer logic sched: Widen TAKS_state literals sched/wait: Add wait_event_state() sched/completion: Add wait_for_completion_state() sched: Add TASK_ANY for wait_task_inactive() sched: Change wait_task_inactive()s match_state freezer,umh: Clean up freezer/initrd interaction freezer: Have {,un}lock_system_sleep() save/restore flags sched: Rename task_running() to task_on_cpu() sched/fair: Cleanup for SIS_PROP sched/fair: Default to false in test_idle_cores() sched/fair: Remove useless check in select_idle_core() sched/fair: Avoid double search on same cpu sched/fair: Remove redundant check in select_idle_smt() ... |
||
![]() |
493ffd6605 |
ucounts: Split rlimit and ucount values and max values
After the ucount rlimit code was merged a bunch of small but siginificant bugs were found and fixed. At the time it was realized that part of the problem was that while the ucount rlimits were very similar to the oridinary ucounts (in being nested counts with limits) the semantics were slightly different and the code would be less error prone if there was less sharing. This is the long awaited cleanup that should hopefully keep things more comprehensible and less error prone for whoever needs to touch that code next. Alexey Gladkov (1): ucounts: Split rlimit and ucount values and max values fs/exec.c | 2 +- fs/proc/array.c | 2 +- include/linux/user_namespace.h | 35 ++++++++++++++++++++++------------- kernel/fork.c | 12 ++++++------ kernel/sys.c | 2 +- kernel/ucount.c | 34 +++++++++++++++------------------- kernel/user_namespace.c | 10 +++++----- 7 files changed, 51 insertions(+), 46 deletions(-) -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEgjlraLDcwBA2B+6cC/v6Eiajj0AFAmM7U4cACgkQC/v6Eiaj j0AbRA//RVrGJ9n5iYyHM7WgeoTlFbaupEyLTq5dEpkOMD9CEB4OpMymGA/VXbeX cjgF5dqykfrdpYBwJdosl1fgq15ZFe9ChKhPGQkI5CGlwyRYTl2kq+FrZLC790s8 c4TN3fKO1DyQPn5+UNzlBgLP8ofiUqeScZJDGa+LeMlUIv1OFS3m05jHuG/uzl6b bbbdcn61tFKOFCapbE72hWusEQssPOAN+dSY1/lwKO05WOKR0N2CR0EHyZhW2Owd GIQ27Zh5ed/9xRNlxa8VIa+JDfuATbPeoWcvRmiWSEoAxKtPBUf8lwcltlHBUcKK 72MH+KU9AaIZ1prq9ng4xEaM+vXiSSNspYB8siwph7au1gWx1Yu2yYVavEPeFB9o C0JaD7kTh6Mhk6xdPhnmFUHFOLLGC5LdnBcIwwoMb1jlwP4QJRVucbjpqaOptoiE SeWhRRKUBwpcQdztQZCR+X0h1paHRJJXplHFmeEGcMviGWntgKUaxXJQ4BJrnRTO pagn7h181KVF7u9Toh0IWzrd322mXNqmcgwhzE/S9pa5EJMQHt7qYkDzQCgEwoap JmIld9tKkv/0fYMOHordjMb1OY37feI7FyDAuZuLP1ZWYgKhOq0LrD5x8PzKmoyM 6oKAOfXZUVT/Pnw21nEzAtHsazV3mLRpW+gLLiLSiWoSaYT4x14= =kjVh -----END PGP SIGNATURE----- Merge tag 'ucount-rlimits-cleanups-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace Pull ucounts update from Eric Biederman: "Split rlimit and ucount values and max values After the ucount rlimit code was merged a bunch of small but siginificant bugs were found and fixed. At the time it was realized that part of the problem was that while the ucount rlimits were very similar to the oridinary ucounts (in being nested counts with limits) the semantics were slightly different and the code would be less error prone if there was less sharing. This is the long awaited cleanup that should hopefully keep things more comprehensible and less error prone for whoever needs to touch that code next" * tag 'ucount-rlimits-cleanups-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: ucounts: Split rlimit and ucount values and max values |
||
![]() |
e572410e47 |
ptrace: Stop supporting SIGKILL for PTRACE_EVENT_EXIT
Recently I had a conversation where it was pointed out to me that SIGKILL sent to a tracee stropped in PTRACE_EVENT_EXIT is quite difficult for a tracer to handle. Keeping SIGKILL working after the process has been killed is pain from an implementation point of view. So since the debuggers don't want this behavior let's see if we can remove this wart for the userspace API If a regression is detected it should only need to be the last change that is the reverted. The other two are just general cleanups that make the last patch simpler. Eric W. Biederman (3): signal: Ensure SIGNAL_GROUP_EXIT gets set in do_group_exit signal: Guarantee that SIGNAL_GROUP_EXIT is set on process exit signal: Drop signals received after a fatal signal has been processed fs/coredump.c | 2 +- include/linux/sched/signal.h | 1 + kernel/exit.c | 20 +++++++++++++++++++- kernel/fork.c | 2 ++ kernel/signal.c | 3 ++- 5 files changed, 25 insertions(+), 3 deletions(-) -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEgjlraLDcwBA2B+6cC/v6Eiajj0AFAmM7U40ACgkQC/v6Eiaj j0B7eRAAst6EW4nkxiDBN/PRo43Kz7tkYCZGLAq73vZAaKkyTFSwghT85cZwTsuc px/iDPWZpSGdIeHhdt1giJeuFG0FuoMR9prQVx3z/fM6KLXEJb86OtW1c1uW00Bh TkhVPQiF/9bc+Eb/nRKF61NA4sP0OXwO1+t/zBL4clekO9vFLP1DpRBE9OrNlHq2 NlDqoPqq6SsKYG8f+J2LJKKzRWLICvHCtz4uUt6O11Wt/PH2TZYdYnXf/2vvZyzS SOs8kQjw4QPSptcNH/LIZz0WNHagn1uU/2/T106LOgPgcr515T4MhqOK+Wp95BjA 0RrhsfdMD+7HArqLmt9VKgKO9Gs+T/M6jQZgpUyzlw3qPorKUGu4s9UnUgS7l4uz oNV9no1Ei2fQ+YR6RBR74579a45FWkqRBsaia59KFCzZxRsQz8VB1cqcIgl9dFUA f81qt9FiX8duVYZIcoT79BvV1bQ3LGwyygrH+X3sDTQSdN/aeZ24JdGP2MNtYO/c jWN/mMVHc1xOsYmACVGETWhZf0Y7lGGBYSIJ92jT2HxIuEiqmFE4kngRjKcYgL/G 1/o9z8VntMq5t+ZcQY5WfK/WpSeSPXa6TsP80PEm/hvdMwZLEO4IzCR+gPJB6oJS KPQ3EZfRCB2Jb1qBmcpbleA/RBA0iJUZtBvtIPI7QmMTR+VRdhc= =gX4y -----END PGP SIGNATURE----- Merge tag 'signal-for-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace Pull ptrace update from Eric Biederman: "ptrace: Stop supporting SIGKILL for PTRACE_EVENT_EXIT Recently I had a conversation where it was pointed out to me that SIGKILL sent to a tracee stropped in PTRACE_EVENT_EXIT is quite difficult for a tracer to handle. Keeping SIGKILL working after the process has been killed is pain from an implementation point of view. So since the debuggers don't want this behavior let's see if we can remove this wart for the userspace API If a regression is detected it should only need to be the last change that is the reverted. The other two are just general cleanups that make the last patch simpler" * tag 'signal-for-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: signal: Drop signals received after a fatal signal has been processed signal: Guarantee that SIGNAL_GROUP_EXIT is set on process exit signal: Ensure SIGNAL_GROUP_EXIT gets set in do_group_exit |
||
![]() |
50b5e49ca6 |
kmsan: handle task creation and exiting
Tell KMSAN that a new task is created, so the tool creates a backing metadata structure for that task. Link: https://lkml.kernel.org/r/20220915150417.722975-17-glider@google.com Signed-off-by: Alexander Potapenko <glider@google.com> Cc: Alexander Viro <viro@zeniv.linux.org.uk> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Andrey Konovalov <andreyknvl@gmail.com> Cc: Andrey Konovalov <andreyknvl@google.com> Cc: Andy Lutomirski <luto@kernel.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Borislav Petkov <bp@alien8.de> Cc: Christoph Hellwig <hch@lst.de> Cc: Christoph Lameter <cl@linux.com> Cc: David Rientjes <rientjes@google.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Eric Biggers <ebiggers@google.com> Cc: Eric Biggers <ebiggers@kernel.org> Cc: Eric Dumazet <edumazet@google.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Herbert Xu <herbert@gondor.apana.org.au> Cc: Ilya Leoshkevich <iii@linux.ibm.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jens Axboe <axboe@kernel.dk> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Kees Cook <keescook@chromium.org> Cc: Marco Elver <elver@google.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Matthew Wilcox <willy@infradead.org> Cc: Michael S. Tsirkin <mst@redhat.com> Cc: Pekka Enberg <penberg@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Petr Mladek <pmladek@suse.com> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Vasily Gorbik <gor@linux.ibm.com> Cc: Vegard Nossum <vegard.nossum@oracle.com> Cc: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
8d9bfb2608 |
hugetlb: add vma based lock for pmd sharing
Allocate a new hugetlb_vma_lock structure and hang off vm_private_data for synchronization use by vmas that could be involved in pmd sharing. This data structure contains a rw semaphore that is the primary tool used for synchronization. This new structure is ref counted, so that it can exist when NOT attached to a vma. This is only helpful in resolving lock ordering issues where code may need to obtain the vma_lock while there are no guarantees the vma may go away. By obtaining a ref on the structure, it can be guaranteed that at least the rw semaphore will not go away. Only add infrastructure for the new lock here. Actual use will be added in subsequent patches. [mike.kravetz@oracle.com: fix build issue for missing hugetlb_vma_lock_release] Link: https://lkml.kernel.org/r/YyNUtA1vRASOE4+M@monkey Link: https://lkml.kernel.org/r/20220914221810.95771-7-mike.kravetz@oracle.com Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com> Reviewed-by: Miaohe Lin <linmiaohe@huawei.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> Cc: Axel Rasmussen <axelrasmussen@google.com> Cc: David Hildenbrand <david@redhat.com> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: James Houghton <jthoughton@google.com> Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> Cc: Michal Hocko <mhocko@suse.com> Cc: Mina Almasry <almasrymina@google.com> Cc: Muchun Song <songmuchun@bytedance.com> Cc: Naoya Horiguchi <naoya.horiguchi@linux.dev> Cc: Pasha Tatashin <pasha.tatashin@soleen.com> Cc: Peter Xu <peterx@redhat.com> Cc: Prakash Sangappa <prakash.sangappa@oracle.com> Cc: Sven Schnelle <svens@linux.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
763ecb0350 |
mm: remove the vma linked list
Replace any vm_next use with vma_find(). Update free_pgtables(), unmap_vmas(), and zap_page_range() to use the maple tree. Use the new free_pgtables() and unmap_vmas() in do_mas_align_munmap(). At the same time, alter the loop to be more compact. Now that free_pgtables() and unmap_vmas() take a maple tree as an argument, rearrange do_mas_align_munmap() to use the new tree to hold the vmas to remove. Remove __vma_link_list() and __vma_unlink_list() as they are exclusively used to update the linked list. Drop linked list update from __insert_vm_struct(). Rework validation of tree as it was depending on the linked list. [yang.lee@linux.alibaba.com: fix one kernel-doc comment] Link: https://bugzilla.openanolis.cn/show_bug.cgi?id=1949 Link: https://lkml.kernel.org/r/20220824021918.94116-1-yang.lee@linux.alibaba.comLink: https://lkml.kernel.org/r/20220906194824.2110408-69-Liam.Howlett@oracle.com Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Signed-off-by: Yang Li <yang.lee@linux.alibaba.com> Tested-by: Yu Zhao <yuzhao@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org> Cc: SeongJae Park <sj@kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
fa5e587679 |
fork: use VMA iterator
The VMA iterator is faster than the linked list and removing the linked list will shrink the vm_area_struct. Link: https://lkml.kernel.org/r/20220906194824.2110408-50-Liam.Howlett@oracle.com Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Acked-by: Vlastimil Babka <vbabka@suse.cz> Reviewed-by: Davidlohr Bueso <dave@stgolabs.net> Tested-by: Yu Zhao <yuzhao@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: SeongJae Park <sj@kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
7964cf8caa |
mm: remove vmacache
By using the maple tree and the maple tree state, the vmacache is no longer beneficial and is complicating the VMA code. Remove the vmacache to reduce the work in keeping it up to date and code complexity. Link: https://lkml.kernel.org/r/20220906194824.2110408-26-Liam.Howlett@oracle.com Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Acked-by: Vlastimil Babka <vbabka@suse.cz> Tested-by: Yu Zhao <yuzhao@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org> Cc: SeongJae Park <sj@kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
524e00b36e |
mm: remove rb tree.
Remove the RB tree and start using the maple tree for vm_area_struct tracking. Drop validate_mm() calls in expand_upwards() and expand_downwards() as the lock is not held. Link: https://lkml.kernel.org/r/20220906194824.2110408-18-Liam.Howlett@oracle.com Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Tested-by: Yu Zhao <yuzhao@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org> Cc: SeongJae Park <sj@kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
c9dbe82cb9 |
kernel/fork: use maple tree for dup_mmap() during forking
The maple tree was already tracking VMAs in this function by an earlier commit, but the rbtree iterator was being used to iterate the list. Change the iterator to use a maple tree native iterator and switch to the maple tree advanced API to avoid multiple walks of the tree during insert operations. Unexport the now-unused vma_store() function. For performance reasons we bulk allocate the maple tree nodes. The node calculations are done internally to the tree and use the VMA count and assume the worst-case node requirements. The VM_DONT_COPY flag does not allow for the most efficient copy method of the tree and so a bulk loading algorithm is used. Link: https://lkml.kernel.org/r/20220906194824.2110408-15-Liam.Howlett@oracle.com Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Acked-by: Vlastimil Babka <vbabka@suse.cz> Tested-by: Yu Zhao <yuzhao@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: SeongJae Park <sj@kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
d4af56c5c7 |
mm: start tracking VMAs with maple tree
Start tracking the VMAs with the new maple tree structure in parallel with the rb_tree. Add debug and trace events for maple tree operations and duplicate the rb_tree that is created on forks into the maple tree. The maple tree is added to the mm_struct including the mm_init struct, added support in required mm/mmap functions, added tracking in kernel/fork for process forking, and used to find the unmapped_area and checked against what the rbtree finds. This also moves the mmap_lock() in exit_mmap() since the oom reaper call does walk the VMAs. Otherwise lockdep will be unhappy if oom happens. When splitting a vma fails due to allocations of the maple tree nodes, the error path in __split_vma() calls new->vm_ops->close(new). The page accounting for hugetlb is actually in the close() operation, so it accounts for the removal of 1/2 of the VMA which was not adjusted. This results in a negative exit value. To avoid the negative charge, set vm_start = vm_end and vm_pgoff = 0. There is also a potential accounting issue in special mappings from insert_vm_struct() failing to allocate, so reverse the charge there in the failure scenario. Link: https://lkml.kernel.org/r/20220906194824.2110408-9-Liam.Howlett@oracle.com Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Tested-by: Yu Zhao <yuzhao@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: David Hildenbrand <david@redhat.com> Cc: David Howells <dhowells@redhat.com> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: SeongJae Park <sj@kernel.org> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
bd74fdaea1 |
mm: multi-gen LRU: support page table walks
To further exploit spatial locality, the aging prefers to walk page tables to search for young PTEs and promote hot pages. A kill switch will be added in the next patch to disable this behavior. When disabled, the aging relies on the rmap only. NB: this behavior has nothing similar with the page table scanning in the 2.4 kernel [1], which searches page tables for old PTEs, adds cold pages to swapcache and unmaps them. To avoid confusion, the term "iteration" specifically means the traversal of an entire mm_struct list; the term "walk" will be applied to page tables and the rmap, as usual. An mm_struct list is maintained for each memcg, and an mm_struct follows its owner task to the new memcg when this task is migrated. Given an lruvec, the aging iterates lruvec_memcg()->mm_list and calls walk_page_range() with each mm_struct on this list to promote hot pages before it increments max_seq. When multiple page table walkers iterate the same list, each of them gets a unique mm_struct; therefore they can run concurrently. Page table walkers ignore any misplaced pages, e.g., if an mm_struct was migrated, pages it left in the previous memcg will not be promoted when its current memcg is under reclaim. Similarly, page table walkers will not promote pages from nodes other than the one under reclaim. This patch uses the following optimizations when walking page tables: 1. It tracks the usage of mm_struct's between context switches so that page table walkers can skip processes that have been sleeping since the last iteration. 2. It uses generational Bloom filters to record populated branches so that page table walkers can reduce their search space based on the query results, e.g., to skip page tables containing mostly holes or misplaced pages. 3. It takes advantage of the accessed bit in non-leaf PMD entries when CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG=y. 4. It does not zigzag between a PGD table and the same PMD table spanning multiple VMAs. IOW, it finishes all the VMAs within the range of the same PMD table before it returns to a PGD table. This improves the cache performance for workloads that have large numbers of tiny VMAs [2], especially when CONFIG_PGTABLE_LEVELS=5. Server benchmark results: Single workload: fio (buffered I/O): no change Single workload: memcached (anon): +[8, 10]% Ops/sec KB/sec patch1-7: 1147696.57 44640.29 patch1-8: 1245274.91 48435.66 Configurations: no change Client benchmark results: kswapd profiles: patch1-7 48.16% lzo1x_1_do_compress (real work) 8.20% page_vma_mapped_walk (overhead) 7.06% _raw_spin_unlock_irq 2.92% ptep_clear_flush 2.53% __zram_bvec_write 2.11% do_raw_spin_lock 2.02% memmove 1.93% lru_gen_look_around 1.56% free_unref_page_list 1.40% memset patch1-8 49.44% lzo1x_1_do_compress (real work) 6.19% page_vma_mapped_walk (overhead) 5.97% _raw_spin_unlock_irq 3.13% get_pfn_folio 2.85% ptep_clear_flush 2.42% __zram_bvec_write 2.08% do_raw_spin_lock 1.92% memmove 1.44% alloc_zspage 1.36% memset Configurations: no change Thanks to the following developers for their efforts [3]. kernel test robot <lkp@intel.com> [1] https://lwn.net/Articles/23732/ [2] https://llvm.org/docs/ScudoHardenedAllocator.html [3] https://lore.kernel.org/r/202204160827.ekEARWQo-lkp@intel.com/ Link: https://lkml.kernel.org/r/20220918080010.2920238-9-yuzhao@google.com Signed-off-by: Yu Zhao <yuzhao@google.com> Acked-by: Brian Geffon <bgeffon@google.com> Acked-by: Jan Alexander Steffens (heftig) <heftig@archlinux.org> Acked-by: Oleksandr Natalenko <oleksandr@natalenko.name> Acked-by: Steven Barrett <steven@liquorix.net> Acked-by: Suleiman Souhlal <suleiman@google.com> Tested-by: Daniel Byrne <djbyrne@mtu.edu> Tested-by: Donald Carr <d@chaos-reins.com> Tested-by: Holger Hoffstätte <holger@applied-asynchrony.com> Tested-by: Konstantin Kharlamov <Hi-Angel@yandex.ru> Tested-by: Shuang Zhai <szhai2@cs.rochester.edu> Tested-by: Sofia Trinh <sofia.trinh@edi.works> Tested-by: Vaibhav Jain <vaibhav@linux.ibm.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> Cc: Barry Song <baohua@kernel.org> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Dave Hansen <dave.hansen@linux.intel.com> Cc: Hillf Danton <hdanton@sina.com> Cc: Jens Axboe <axboe@kernel.dk> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Matthew Wilcox <willy@infradead.org> Cc: Mel Gorman <mgorman@suse.de> Cc: Miaohe Lin <linmiaohe@huawei.com> Cc: Michael Larabel <Michael@MichaelLarabel.com> Cc: Michal Hocko <mhocko@kernel.org> Cc: Mike Rapoport <rppt@kernel.org> Cc: Mike Rapoport <rppt@linux.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Qi Zheng <zhengqi.arch@bytedance.com> Cc: Tejun Heo <tj@kernel.org> Cc: Vlastimil Babka <vbabka@suse.cz> Cc: Will Deacon <will@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
![]() |
f489921dba |
execve reverts for v6.0-rc7
- Remove the recent "unshare time namespace on vfork+exec" feature (Andrei Vagin) -----BEGIN PGP SIGNATURE----- iQJKBAABCgA0FiEEpcP2jyKd1g9yPm4TiXL039xtwCYFAmMoxpIWHGtlZXNjb29r QGNocm9taXVtLm9yZwAKCRCJcvTf3G3AJpd/D/9V7iLUZoquMvXFonv//sRH21P+ u7vH03q0X4lSov73jdjizq8znZl9RVO14IYi+6lQE8VHyOjzjBoTALRPnirNCyGa Ia8P+LPaOHDTDQmGqt+9xmPKp3z0qwrpWWyTrFHLo7GRzWtI0QjQsSlgUTIz7jCw dSwLRWN6n7d3hzNzFWt9VUOOlzpip8NTcnAbC9YA5dPFLO85+wZ4ZpMYYfFJMcQj N/Zm63lrqAU0wy7EhonkKJQDjgRP/zYUs6VJMejHqYl951SrZJ+DgXEGaAwR14Sz IZAUhSM5Fl8alhkrcmlkiy9A5P014iVRR6AaSyeT2616fac97wY1EWHxvBMqzNsB AJJqjPHoN+mc8cqt9lMyIhbmS8WkTuyTHziEcFyyTVsNYGYN6x9hVVZalqPrl8o3 Y3zC6MfRK33JNVB2GZVUzsf5EZC3mjz9VJKKmLwYmG4X7/JOvIVCiW123b060T7z b49PzI+0rTG8SHTk1I/T8NpWuvLRTCglzZK06q971uyT80xPoGD/HmSpmm+86dHs k3WV2qBoz31Eaoewa3NJqn6pBxQLy9WAZP6rJb3aQSFwDRCuvKO4CUpHAXILt5U+ SoarR5445zVzY3NYHaf/3BRsEnCQS06U67ma0lAmMWk4J3ehFOY0DrRqtLJ02iwd sKJD/KnKC+IEcLjrAA== =yFGx -----END PGP SIGNATURE----- Merge tag 'execve-v6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux Pull execve reverts from Kees Cook: "The recent work to support time namespace unsharing turns out to have some undesirable corner cases, so rather than allowing the API to stay exposed for another release, it'd be best to remove it ASAP, with the replacement getting another cycle of testing. Nothing is known to use this yet, so no userspace breakage is expected. For more details, see: https://lore.kernel.org/lkml/ed418e43ad28b8688cfea2b7c90fce1c@ispras.ru Summary: - Remove the recent 'unshare time namespace on vfork+exec' feature (Andrei Vagin)" * tag 'execve-v6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux: Revert "fs/exec: allow to unshare a time namespace on vfork+exec" Revert "selftests/timens: add a test for vfork+exit" |
||
![]() |
33a2d6bc34 |
Revert "fs/exec: allow to unshare a time namespace on vfork+exec"
This reverts commit
|
||
![]() |
f5d39b0208 |
freezer,sched: Rewrite core freezer logic
Rewrite the core freezer to behave better wrt thawing and be simpler in general. By replacing PF_FROZEN with TASK_FROZEN, a special block state, it is ensured frozen tasks stay frozen until thawed and don't randomly wake up early, as is currently possible. As such, it does away with PF_FROZEN and PF_FREEZER_SKIP, freeing up two PF_flags (yay!). Specifically; the current scheme works a little like: freezer_do_not_count(); schedule(); freezer_count(); And either the task is blocked, or it lands in try_to_freezer() through freezer_count(). Now, when it is blocked, the freezer considers it frozen and continues. However, on thawing, once pm_freezing is cleared, freezer_count() stops working, and any random/spurious wakeup will let a task run before its time. That is, thawing tries to thaw things in explicit order; kernel threads and workqueues before doing bringing SMP back before userspace etc.. However due to the above mentioned races it is entirely possible for userspace tasks to thaw (by accident) before SMP is back. This can be a fatal problem in asymmetric ISA architectures (eg ARMv9) where the userspace task requires a special CPU to run. As said; replace this with a special task state TASK_FROZEN and add the following state transitions: TASK_FREEZABLE -> TASK_FROZEN __TASK_STOPPED -> TASK_FROZEN __TASK_TRACED -> TASK_FROZEN The new TASK_FREEZABLE can be set on any state part of TASK_NORMAL (IOW. TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE) -- any such state is already required to deal with spurious wakeups and the freezer causes one such when thawing the task (since the original state is lost). The special __TASK_{STOPPED,TRACED} states *can* be restored since their canonical state is in ->jobctl. With this, frozen tasks need an explicit TASK_FROZEN wakeup and are free of undue (early / spurious) wakeups. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Ingo Molnar <mingo@kernel.org> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://lore.kernel.org/r/20220822114649.055452969@infradead.org |
||
![]() |
85eaeb5058 |
IB/core: Fix a nested dead lock as part of ODP flow
Fix a nested dead lock as part of ODP flow by using mmput_async().
From the below call trace [1] can see that calling mmput() once we have
the umem_odp->umem_mutex locked as required by
ib_umem_odp_map_dma_and_lock() might trigger in the same task the
exit_mmap()->__mmu_notifier_release()->mlx5_ib_invalidate_range() which
may dead lock when trying to lock the same mutex.
Moving to use mmput_async() will solve the problem as the above
exit_mmap() flow will be called in other task and will be executed once
the lock will be available.
[1]
[64843.077665] task:kworker/u133:2 state:D stack: 0 pid:80906 ppid:
2 flags:0x00004000
[64843.077672] Workqueue: mlx5_ib_page_fault mlx5_ib_eqe_pf_action [mlx5_ib]
[64843.077719] Call Trace:
[64843.077722] <TASK>
[64843.077724] __schedule+0x23d/0x590
[64843.077729] schedule+0x4e/0xb0
[64843.077735] schedule_preempt_disabled+0xe/0x10
[64843.077740] __mutex_lock.constprop.0+0x263/0x490
[64843.077747] __mutex_lock_slowpath+0x13/0x20
[64843.077752] mutex_lock+0x34/0x40
[64843.077758] mlx5_ib_invalidate_range+0x48/0x270 [mlx5_ib]
[64843.077808] __mmu_notifier_release+0x1a4/0x200
[64843.077816] exit_mmap+0x1bc/0x200
[64843.077822] ? walk_page_range+0x9c/0x120
[64843.077828] ? __cond_resched+0x1a/0x50
[64843.077833] ? mutex_lock+0x13/0x40
[64843.077839] ? uprobe_clear_state+0xac/0x120
[64843.077860] mmput+0x5f/0x140
[64843.077867] ib_umem_odp_map_dma_and_lock+0x21b/0x580 [ib_core]
[64843.077931] pagefault_real_mr+0x9a/0x140 [mlx5_ib]
[64843.077962] pagefault_mr+0xb4/0x550 [mlx5_ib]
[64843.077992] pagefault_single_data_segment.constprop.0+0x2ac/0x560
[mlx5_ib]
[64843.078022] mlx5_ib_eqe_pf_action+0x528/0x780 [mlx5_ib]
[64843.078051] process_one_work+0x22b/0x3d0
[64843.078059] worker_thread+0x53/0x410
[64843.078065] ? process_one_work+0x3d0/0x3d0
[64843.078073] kthread+0x12a/0x150
[64843.078079] ? set_kthread_struct+0x50/0x50
[64843.078085] ret_from_fork+0x22/0x30
[64843.078093] </TASK>
Fixes:
|
||
![]() |
965a9d75e3 |
Tracing updates for 5.20 / 6.0
- Runtime verification infrastructure This is the biggest change for this pull request. It introduces the runtime verification that is necessary for running Linux on safety critical systems. It allows for deterministic automata models to be inserted into the kernel that will attach to tracepoints, where the information on these tracepoints will move the model from state to state. If a state is encountered that does not belong to the model, it will then activate a given reactor, that could just inform the user or even panic the kernel (for which safety critical systems will detect and can recover from). - Two monitor models are also added: Wakeup In Preemptive (WIP - not to be confused with "work in progress"), and Wakeup While Not Running (WWNR). - Added __vstring() helper to the TRACE_EVENT() macro to replace several vsnprintf() usages that were all doing it wrong. - eprobes now can have their event autogenerated when the event name is left off. - The rest is various cleanups and fixes. -----BEGIN PGP SIGNATURE----- iIoEABYIADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCYu0yzRQccm9zdGVkdEBn b29kbWlzLm9yZwAKCRAp5XQQmuv6qj4HAP4tQtV55rjj4DQ5XIXmtI3/64PmyRSJ +y4DEXi1UvEUCQD/QAuQfWoT/7gh35ltkfeS4t3ockzy14rrkP5drZigiQA= =kEtM -----END PGP SIGNATURE----- Merge tag 'trace-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace Pull tracing updates from Steven Rostedt: - Runtime verification infrastructure This is the biggest change here. It introduces the runtime verification that is necessary for running Linux on safety critical systems. It allows for deterministic automata models to be inserted into the kernel that will attach to tracepoints, where the information on these tracepoints will move the model from state to state. If a state is encountered that does not belong to the model, it will then activate a given reactor, that could just inform the user or even panic the kernel (for which safety critical systems will detect and can recover from). - Two monitor models are also added: Wakeup In Preemptive (WIP - not to be confused with "work in progress"), and Wakeup While Not Running (WWNR). - Added __vstring() helper to the TRACE_EVENT() macro to replace several vsnprintf() usages that were all doing it wrong. - eprobes now can have their event autogenerated when the event name is left off. - The rest is various cleanups and fixes. * tag 'trace-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (50 commits) rv: Unlock on error path in rv_unregister_reactor() tracing: Use alignof__(struct {type b;}) instead of offsetof() tracing/eprobe: Show syntax error logs in error_log file scripts/tracing: Fix typo 'the the' in comment tracepoints: It is CONFIG_TRACEPOINTS not CONFIG_TRACEPOINT tracing: Use free_trace_buffer() in allocate_trace_buffers() tracing: Use a struct alignof to determine trace event field alignment rv/reactor: Add the panic reactor rv/reactor: Add the printk reactor rv/monitor: Add the wwnr monitor rv/monitor: Add the wip monitor rv/monitor: Add the wip monitor skeleton created by dot2k Documentation/rv: Add deterministic automata instrumentation documentation Documentation/rv: Add deterministic automata monitor synthesis documentation tools/rv: Add dot2k Documentation/rv: Add deterministic automaton documentation tools/rv: Add dot2c Documentation/rv: Add a basic documentation rv/include: Add instrumentation helper functions rv/include: Add deterministic automata monitor definition via C macros ... |
||
![]() |
7d9d077c78 |
RCU pull request for v5.20 (or whatever)
This pull request contains the following branches: doc.2022.06.21a: Documentation updates. fixes.2022.07.19a: Miscellaneous fixes. nocb.2022.07.19a: Callback-offload updates, perhaps most notably a new RCU_NOCB_CPU_DEFAULT_ALL Kconfig option that causes all CPUs to be offloaded at boot time, regardless of kernel boot parameters. This is useful to battery-powered systems such as ChromeOS and Android. In addition, a new RCU_NOCB_CPU_CB_BOOST kernel boot parameter prevents offloaded callbacks from interfering with real-time workloads and with energy-efficiency mechanisms. poll.2022.07.21a: Polled grace-period updates, perhaps most notably making these APIs account for both normal and expedited grace periods. rcu-tasks.2022.06.21a: Tasks RCU updates, perhaps most notably reducing the CPU overhead of RCU tasks trace grace periods by more than a factor of two on a system with 15,000 tasks. The reduction is expected to increase with the number of tasks, so it seems reasonable to hypothesize that a system with 150,000 tasks might see a 20-fold reduction in CPU overhead. torture.2022.06.21a: Torture-test updates. ctxt.2022.07.05a: Updates that merge RCU's dyntick-idle tracking into context tracking, thus reducing the overhead of transitioning to kernel mode from either idle or nohz_full userspace execution for kernels that track context independently of RCU. This is expected to be helpful primarily for kernels built with CONFIG_NO_HZ_FULL=y. -----BEGIN PGP SIGNATURE----- iQJHBAABCgAxFiEEbK7UrM+RBIrCoViJnr8S83LZ+4wFAmLgMcgTHHBhdWxtY2tA a2VybmVsLm9yZwAKCRCevxLzctn7jArXD/0fjbCwqpRjHVTzjMY8jN4zDkqZZD6m g8Fx27hZ4ToNFwRptyHwNezrNj14skjAJEXfdjaVw32W62ivXvf0HINvSzsTLCSq k2kWyBdXLc9CwY5p5W4smnpn5VoAScjg5PoPL59INoZ/Zziji323C7Zepl/1DYJt 0T6bPCQjo1ZQoDUCyVpSjDmAqxnderWG0MeJVt74GkLqmnYLANg0GH8c7mH4+9LL kVGlLp5nlPgNJ4FEoFdMwNU8T/ETmaVld/m2dkiawjkXjJzB2XKtBigU91DDmXz5 7DIdV4ABrxiy4kGNqtIe/jFgnKyVD7xiDpyfjd6KTeDr/rDS8u2ZH7+1iHsyz3g0 Np/tS3vcd0KR+gI/d0eXxPbgm5sKlCmKw/nU2eArpW/+4LmVXBUfHTG9Jg+LJmBc JrUh6aEdIZJZHgv/nOQBNig7GJW43IG50rjuJxAuzcxiZNEG5lUSS23ysaA9CPCL PxRWKSxIEfK3kdmvVO5IIbKTQmIBGWlcWMTcYictFSVfBgcCXpPAksGvqA5JiUkc egW+xLFo/7K+E158vSKsVqlWZcEeUbsNJ88QOlpqnRgH++I2Yv/LhK41XfJfpH+Y ALxVaDd+mAq6v+qSHNVq9wT3ozXIPy/zK1hDlMIqx40h2YvaEsH4je+521oSoN9r vX60+QNxvUBLwA== =vUNm -----END PGP SIGNATURE----- Merge tag 'rcu.2022.07.26a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu Pull RCU updates from Paul McKenney: - Documentation updates - Miscellaneous fixes - Callback-offload updates, perhaps most notably a new RCU_NOCB_CPU_DEFAULT_ALL Kconfig option that causes all CPUs to be offloaded at boot time, regardless of kernel boot parameters. This is useful to battery-powered systems such as ChromeOS and Android. In addition, a new RCU_NOCB_CPU_CB_BOOST kernel boot parameter prevents offloaded callbacks from interfering with real-time workloads and with energy-efficiency mechanisms - Polled grace-period updates, perhaps most notably making these APIs account for both normal and expedited grace periods - Tasks RCU updates, perhaps most notably reducing the CPU overhead of RCU tasks trace grace periods by more than a factor of two on a system with 15,000 tasks. The reduction is expected to increase with the number of tasks, so it seems reasonable to hypothesize that a system with 150,000 tasks might see a 20-fold reduction in CPU overhead - Torture-test updates - Updates that merge RCU's dyntick-idle tracking into context tracking, thus reducing the overhead of transitioning to kernel mode from either idle or nohz_full userspace execution for kernels that track context independently of RCU. This is expected to be helpful primarily for kernels built with CONFIG_NO_HZ_FULL=y * tag 'rcu.2022.07.26a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: (98 commits) rcu: Add irqs-disabled indicator to expedited RCU CPU stall warnings rcu: Diagnose extended sync_rcu_do_polled_gp() loops rcu: Put panic_on_rcu_stall() after expedited RCU CPU stall warnings rcutorture: Test polled expedited grace-period primitives rcu: Add polled expedited grace-period primitives rcutorture: Verify that polled GP API sees synchronous grace periods rcu: Make Tiny RCU grace periods visible to polled APIs rcu: Make polled grace-period API account for expedited grace periods rcu: Switch polled grace-period APIs to ->gp_seq_polled rcu/nocb: Avoid polling when my_rdp->nocb_head_rdp list is empty rcu/nocb: Add option to opt rcuo kthreads out of RT priority rcu: Add nocb_cb_kthread check to rcu_is_callbacks_kthread() rcu/nocb: Add an option to offload all CPUs on boot rcu/nocb: Fix NOCB kthreads spawn failure with rcu_nocb_rdp_deoffload() direct call rcu/nocb: Invert rcu_state.barrier_mutex VS hotplug lock locking order rcu/nocb: Add/del rdp to iterate from rcuog itself rcu/tree: Add comment to describe GP-done condition in fqs loop rcu: Initialize first_gp_fqs at declaration in rcu_gp_fqs() rcu/kvfree: Remove useless monitor_todo flag rcu: Cleanup RCU urgency state for offline CPU ... |
||
![]() |
792575348f |
rv/include: Add deterministic automata monitor definition via C macros
In Linux terms, the runtime verification monitors are encapsulated inside the "RV monitor" abstraction. The "RV monitor" includes a set of instances of the monitor (per-cpu monitor, per-task monitor, and so on), the helper functions that glue the monitor to the system reference model, and the trace output as a reaction for event parsing and exceptions, as depicted below: Linux +----- RV Monitor ----------------------------------+ Formal Realm | | Realm +-------------------+ +----------------+ +-----------------+ | Linux kernel | | Monitor | | Reference | | Tracing | -> | Instance(s) | <- | Model | | (instrumentation) | | (verification) | | (specification) | +-------------------+ +----------------+ +-----------------+ | | | | V | | +----------+ | | | Reaction | | | +--+--+--+-+ | | | | | | | | | +-> trace output ? | +------------------------|--|----------------------+ | +----> panic ? +-------> <user-specified> Add the rv/da_monitor.h, enabling automatic code generation for the *Monitor Instance(s)* using C macros, and code to support it. The benefits of the usage of macro for monitor synthesis are 3-fold as it: - Reduces the code duplication; - Facilitates the bug fix/improvement; - Avoids the case of developers changing the core of the monitor code to manipulate the model in a (let's say) non-standard way. This initial implementation presents three different types of monitor instances: - DECLARE_DA_MON_GLOBAL(name, type) - DECLARE_DA_MON_PER_CPU(name, type) - DECLARE_DA_MON_PER_TASK(name, type) The first declares the functions for a global deterministic automata monitor, the second for monitors with per-cpu instances, and the third with per-task instances. Link: https://lkml.kernel.org/r/51b0bf425a281e226dfeba7401d2115d6091f84e.1659052063.git.bristot@kernel.org Cc: Wim Van Sebroeck <wim@linux-watchdog.org> Cc: Guenter Roeck <linux@roeck-us.net> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Ingo Molnar <mingo@redhat.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Will Deacon <will@kernel.org> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Marco Elver <elver@google.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: "Paul E. McKenney" <paulmck@kernel.org> Cc: Shuah Khan <skhan@linuxfoundation.org> Cc: Gabriele Paoloni <gpaoloni@redhat.com> Cc: Juri Lelli <juri.lelli@redhat.com> Cc: Clark Williams <williams@redhat.com> Cc: Tao Zhou <tao.zhou@linux.dev> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: linux-doc@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: linux-trace-devel@vger.kernel.org Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org> |
||
![]() |
d80f7d7b2c |
signal: Guarantee that SIGNAL_GROUP_EXIT is set on process exit
Track how many threads have not started exiting and when the last thread starts exiting set SIGNAL_GROUP_EXIT. This guarantees that SIGNAL_GROUP_EXIT will get set when a process exits. In practice this achieves nothing as glibc's implementation of _exit calls sys_group_exit then sys_exit. While glibc's implemenation of pthread_exit calls exit (which cleansup and calls _exit) if it is the last thread and sys_exit if it is the last thread. This means the only way the kernel might observe a process that does not set call exit_group is if the language runtime does not use glibc. With more cleanups I hope to move the decrement of quick_threads earlier. Link: https://lkml.kernel.org/r/87bkukd4tc.fsf_-_@email.froward.int.ebiederm.org Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> |
||
![]() |
434c9eefb9 |
rcu-tasks: Add data structures for lightweight grace periods
This commit adds fields to task_struct and to rcu_tasks_percpu that will be used to avoid the task-list scan for RCU Tasks Trace grace periods, and also initializes these fields. Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Cc: Neeraj Upadhyay <quic_neeraju@quicinc.com> Cc: Eric Dumazet <edumazet@google.com> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Andrii Nakryiko <andrii@kernel.org> Cc: Martin KaFai Lau <kafai@fb.com> Cc: KP Singh <kpsingh@kernel.org> |
||
![]() |
133e2d3e81 |
fs/exec: allow to unshare a time namespace on vfork+exec
Right now, a new process can't be forked in another time namespace if it shares mm with its parent. It is prohibited, because each time namespace has its own vvar page that is mapped into a process address space. When a process calls exec, it gets a new mm and so it could be "legal" to switch time namespace in that case. This was not implemented and now if we want to do this, we need to add another clone flag to not break backward compatibility. We don't have any user requests to switch times on exec except the vfork+exec combination, so there is no reason to add a new clone flag. As for vfork+exec, this should be safe to allow switching timens with the current clone flag. Right now, vfork (CLONE_VFORK | CLONE_VM) fails if a child is forked into another time namespace. With this change, vfork creates a new process in parent's timens, and the following exec does the actual switch to the target time namespace. Suggested-by: Florian Weimer <fweimer@redhat.com> Signed-off-by: Andrei Vagin <avagin@gmail.com> Acked-by: Christian Brauner (Microsoft) <brauner@kernel.org> Signed-off-by: Kees Cook <keescook@chromium.org> Link: https://lore.kernel.org/r/20220613060723.197407-1-avagin@gmail.com |