diff options
author | Vineet Gupta <vgupta@synopsys.com> | 2013-05-22 15:08:10 +0200 |
---|---|---|
committer | Vineet Gupta <vgupta@synopsys.com> | 2013-05-23 10:54:52 +0200 |
commit | 3e87974dec5ec25a8a4852d9292db6be659164e6 (patch) | |
tree | ce7d2e84901ade9ff8f56a9319eb1a690200c2f5 /fs/jffs2/compr.c | |
parent | ARC: copy_(to|from)_user() to honor usermode-access permissions (diff) | |
download | linux-3e87974dec5ec25a8a4852d9292db6be659164e6.tar.xz linux-3e87974dec5ec25a8a4852d9292db6be659164e6.zip |
ARC: Brown paper bag bug in macro for checking cache color
The VM_EXEC check in update_mmu_cache() was getting optimized away
because of a stupid error in definition of macro addr_not_cache_congruent()
The intention was to have the equivalent of following:
if (a || (1 ? b : 0))
but we ended up with following:
if (a || 1 ? b : 0)
And because precedence of '||' is more that that of '?', gcc was optimizing
away evaluation of <a>
Nasty Repercussions:
1. For non-aliasing configs it would mean some extraneous dcache flushes
for non-code pages if U/K mappings were not congruent.
2. For aliasing config, some needed dcache flush for code pages might
be missed if U/K mappings were congruent.
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'fs/jffs2/compr.c')
0 files changed, 0 insertions, 0 deletions