From: Amos Jeffries Date: Mon, 12 May 2014 12:49:12 +0000 (-0700) Subject: Bug 2554: 32-bit wrap in AUFS counters X-Git-Tag: SQUID_3_5_0_1~235 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=22cec59ee4543e4a8c7235b880664b9d4f17da4b;p=thirdparty%2Fsquid.git Bug 2554: 32-bit wrap in AUFS counters --- diff --git a/src/DiskIO/DiskThreads/DiskThreads.h b/src/DiskIO/DiskThreads/DiskThreads.h index 5febb1a1b5..39f04a2a13 100644 --- a/src/DiskIO/DiskThreads/DiskThreads.h +++ b/src/DiskIO/DiskThreads/DiskThreads.h @@ -106,20 +106,20 @@ int aioQueueSize(void); class DiskThreadsIOStrategy; struct AIOCounts { - int open_start; - int open_finish; - int close_start; - int close_finish; - int cancel; - int write_start; - int write_finish; - int read_start; - int read_finish; - int stat_start; - int stat_finish; - int unlink_start; - int unlink_finish; - int check_callback; + uint64_t open_start; + uint64_t open_finish; + uint64_t close_start; + uint64_t close_finish; + uint64_t cancel; + uint64_t write_start; + uint64_t write_finish; + uint64_t read_start; + uint64_t read_finish; + uint64_t stat_start; + uint64_t stat_finish; + uint64_t unlink_start; + uint64_t unlink_finish; + uint64_t check_callback; }; extern AIOCounts squidaio_counts; diff --git a/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc b/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc index 0aa9a01ba6..41cf69dc04 100644 --- a/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc +++ b/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc @@ -196,16 +196,16 @@ void DiskThreadsIOStrategy::aioStats(StoreEntry * sentry) { storeAppendPrintf(sentry, "ASYNC IO Counters:\n"); - storeAppendPrintf(sentry, "Operation\t# Requests\tNumber serviced\n"); - storeAppendPrintf(sentry, "open\t%d\t%d\n", squidaio_counts.open_start, squidaio_counts.open_finish); - storeAppendPrintf(sentry, "close\t%d\t%d\n", squidaio_counts.close_start, squidaio_counts.close_finish); - storeAppendPrintf(sentry, "cancel\t%d\t-\n", squidaio_counts.cancel); - storeAppendPrintf(sentry, "write\t%d\t%d\n", squidaio_counts.write_start, squidaio_counts.write_finish); - storeAppendPrintf(sentry, "read\t%d\t%d\n", squidaio_counts.read_start, squidaio_counts.read_finish); - storeAppendPrintf(sentry, "stat\t%d\t%d\n", squidaio_counts.stat_start, squidaio_counts.stat_finish); - storeAppendPrintf(sentry, "unlink\t%d\t%d\n", squidaio_counts.unlink_start, squidaio_counts.unlink_finish); - storeAppendPrintf(sentry, "check_callback\t%d\t-\n", squidaio_counts.check_callback); - storeAppendPrintf(sentry, "queue\t%d\t-\n", squidaio_get_queue_len()); + storeAppendPrintf(sentry, " Operation\t# Requests\tNumber serviced\n"); + storeAppendPrintf(sentry, " open\t%" PRIu64 "\t%" PRIu64 "\n", squidaio_counts.open_start, squidaio_counts.open_finish); + storeAppendPrintf(sentry, " close\t%" PRIu64 "\t%" PRIu64 "\n", squidaio_counts.close_start, squidaio_counts.close_finish); + storeAppendPrintf(sentry, " cancel\t%" PRIu64 "\t-\n", squidaio_counts.cancel); + storeAppendPrintf(sentry, " write\t%" PRIu64 "\t%" PRIu64 "\n", squidaio_counts.write_start, squidaio_counts.write_finish); + storeAppendPrintf(sentry, " read\t%" PRIu64 "\t%" PRIu64 "\n", squidaio_counts.read_start, squidaio_counts.read_finish); + storeAppendPrintf(sentry, " stat\t%" PRIu64 "\t%" PRIu64 "\n", squidaio_counts.stat_start, squidaio_counts.stat_finish); + storeAppendPrintf(sentry, " unlink\t%" PRIu64 "\t%" PRIu64 "\n", squidaio_counts.unlink_start, squidaio_counts.unlink_finish); + storeAppendPrintf(sentry, " check_callback\t%" PRIu64 "\t-\n", squidaio_counts.check_callback); + storeAppendPrintf(sentry, " queue\t%d\t-\n", squidaio_get_queue_len()); squidaio_stats(sentry); }