diff options
| author | Alejandro Colomar <alx.manpages@gmail.com> | 2020-12-14 15:38:53 +0100 |
|---|---|---|
| committer | Michael Kerrisk <mtk.manpages@gmail.com> | 2020-12-20 21:49:49 +0100 |
| commit | 08811c1418e4fce2b8e9693916e9ed10339ea897 (patch) | |
| tree | 0f42013ddacafec88a992f6a4b756f3b58888fcd | |
| parent | d7e7ab0e3471b92c824e270a1361c84a03ab9f69 (diff) | |
| download | man-pages-08811c1418e4fce2b8e9693916e9ed10339ea897.tar.gz | |
cacheflush.2: Document Architecture-specific variants
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
| -rw-r--r-- | man2/cacheflush.2 | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/man2/cacheflush.2 b/man2/cacheflush.2 index 0701017e78..439ef92ef1 100644 --- a/man2/cacheflush.2 +++ b/man2/cacheflush.2 @@ -31,6 +31,10 @@ cacheflush \- flush contents of instruction and/or data cache .PP .BI "int cacheflush(char *" addr ", int "nbytes ", int "cache ); .fi +.PP +.IR Note : +On some architectures, +there is no glibc wrapper for this system call; see NOTES. .SH DESCRIPTION .BR cacheflush () flushes the contents of the indicated cache(s) for the @@ -87,6 +91,44 @@ but nowadays, Linux provides a .BR cacheflush () system call on some other architectures, but with different arguments. .SH NOTES +.SS Architecture-specific variants +Glibc provides a wrapper for this system call, +with the prototype shown in SYNOPSIS, +for the following architectures: +ARC, CSKY, MIPS, and NIOS2. +.PP +On some other architectures, +Linux provides this system call, with different arguments: +.TP +M68K: +.PP +.in +4n +.EX +.BI "int cacheflush(unsigned long " addr ", int " scope ", int " cache , +.BI " unsigned long " len ); +.EE +.in +.TP +SH: +.PP +.in +4n +.EX +.BI "int cacheflush(unsigned long " addr ", unsigned long " len ", int " op ); +.EE +.in +.TP +NDS32: +.PP +.in +4n +.EX +.BI "int cacheflush(unsigned int " start ", unsigned int " end ", int " cache ); +.EE +.in +.PP +On the above architectures, +glibc does not provide a wrapper for this system call; call it using +.BR syscall (2). +.SS GCC alternative Unless you need the finer grained control that this system call provides, you probably want to use the GCC built-in function .BR __builtin___clear_cache (), |
