> On Mar 16, 2015, at 3:50 AM, Ingo Molnar <[email protected]> wrote: > > > * Toshi Kani <[email protected]> wrote: > >> When an MTRR entry is inclusive to a requested range, i.e. >> the start and end of the request are not within the MTRR >> entry range but the range contains the MTRR entry entirely, >> __mtrr_type_lookup() ignores such a case because both >> start_state and end_state are set to zero. >> >> This patch fixes the issue by adding a new flag, 'inclusive', >> to detect the case. This case is then handled in the same >> way as (!start_state && end_state). > > It would be nice to discuss the high level effects of this fix in the > changelog: i.e. what (presumably bad thing) happened before the > change, what will happen after the change? What did users experience > before the patch, and what will users experience after the patch?
The original code uses this function to track memory attributes of ioremap'd ranges in order to avoid any aliasing. So, ignoring MTRR entries leads a tracked memory attribute different from its effective memory attribute. I will document more details in the next version. I will update the patchset next week. Thanks, -Toshi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

