Hans de Goede
2016-Mar-14  14:01 UTC
[Nouveau] [PATCH mesa v2] clover: Fix pipe_grid_info.indirect not being initialized
After pipe_grid_info.indirect was introduced, clover was not modified
to set it causing it to pass uninitialized memory for it to launch_grid.
This commit fixes this by zero-ing the entire pipe_grid_info struct when
declaring it, to avoid similar problems popping-up in the future.
Cc: "11.2" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Hans de Goede <hdegoede at redhat.com>
---
Changes in v2:
-Drop trailing "," from struct initializer
-Add Cc: "11.2" <mesa-stable at lists.freedesktop.org>
---
 src/gallium/state_trackers/clover/core/kernel.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gallium/state_trackers/clover/core/kernel.cpp
b/src/gallium/state_trackers/clover/core/kernel.cpp
index 8396be9..1ab87ec 100644
--- a/src/gallium/state_trackers/clover/core/kernel.cpp
+++ b/src/gallium/state_trackers/clover/core/kernel.cpp
@@ -55,7 +55,7 @@ kernel::launch(command_queue &q,
    const auto reduced_grid_size        map(divides(), grid_size, block_size);
    void *st = exec.bind(&q, grid_offset);
-   struct pipe_grid_info info;
+   struct pipe_grid_info info = { 0 };
 
    // The handles are created during exec_context::bind(), so we need make
    // sure to call exec_context::bind() before retrieving them.
-- 
2.7.2
Samuel Pitoiset
2016-Mar-14  14:01 UTC
[Nouveau] [PATCH mesa v2] clover: Fix pipe_grid_info.indirect not being initialized
Thanks Hans! Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com> On 03/14/2016 03:01 PM, Hans de Goede wrote:> After pipe_grid_info.indirect was introduced, clover was not modified > to set it causing it to pass uninitialized memory for it to launch_grid. > > This commit fixes this by zero-ing the entire pipe_grid_info struct when > declaring it, to avoid similar problems popping-up in the future. > > Cc: "11.2" <mesa-stable at lists.freedesktop.org> > Signed-off-by: Hans de Goede <hdegoede at redhat.com> > --- > Changes in v2: > -Drop trailing "," from struct initializer > -Add Cc: "11.2" <mesa-stable at lists.freedesktop.org> > --- > src/gallium/state_trackers/clover/core/kernel.cpp | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/gallium/state_trackers/clover/core/kernel.cpp b/src/gallium/state_trackers/clover/core/kernel.cpp > index 8396be9..1ab87ec 100644 > --- a/src/gallium/state_trackers/clover/core/kernel.cpp > +++ b/src/gallium/state_trackers/clover/core/kernel.cpp > @@ -55,7 +55,7 @@ kernel::launch(command_queue &q, > const auto reduced_grid_size > map(divides(), grid_size, block_size); > void *st = exec.bind(&q, grid_offset); > - struct pipe_grid_info info; > + struct pipe_grid_info info = { 0 }; > > // The handles are created during exec_context::bind(), so we need make > // sure to call exec_context::bind() before retrieving them. >-- -Samuel
Possibly Parallel Threads
- [RFC mesa] clover: Fix pipe_grid_info.indirect not being initialized
- [PATCH mesa] clover: Fix pipe_grid_info.indirect not being initialized
- [PATCH mesa] clover: Fix pipe_grid_info.indirect not being initialized
- [PATCH mesa] clover: Fix pipe_grid_info.indirect not being initialized
- [PATCH mesa] clover: Fix pipe_grid_info.indirect not being initialized