A collection of interfaces, libraries and tools for writing device drivers for seL4 that allow accessing devices securely and with low overhead.
17
stars
14
forks
source link
Block Virtualiser Fault with cache_clean #182
Closed
midnightveil closed 1 month ago
The cache clean function:
https://github.com/au-ts/sddf/blob/11b026912075f9acf446194aac52a8ff1bcf30cb/util/cache.c#L58-L67
Being called by the virtualiser here:
https://github.com/au-ts/sddf/blob/11b026912075f9acf446194aac52a8ff1bcf30cb/blk/components/virt.c#L337
When waiting on my SD card driver for long enough, is eventually called with the arguments:
Which then faults as
clean_by_va(0x40800000)
is called.Replacing
LINE_INDEX(end) + 1
with justLINE_INDEX(end)
does prevent further faults, but the code this was taken from in seL4 does this as well.https://github.com/seL4/seL4/blob/c679fe77d6441cd412dd253d953ee833dd25d740/src/arch/arm/machine/cache.c#L15-L24