Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ccae2b57 authored by Jin Qian's avatar Jin Qian
Browse files

storaged: fix excessive accounting when io usage has negative delta

When current io bytes are smaller than previous bytes, add 0 to delta
instead of adding current io bytes.

Bug: 64317562
Merged-In: If0c9814892ad61b790baa6395649af10b11d5b7c
Change-Id: I1ffd7ac33649ab3b8405c83b1328fa9bf49702c0
parent 3bb2dfd2
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -228,13 +228,13 @@ void uid_monitor::update_curr_io_stats_locked()
            last_uid_io_stats[uid.uid].io[BACKGROUND].write_bytes;

        usage.bytes[READ][FOREGROUND][charger_stat] +=
            (fg_rd_delta < 0) ? uid.io[FOREGROUND].read_bytes : fg_rd_delta;
            (fg_rd_delta < 0) ? 0 : fg_rd_delta;
        usage.bytes[READ][BACKGROUND][charger_stat] +=
            (bg_rd_delta < 0) ? uid.io[BACKGROUND].read_bytes : bg_rd_delta;
            (bg_rd_delta < 0) ? 0 : bg_rd_delta;
        usage.bytes[WRITE][FOREGROUND][charger_stat] +=
            (fg_wr_delta < 0) ? uid.io[FOREGROUND].write_bytes : fg_wr_delta;
            (fg_wr_delta < 0) ? 0 : fg_wr_delta;
        usage.bytes[WRITE][BACKGROUND][charger_stat] +=
            (bg_wr_delta < 0) ? uid.io[BACKGROUND].write_bytes : bg_wr_delta;
            (bg_wr_delta < 0) ? 0 : bg_wr_delta;
    }

    last_uid_io_stats = uid_io_stats;