Hello Peter, thanks a lot for comment.

02.07.2015 12:27, Peter Maydell пишет:
Thanks; this does look like a bug. This change will mean we
call timer_del() even if the timer was already disabled,
though, so I think it would be slightly better to rearrange
the existing logic something like this:

   if ((old & 1) != (value & 1)) {
      if (value & 1) {
          if (tb->count == 0 && (tb->control & 2)) {
              tb->count = tb->load;
          }
          timerblock_reload(tb, 1);
      } else {
          timer_del(tb->timer);
      }
   }

thanks
-- PMM


Calling timer_del() twice is safe, but I agree that it would be better to avoid it. I'll send V2.

--
Dmitry

Reply via email to