[Bug 111414] [REGRESSION] [BISECTED] Segmentation fault in si_bind_blend_state after removal of the blend state NULL check

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bug ID 111414
Summary [REGRESSION] [BISECTED] Segmentation fault in si_bind_blend_state after removal of the blend state NULL check
Product Mesa
Version git
Hardware x86-64 (AMD64)
OS Linux (All)
Status NEW
Severity normal
Priority medium
Component Drivers/Gallium/radeonsi
Assignee dri-devel@lists.freedesktop.org
Reporter edmondo.tommasina@gmail.com
QA Contact dri-devel@lists.freedesktop.org

Created attachment 145084 [details]
Backtrace

vlc using vdpau received signal SIGSEGV after the removal of the blend state
NULL check.

Bisected to:

https://gitlab.freedesktop.org/mesa/mesa/commit/b758eed9c373db14a5acc04d9522ec9d74e51f1b

commit b758eed9c373db14a5acc04d9522ec9d74e51f1b (HEAD, refs/bisect/bad)
Author: Marek Olšák <marek.olsak@amd.com>
Date:   Tue Jul 30 17:43:41 2019 -0400

    radeonsi: make sure that blend state != NULL and remove all NULL checking

    Reviewed-by: Pierre-Eric Pelloux-Prayer
<pierre-eric.pelloux-prayer@amd.com>




The backtrace shows old_blend = 0x0 where the new code doesn't check old_blend
anymore:
+       if (old_blend->cb_target_mask != blend->cb_target_mask ||


Full backtrace attached, here an extract:

0x00007fff60e6497b in si_bind_blend_state (ctx=0x7fff58468f20, state=<optimized
out>) at ../mesa-9999/src/gallium/drivers/radeonsi/si_state.c:686
686     ../mesa-9999/src/gallium/drivers/radeonsi/si_state.c: No such file or
directory.
(gdb) bt full
#0  0x00007fff60e6497b in si_bind_blend_state (ctx=0x7fff58468f20,
state=<optimized out>) at
../mesa-9999/src/gallium/drivers/radeonsi/si_state.c:686
        sctx = 0x7fff58468f20
        old_blend = 0x0
        blend = 0x7fff584f2220
#1  0x00007fff60cea216 in draw_layers (dirty=0x7fff584099b8, s=0x7fff584fbf60,
c=0x7fff58409788) at
../mesa-9999/src/gallium/auxiliary/vl/vl_compositor_gfx.c:662
        layer = 0x7fff584fbf98
        samplers = 0x7fff584fbfe8
        num_sampler_views = 1
        blend = <optimized out>
        vb_index = 0
        i = 0
        vb_index = <optimized out>
        i = <optimized out>
        layer = <optimized out>
        samplers = <optimized out>
        num_sampler_views = <optimized out>
        blend = <optimized out>
        drawn = <optimized out>
#2  vl_compositor_gfx_render (s=s@entry=0x7fff584fbf60,
c=c@entry=0x7fff58409788, dst_surface=dst_surface@entry=0x7fff58530980,
dirty_area=0x7fff584099b8, dirty_area@entry=0x1, clear_dirty=<optimized out>)
    at ../mesa-9999/src/gallium/auxiliary/vl/vl_compositor_gfx.c:725
No locals.
#3  0x00007fff60ce462c in vl_compositor_render (clear_dirty=true,
dirty_area=0x1, dst_surface=0x7fff58530980, c=0x7fff58409788, s=0x7fff584fbf60)
at ../mesa-9999/src/gallium/auxiliary/vl/vl_compositor.c:755
No locals.
#4  vl_compositor_render (s=s@entry=0x7fff584fbf60, c=c@entry=0x7fff58409788,
dst_surface=dst_surface@entry=0x7fff5866b060,
dirty_area=dirty_area@entry=0x7fff584099b8, clear_dirty=clear_dirty@entry=true)
    at ../mesa-9999/src/gallium/auxiliary/vl/vl_compositor.c:744
No locals.
#5  0x00007fff60cda6ae in vlVdpPresentationQueueDisplay
(presentation_queue=<optimized out>, surface=4, clip_width=<optimized out>,
clip_height=0, earliest_presentation_time=36232721127000)
    at ../mesa-9999/src/gallium/state_trackers/vdpau/presentation.c:262
        dump_window = -1
        pq = 0x7fff584fbf50
        surf = 0x7fff585043d0
        pipe = 0x7fff58468f20
        tex = 0x7fff58530980
        surf_templ = {reference = {count = 0}, format =
PIPE_FORMAT_B8G8R8X8_UNORM, writable = 0, texture = 0x0, context = 0x0, width =
0, height = 0, nr_samples = 0, u = {tex = {level = 0, first_layer = 0,
last_layer = 0}, buf = {
              first_element = 0, last_element = 0}}}
        surf_draw = 0x7fff5866b060
        src_rect = {x0 = 0, x1 = 1658, y0 = 0, y1 = 933}
        dst_clip = {x0 = 0, x1 = 1658, y0 = 0, y1 = 933}
        dirty_area = 0x7fff584099b8
        compositor = 0x7fff58409788
        cstate = 0x7fff584fbf60
        vscreen = 0x7fff58409900


You are receiving this mail because:
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux