tree 3db88eab0771fde1d4660416bb54a3486a360651
parent 19272b37aa4f83ca52bdf9c16d5d81bdd1354494
parent 0d67f0dee6c9176bc09a5482dd7346e3a0f14d0b
author Linus Torvalds <torvalds@linux-foundation.org> 1749524818 -0700
committer Linus Torvalds <torvalds@linux-foundation.org> 1749524818 -0700
mergetag object 0d67f0dee6c9176bc09a5482dd7346e3a0f14d0b
 type commit
 tag powerpc-6.16-2
 tagger Madhavan Srinivasan <maddy@linux.ibm.com> 1749522634 +0530
 
 powerpc fixes for 6.16 #2
 
  - Couple of fixes for out of bounds issues in memtrace and vas
 
 Thanks to: Ritesh Harjani (IBM), Haren Myneni, Jonathan Greental
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEqX2DNAOgU8sBX3pRpnEsdPSHZJQFAmhHmMoACgkQpnEsdPSH
 ZJSF0hAAlF22Jz/k2NdEV1hnOVOBwG3NIpJUKElbWXL/p9ppjbF4j76XHdnfcRGl
 vFUxJVAcyqDwLxpGJX1b9U51STl/A9gCnagrhVf8wMo3jcRaPIy4ycsQiRrz72nI
 NDFl0s3fGfUJoA7j/PPs11TB2+fxxkWf6wIpnMMJc2tT7G/FDrbGVB7g1Y/EiR3W
 tI3YpdUr9XK3uLplr9x4I4ItnmOyhvy+CNyHmRBiZuKFT1nw3F4aHQzmijhc0aiA
 bx32+fSEZIpvFSMNC912VQc4jFtZnDM/9mmJts8z/RqXzYo57PO6qQegXfDUPjwI
 x+Zgx72kkFlenxs/IBizIMlO2BE1LXhFnVFoML/nezCikovE31/sL8lCIarmP2+/
 KZ5oC2hZUkKVsHvycKZEm49+l27wdEtJ7AUEcV/BRMKM+B28vey9LfgSOfqlurmK
 3B79MKWQmEhkEAh2EZz0Hx4RrKbXm3Ts0aFLwHYV6OgXns7qgfrtCQEY57Je5iE6
 4v/h3hzhH2ru3blSBwQhZwgbyahTVTD1H23y8e5P41oZfbpnkVOJM1hnhDUKoEUc
 HdA8Hiri2Cg4Xf+IVFTEnPl63yWhLhaUvLlpoS/o9iPzUTNUjvkpgC+6QfA7zshM
 bNs4vtlgZzdbncoMSMBj5cBM6O+CCAkpSfRYdCtkJSx3PjAXAS0=
 =OFw0
 -----END PGP SIGNATURE-----

Merge tag 'powerpc-6.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

Pull powerpc fixes from Madhavan Srinivasan:

 - a couple of fixes for out of bounds issues in memtrace and vas

Thanks to Ritesh Harjani (IBM), Haren Myneni, and Jonathan Greental

* tag 'powerpc-6.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
  powerpc/vas: Return -EINVAL if the offset is non-zero in mmap()
  powerpc/powernv/memtrace: Fix out of bounds issue in memtrace mmap
