Closed Bug 1654302 Opened 5 years ago Closed 5 years ago

Crash in [@ core::option::expect_failed | webrender::gpu_cache::GpuCache::get_address]

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1654901
Tracking Status
firefox-esr68 --- unaffected
firefox-esr78 --- unaffected
firefox78 --- unaffected
firefox79 --- unaffected
firefox80 --- fixed

People

(Reporter: achronop, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: crash, regression)

Crash Data

This bug is for crash report bp-fe8db8f0-360a-42e4-85cd-837ca0200720.

Top 10 frames of crashing thread:

0 XUL RustMozCrash mozglue/static/rust/wrappers.cpp:17
1 XUL mozglue_static::panic_hook mozglue/static/rust/lib.rs:89
2 XUL core::ops::function::Fn::call src/libcore/ops/function.rs:72
3 XUL std::panicking::rust_panic_with_hook src/libstd/panicking.rs:474
4 XUL rust_begin_unwind src/libstd/panicking.rs:378
5 XUL core::panicking::panic_fmt src/libcore/panicking.rs:85
6 XUL core::option::expect_failed src/libcore/option.rs:1203
7 XUL webrender::gpu_cache::GpuCache::get_address gfx/wr/webrender/src/gpu_cache.rs:933
8 XUL webrender::batch::BatchBuilder::add_prim_to_batch gfx/wr/webrender/src/batch.rs
9 XUL webrender::batch::BatchBuilder::add_pic_to_batch gfx/wr/webrender/src/batch.rs:775

Since 20200717212841 (4 days ago)

macOS, Win10:

MOZ_CRASH Reason (Sanitized) handle not requested or allocated!

https://searchfox.org/mozilla-central/rev/3b6958c26049c1e27b2790a43154caaba9f6dd4a/gfx/wr/webrender/src/gpu_cache.rs#933

    /// Get the actual GPU address in the texture for a given slot ID.
    /// It's assumed at this point that the given slot has been requested
    /// and built for this frame. Attempting to get the address for a
    /// freed or pending slot will panic!
    pub fn get_address(&self, id: &GpuCacheHandle) -> GpuCacheAddress {
        let location = id.location.expect("handle not requested or allocated!");
        let block = &self.texture.blocks[location.block_index.get()];
        debug_assert_eq!(block.epoch, location.epoch);
        debug_assert_eq!(block.last_access_time, self.now.frame_id());
        block.address
    }
Blocks: wr-stability
Keywords: regression
OS: Unspecified → All
Hardware: Unspecified → All
Depends on: 1654901
Status: NEW → RESOLVED
Closed: 5 years ago
No longer depends on: 1654901
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.