forked from luck/tmp_suning_uos_patched
xtensa: ISS: allow simdisk to use high memory buffers
ISS kernel by default has only low memory. But it may be configured to support high memory and started in a simulator with more than 128M of RAM. Simdisk driver in such configuration can get IO request with a high memory page. There may be no TLB entry for that page, only page table entry. However simulators don't do pagewalking, so such IO request will fail. Touch IO buffer in the buffer read/write loop so that a TLB entry is likely there when read or write simcall is invoked. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
parent
feec273a2b
commit
549409b4b5
|
@ -86,6 +86,7 @@ static void simdisk_transfer(struct simdisk *dev, unsigned long sector,
|
|||
unsigned long io;
|
||||
|
||||
simc_lseek(dev->fd, offset, SEEK_SET);
|
||||
READ_ONCE(*buffer);
|
||||
if (write)
|
||||
io = simc_write(dev->fd, buffer, nbytes);
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue
Block a user