Commit 061d2c1d authored by Shubhrajyoti Datta's avatar Shubhrajyoti Datta Committed by Michal Simek

microblaze: Prevent the overflow of the start

In case the start + cache size is more than the max int the
start overflows.
Prevent the same.
Signed-off-by: default avatarShubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
parent 2602276d
...@@ -92,6 +92,7 @@ static inline void __disable_dcache_nomsr(void) ...@@ -92,6 +92,7 @@ static inline void __disable_dcache_nomsr(void)
#define CACHE_LOOP_LIMITS(start, end, cache_line_length, cache_size) \ #define CACHE_LOOP_LIMITS(start, end, cache_line_length, cache_size) \
do { \ do { \
int align = ~(cache_line_length - 1); \ int align = ~(cache_line_length - 1); \
if (start < UINT_MAX - cache_size) \
end = min(start + cache_size, end); \ end = min(start + cache_size, end); \
start &= align; \ start &= align; \
} while (0) } while (0)
......
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