projects
/
linux
/
.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
06ce0af
)
powerpc/mm: Fix size of allocated PGDIR
author
Christophe Leroy
<christophe.leroy@csgroup.eu>
Thu, 8 Aug 2024 09:32:47 +0000
(11:32 +0200)
committer
Michael Ellerman
<mpe@ellerman.id.au>
Mon, 12 Aug 2024 11:49:53 +0000
(21:49 +1000)
Commit
6b0e82791bd0
("powerpc/e500: switch to 64 bits PGD on 85xx
(32 bits)") increased the size of PGD entries but failed to increase
the PGD directory.
Use the size of pgd_t instead of the size of pointers to calculate
the allocated size.
Reported-by: Guenter Roeck <linux@roeck-us.net>
Fixes:
6b0e82791bd0
("powerpc/e500: switch to 64 bits PGD on 85xx (32 bits)")
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link:
https://msgid.link/1cdaacb391cbd3e0240f0e0faf691202874e9422.1723109462.git.christophe.leroy@csgroup.eu
arch/powerpc/mm/init-common.c
patch
|
blob
|
history
diff --git
a/arch/powerpc/mm/init-common.c
b/arch/powerpc/mm/init-common.c
index 9b4a675eb8f877ce313d125ca007f0ed3cde92a1..2978fcbe307eabf43984ce631e7faa1dbeaff9c0 100644
(file)
--- a/
arch/powerpc/mm/init-common.c
+++ b/
arch/powerpc/mm/init-common.c
@@
-73,7
+73,7
@@
void setup_kup(void)
#define CTOR(shift) static void ctor_##shift(void *addr) \
{ \
- memset(addr, 0, sizeof(
void *) << (shift));
\
+ memset(addr, 0, sizeof(
pgd_t) << (shift));
\
}
CTOR(0); CTOR(1); CTOR(2); CTOR(3); CTOR(4); CTOR(5); CTOR(6); CTOR(7);
@@
-117,7
+117,7
@@
EXPORT_SYMBOL_GPL(pgtable_cache); /* used by kvm_hv module */
void pgtable_cache_add(unsigned int shift)
{
char *name;
- unsigned long table_size = sizeof(
void *
) << shift;
+ unsigned long table_size = sizeof(
pgd_t
) << shift;
unsigned long align = table_size;
/* When batching pgtable pointers for RCU freeing, we store