|
From: | Paolo Bonzini |
Subject: | Re: [Qemu-devel] [RFC PATCH v9 11/23] replay: recording and replaying clock ticks |
Date: | Wed, 18 Feb 2015 15:13:10 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
On 18/02/2015 12:56, Pavel Dovgalyuk wrote: > +void replay_read_next_clock(ReplayClockKind kind) This function is called like this: > + if (replay_file) { > + int64_t ret; > + replay_mutex_lock(); > + if (skip_async_events(EVENT_CLOCK + kind)) { > + replay_read_next_clock(kind); > + } So it seems to me that this section is unnecessary: > + replay_fetch_data_kind(); > + if (replay_file) { > + unsigned int read_kind = replay_data_kind - EVENT_CLOCK; > + > + if (read_kind != kind) { > + return; > + } 1) replay_file must be non-NULL 2) skip_async_events has fetched replay_data_kind 3) replay_data_kind - EVENT_CLOCK must match read_kind It can be replaced simply with assert(replay_has_unread_data); assert(replay_data_kind - EVENT_CLOCK == kind); I suspect there are other cases like this where you have unnecessary calls to replay_fetch_data_kind(). Paolo
[Prev in Thread] | Current Thread | [Next in Thread] |