mm: slab: Verify the nodeid passed to ____cache_alloc_node
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH v2 1/1 mm: slab: Verify the nodeid passed to ____cache_alloc_node
Hi,
This patch is in response to BZ#42967 [1].
Using VM_BUG_ON so it's used only when CONFIG_DEBUG_VM is set, given that ____cache_alloc_node() is a hot code path.
Cheers,
Aaron
[1]: https://bugzilla.kernel.org/show_bug.cgi?id=42967
---8<---
mm: slab: Verify the nodeid passed to ____cache_alloc_node
If the nodeid is > num_online_nodes() this can cause an Oops and a panic(). The purpose of this patch is to assert if this condition is true to aid debugging efforts rather than some random NULL pointer dereference or page fault.
slab.c | 1 + 1 file changed, 1 insertion(+)
mm/slab.c +0 -0
-3412,6 +3412,7 @@ static void *____cache_alloc_node(struct kmem_cache *cachep, gfp_t flags,
void *obj;
int x;
+ VM_BUG_ON(nodeid > num_online_nodes());
l3 = cachep->nodelists[nodeid];
BUG_ON(!l3);
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
Quoted 3 lines · Aaron Tomlin
This patch is in response to BZ#42967 [1].
UsingVM_BUG_ONso it's used only whenCONFIG_DEBUG_VMis set, given that____cache_alloc_node()is a hot code path.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
Quoted 6 lines · Aaron Tomlin
Hi,
This patch is in response to BZ#42967 [1].
UsingVM_BUG_ONso it's used only whenCONFIG_DEBUG_VMis set, given that____cache_alloc_node()is a hot code path.
This seems to be a valid condition to BUG_ON, though.
Quoted 8 lines
Cheers,
Aaron[1]: https://bugzilla.kernel.org/show_bug.cgi?id=42967
---8<---
mm: slab: Verify the nodeid passed to____cache_alloc_node
Quoted 8 lines
If the nodeid is >
num_online_nodes()this can cause an Oops and apanic(). The purpose of this patch is to assert if this condition is true to aid debugging efforts rather than some random NULL pointer dereference or page fault.Signed-off-by Aaron Tomlin <[email protected]>Reviewed-by Rik van Riel <[email protected]>
Quoted 8 lines
slab.c | 1 + 1 file changed, 1 insertion(+)mm/slab.c +0
-0
mm/slab.c
Quoted 7 lines
mm/slab.c +1
-0-3412,6 +3412,7 @@ static void *____cache_alloc_node(struct kmem_cache *cachep, gfp_t flags, void *obj;int x; +VM_BUG_ON (nodeid >num_online_nodes ()); l3 = cachep->nodelists[nodeid];BUG_ON (!l3);
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
Quoted 10 lines · Aaron Tomlin
mm: slab: Verify the nodeid passed to
____cache_alloc_nodeIf the nodeid is >
num_online_nodes()this can cause an Oops and apanic(). The purpose of this patch is to assert if this condition is true to aid debugging efforts rather than some random NULL pointer dereference or page fault.Signed-off-by Aaron Tomlin <[email protected]>Reviewed-by Rik van Riel <[email protected]>
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
Quoted 3 lines · Aaron Tomlin
This patch is in response to BZ#42967 [1].
UsingVM_BUG_ONso it's used only whenCONFIG_DEBUG_VMis set, given that____cache_alloc_node()is a hot code path.
The patch is pretty badly mangled and does not apply with 'git am'. Please resend with updated ACKs.
Pekka
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>