Commit 70cb6e1d authored by Len Brown's avatar Len Brown

APEI GHES: 32-bit buildfix

drivers/acpi/apei/ghes.c:542: warning: integer overflow in expression
drivers/acpi/apei/ghes.c:619: warning: integer overflow in expression

ghes.c:(.text+0x46289): undefined reference to `__udivdi3'
  in function ghes_estatus_cache_add().
Reported-by: default avatarRandy Dunlap <rdunlap@xenotime.net>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent a7e09d45
...@@ -65,7 +65,7 @@ ...@@ -65,7 +65,7 @@
#define GHES_ESTATUS_CACHES_SIZE 4 #define GHES_ESTATUS_CACHES_SIZE 4
#define GHES_ESTATUS_IN_CACHE_MAX_NSEC (10 * NSEC_PER_SEC) #define GHES_ESTATUS_IN_CACHE_MAX_NSEC 10000000000ULL
/* Prevent too many caches are allocated because of RCU */ /* Prevent too many caches are allocated because of RCU */
#define GHES_ESTATUS_CACHE_ALLOCED_MAX (GHES_ESTATUS_CACHES_SIZE * 3 / 2) #define GHES_ESTATUS_CACHE_ALLOCED_MAX (GHES_ESTATUS_CACHES_SIZE * 3 / 2)
...@@ -622,7 +622,8 @@ static void ghes_estatus_cache_add( ...@@ -622,7 +622,8 @@ static void ghes_estatus_cache_add(
break; break;
} }
count = atomic_read(&cache->count); count = atomic_read(&cache->count);
period = duration / (count + 1); period = duration;
do_div(period, (count + 1));
if (period > max_period) { if (period > max_period) {
max_period = period; max_period = period;
slot = i; slot = i;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment