| 123456789101112131415161718192021222324252627 | /* vi: set sw=4 ts=4: *//* Licensed under the LGPL v2.1, see the file LICENSE in this tarball. */#include <sys/mman.h>#include <sys/syscall.h>#ifdef __ARCH_USE_MMU__#if defined __NR_madvise && defined __USE_XOPEN2K && defined __UCLIBC_HAS_ADVANCED_REALTIME__int posix_madvise(void *addr, size_t len, int advice){	int result;	/* We have one problem: the kernel's MADV_DONTNEED does not	 * correspond to POSIX's POSIX_MADV_DONTNEED.  The former simply	 * discards changes made to the memory without writing it back to	 * disk, if this would be necessary.  The POSIX behaviour does not	 * allow this.  There is no functionality mapping for the POSIX	 * behaviour so far so we ignore that advice for now. */	if (advice == POSIX_MADV_DONTNEED)		return 0;	/* this part might use madvise function */	INTERNAL_SYSCALL_DECL (err);	result = INTERNAL_SYSCALL (madvise, err, 3, addr, len, advice);	return INTERNAL_SYSCALL_ERRNO (result, err);}#endif#endif
 |