Fab Tillier
2013-02-20 23:32:19 UTC
Don't corrupt the stack by dereferencing a stack variable after it's gone out of scope...
Signed-off-by: Fab Tillier <***@microsoft.com>
diff -dwup3 -x *svn* -r c:\dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\kernel\hca\pd.c .\hw\mlx4\kernel\hca\pd.c
--- c:\dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\kernel\hca\pd.c Thu May 31 11:22:19 2012
+++ .\hw\mlx4\kernel\hca\pd.c Wed May 23 18:26:47 2012
@@ -78,9 +78,8 @@ mlnx_allocate_pd (
0, sizeof(p_resp->pdn));
}
else {
- u32 pdn;
- INIT_UDATA(&udata, NULL, &pdn,
- 0, sizeof(pdn));
+ // Discard PDN output, so use status as temp storage.
+ INIT_UDATA(&udata, NULL, &status, 0, sizeof(status));
}
}
else {
Signed-off-by: Fab Tillier <***@microsoft.com>
diff -dwup3 -x *svn* -r c:\dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\kernel\hca\pd.c .\hw\mlx4\kernel\hca\pd.c
--- c:\dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\kernel\hca\pd.c Thu May 31 11:22:19 2012
+++ .\hw\mlx4\kernel\hca\pd.c Wed May 23 18:26:47 2012
@@ -78,9 +78,8 @@ mlnx_allocate_pd (
0, sizeof(p_resp->pdn));
}
else {
- u32 pdn;
- INIT_UDATA(&udata, NULL, &pdn,
- 0, sizeof(pdn));
+ // Discard PDN output, so use status as temp storage.
+ INIT_UDATA(&udata, NULL, &status, 0, sizeof(status));
}
}
else {