Project

General

Profile

Actions

Bug #784

closed

crash dump support: incorrect argument on commit

Added by Mathieu Desnoyers almost 10 years ago. Updated almost 10 years ago.

Status:
Resolved
Priority:
Normal
Target version:
Start date:
04/16/2014
Due date:
% Done:

100%

Estimated time:

Description

lib_ring_buffer_write_commit_counter()'s 'buf_offset' argument should
contain offset of beginning of area used by the record being comitted.

However, lib_ring_buffer_commit() passes ctx->buf_offset, that gets
advanced by lib_ring_buffer_write() and thus points to just-after-
end-of-record at lib_ring_buffer_commit() time. This causes
lib_ring_buffer_write_commit_counter() to return without changing
commit_hot[idx].seq, due to

if (unlikely(subbuf_offset(offset - commit_count, chan)))
return;

Since after-crash data extraction tool checks 'seq' field to find out
how much data is in buffer, this results into inavailability of
data from partially-filled subbuffer for after-crash analysis.

Actions

Also available in: Atom PDF