mirror of
https://github.com/antonblanchard/microwatt.git
synced 2026-04-12 14:53:10 +00:00
dcache: Loads from non-cacheable PTEs load entire 64 bits
A non-cacheable load should only load the data requested and no more. We do the right thing for real mode cache inhibited storage instructions, but when loading through a non-cacheable PTE we load the entire 64 bits regardless of the size. Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
This commit is contained in:
committed by
Anton Blanchard
parent
09bd01a49e
commit
b29c58f3d1
@@ -1363,7 +1363,7 @@ begin
|
||||
req.data := d_in.data;
|
||||
end if;
|
||||
-- Select all bytes for dcbz and for cacheable loads
|
||||
if r0.req.dcbz = '1' or (r0.req.load = '1' and r0.req.nc = '0') then
|
||||
if r0.req.dcbz = '1' or (r0.req.load = '1' and r0.req.nc = '0' and perm_attr.nocache = '0') then
|
||||
req.byte_sel := (others => '1');
|
||||
else
|
||||
req.byte_sel := r0.req.byte_sel;
|
||||
|
||||
Reference in New Issue
Block a user