cacheflush - выталкивает содержимое кэша инструкций и/или данных
ОБЗОР
#include <asm/cachectl.h>int cacheflush(char *addr, int nbytes, int cache);
ОПИСАНИЕ
cacheflush
выталкивает (видимо имеется в виду запись кэша из памяти на диск, хотя
на данной страничке явно об этом нигде не говориться -- прим.
пер.) содержимое указанного кэша(ей) для пользовательских
адресов в диапазоне от
addr
до (addr+nbytes-1). Параметр
cache
может принимать одно из значений:
ICACHE
Выталкивает кэш инструкций.
DCACHE
Выталкивает кэш данных.
BCACHE
Тоже что и
(ICACHE|DCACHE).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
cacheflush
возвращает 0 в случае успеха и -1 при ошибке. Если произошла ошибка,
значение
errno
будет установлено соответствующим образом.
ОШИБКИ
EINVAL
параметр
cache
не является одним из ICACHE, DCACHE или BCACHE.
EFAULT
Некоторые или все адреса диапазона от
addr
до (addr+nbytes-1) недоступны.
ОШИБКИ
Текущая реализация игнорирует параметры
addr
и
nbytes .
Таким образом, кэш всегда выталкивается полностью.
ЗАМЕЧАНИЕ
Этот системный вызов доступен только на системах, основанных на MIPS
(на MIPS платформе). Он не должен использоватьсяв программах,
которые задумываются как переносимые.