Re: [Intel-gfx] [PATCH i-g-t] tools/intel_reg: Fix segfault in intel_reg dump
Mika Kuoppala writes: > We need to zero out the builtin reg spec we are parsing into. > Otherwise engine will be uninitialized and we segfault when trying > to find engine and accessing reg->engine in later stage. > Chris combined both file and builting based fixes. We can omit this. -Mika > v2: use {} (Jani) > > Fixes: 7f0be0e7d9be ("tools/intel_reg: Add reading and writing registers > through engine") > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104895 > Cc: Chris Wilson > Cc: Marta Löfstedt > Cc: Jani Nikula > Signed-off-by: Mika Kuoppala > Reviewed-by: Jani Nikula > --- > tools/intel_reg_decode.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/intel_reg_decode.c b/tools/intel_reg_decode.c > index 46b19676..f3c7d74a 100644 > --- a/tools/intel_reg_decode.c > +++ b/tools/intel_reg_decode.c > @@ -2746,7 +2746,7 @@ static ssize_t get_regs(struct reg **regs, size_t > *nregs, ssize_t index, > for (j = 0; j < known_registers[i].count; j++) { > const struct reg_debug *reg_in = > &known_registers[i].regs[j]; > - struct reg reg; > + struct reg reg = {}; > > /* XXX: Could be optimized. */ > parse_port_desc(®, NULL); > -- > 2.14.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH i-g-t] tools/intel_reg: Fix segfault in intel_reg dump
We need to zero out the builtin reg spec we are parsing into. Otherwise engine will be uninitialized and we segfault when trying to find engine and accessing reg->engine in later stage. v2: use {} (Jani) Fixes: 7f0be0e7d9be ("tools/intel_reg: Add reading and writing registers through engine") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104895 Cc: Chris Wilson Cc: Marta Löfstedt Cc: Jani Nikula Signed-off-by: Mika Kuoppala Reviewed-by: Jani Nikula --- tools/intel_reg_decode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/intel_reg_decode.c b/tools/intel_reg_decode.c index 46b19676..f3c7d74a 100644 --- a/tools/intel_reg_decode.c +++ b/tools/intel_reg_decode.c @@ -2746,7 +2746,7 @@ static ssize_t get_regs(struct reg **regs, size_t *nregs, ssize_t index, for (j = 0; j < known_registers[i].count; j++) { const struct reg_debug *reg_in = &known_registers[i].regs[j]; - struct reg reg; + struct reg reg = {}; /* XXX: Could be optimized. */ parse_port_desc(®, NULL); -- 2.14.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH i-g-t] tools/intel_reg: Fix segfault in intel_reg dump
On Fri, 02 Feb 2018, Mika Kuoppala wrote: > We need to zero out the builtin reg spec we are parsing into. > Otherwise engine will be uninitialized and we segfault when trying > to find engine and accessing reg->engine in later stage. > > Fixes: 7f0be0e7d9be ("tools/intel_reg: Add reading and writing registers > through engine") > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104895 > Cc: Chris Wilson > Cc: Marta Löfstedt > Cc: Jani Nikula > Signed-off-by: Mika Kuoppala Personal preference, I would've gone for = {} but this is fine. Reviewed-by: Jani Nikula > --- > tools/intel_reg_decode.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/tools/intel_reg_decode.c b/tools/intel_reg_decode.c > index 46b19676..b351dcb5 100644 > --- a/tools/intel_reg_decode.c > +++ b/tools/intel_reg_decode.c > @@ -2748,6 +2748,8 @@ static ssize_t get_regs(struct reg **regs, size_t > *nregs, ssize_t index, > &known_registers[i].regs[j]; > struct reg reg; > > + memset(®, 0, sizeof(reg)); > + > /* XXX: Could be optimized. */ > parse_port_desc(®, NULL); -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH i-g-t] tools/intel_reg: Fix segfault in intel_reg dump
We need to zero out the builtin reg spec we are parsing into. Otherwise engine will be uninitialized and we segfault when trying to find engine and accessing reg->engine in later stage. Fixes: 7f0be0e7d9be ("tools/intel_reg: Add reading and writing registers through engine") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104895 Cc: Chris Wilson Cc: Marta Löfstedt Cc: Jani Nikula Signed-off-by: Mika Kuoppala --- tools/intel_reg_decode.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/intel_reg_decode.c b/tools/intel_reg_decode.c index 46b19676..b351dcb5 100644 --- a/tools/intel_reg_decode.c +++ b/tools/intel_reg_decode.c @@ -2748,6 +2748,8 @@ static ssize_t get_regs(struct reg **regs, size_t *nregs, ssize_t index, &known_registers[i].regs[j]; struct reg reg; + memset(®, 0, sizeof(reg)); + /* XXX: Could be optimized. */ parse_port_desc(®, NULL); -- 2.14.1 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx