cacheflush - flush contents of instruction and/or data cache


   #include <asm/cachectl.h>

   int cacheflush(char *addr, int nbytes, int cache);


   cacheflush()  flushes  the  contents  of the indicated cache(s) for the
   user addresses in the range addr to (addr+nbytes-1).  cache may be  one

   ICACHE Flush the instruction cache.

   DCACHE Write  back  to  memory  and invalidate the affected valid cache



   cacheflush() returns 0 on success  or  -1  on  error.   If  errors  are
   detected, errno will indicate the error.


   EFAULT Some  or all of the address range addr to (addr+nbytes-1) is not

   EINVAL cache is not one of ICACHE, DCACHE, or BCACHE (but see BUGS).


   Historically, this system call was available on all MIPS UNIX  variants
   including RISC/os, IRIX, Ultrix, NetBSD, OpenBSD, and FreeBSD (and also
   on some non-UNIX MIPS operating systems), so that the existence of this
   call in MIPS operating systems is a de-facto standard.

   cacheflush()  should  not  be used in programs intended to be portable.
   On Linux, this call  first  appeared  on  the  MIPS  architecture,  but
   nowadays,  Linux  provides  a  cacheflush()  system  call on some other
   architectures, but with different arguments.


   Linux kernels older than version 2.6.11  ignore  the  addr  and  nbytes
   arguments, making this function fairly expensive.  Therefore, the whole
   cache is always flushed.

   This function always behaves as if BCACHE has been passed for the cache
   argument and does not do any error checking on the cache argument.


   This  page  is  part of release 4.09 of the Linux man-pages project.  A
   description of the project, information about reporting bugs,  and  the
   latest     version     of     this    page,    can    be    found    at

More Linux Commands

tty(4) - controlling terminal (Special - Linux man page)....
The file /dev/tty is a character file with major number 5 and minor number 0, usually of mode 0666 and root.tty. It is a synonym for the controlling

ntohs(3) - convert values between host and network byte orde
The htonl() function converts the unsigned integer hostlong from host byte order to network byte order. The htons() function converts the unsigned short integer

XForceScreenSaver(3) - manipulate the screen saver (ManPage)
Timeout and interval are specified in seconds. A timeout of 0 disables the screen saver (but an activated screen saver is not deactivated), and a timeout of -1

pcre16_refcount(3) Perl-compatible regular expressions......
This function is used to maintain a reference count inside a data block that contains a compiled pattern. Its arguments are: code Compiled regular expression ad

inopts(3ncurses) - curses input options - Linux manual page
Normally, the tty driver buffers typed characters until a newline or carriage return is typed. The cbreak routine disables line buffering and erase/kill charact

textutil(n) - Procedures to manipulate texts and strings....
The package textutil provides commands that manipulate strings or texts (a.k.a. long strings or string with embedded newlines or paragraphs). It is actually a b

nftw(3) - file tree walk (Library - Linux man page).........
ftw() walks through the directory tree that is located under the directory dirpath, and calls fn() once for each entry in the tree. By default, directories are

biof(1) - rotating stack of quads. - Linux manual page......
This is an attempt to recreate some of the work of William Latham. Take a look at the program organic art at this site ( Ported to Li

gnutls_pkcs7_set_crt(3) - API function - Linux manual page
This function will add a parsed certificate to the PKCS7 or RFC2630 certificate set. This is a wrapper function over gnutls_pkcs7_set_crt_raw() . RETURNS On suc

IPC::Open2(3pm) - open a process for both reading and writin
The open2() function runs the given $cmd and connects $chld_out for reading and $chld_in for writing. Its what you think should work when you try $pid = open(HA

XkbAddGeomKeyAlias(3) - Add one key alias to an existing key
XkbAddGeomKeyAlias.3 - Xkb provides functions to add a single new element to the top-level keyboard geometry. In each case the num_ * fields of the correspondin

imake(1) - C preprocessor interface to the make utility.....
Imake is used to generate Makefiles from a template, a set of cpp macro functions, and a per-directory input file called an Imakefile. This allows machine depen

We can't live, work or learn in freedom unless the software we use is free.