Commit e15bd39
committed
Fix cache line alignment in Cache_Maintenance
The generic Cache_Maintenance procedure used the raw Start address as
the initial DCCMVAC write address without first aligning it down to a
cache line boundary. If Start was not 32-byte aligned, the first cache
line was only partially cleaned. Additionally, Len was not extended to
account for the trimmed prefix bytes, leaving the final partial cache
line unflushed.
Fix by aligning Op_Addr down to the nearest cache line boundary and
extending Op_Size by the corresponding offset, ensuring all cache lines
covering [Start, Start+Len) are cleaned.
correct new copyright date
formatting for readability1 parent 68b8aa9 commit e15bd39
1 file changed
Lines changed: 9 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
93 | | - | |
94 | 93 | | |
95 | 94 | | |
96 | 95 | | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
102 | 104 | | |
103 | 105 | | |
104 | | - | |
105 | 106 | | |
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
109 | 110 | | |
110 | | - | |
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
| |||
0 commit comments