=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/xinstall/xinstall.c,v retrieving revision 1.38 retrieving revision 1.39 diff -c -r1.38 -r1.39 *** src/usr.bin/xinstall/xinstall.c 2003/11/22 13:40:28 1.38 --- src/usr.bin/xinstall/xinstall.c 2003/11/22 14:17:32 1.39 *************** *** 1,4 **** ! /* $OpenBSD: xinstall.c,v 1.38 2003/11/22 13:40:28 grange Exp $ */ /* $NetBSD: xinstall.c,v 1.9 1995/12/20 10:25:17 jonathan Exp $ */ /* --- 1,4 ---- ! /* $OpenBSD: xinstall.c,v 1.39 2003/11/22 14:17:32 mickey Exp $ */ /* $NetBSD: xinstall.c,v 1.9 1995/12/20 10:25:17 jonathan Exp $ */ /* *************** *** 40,46 **** #if 0 static char sccsid[] = "@(#)xinstall.c 8.1 (Berkeley) 7/21/93"; #endif ! static char rcsid[] = "$OpenBSD: xinstall.c,v 1.38 2003/11/22 13:40:28 grange Exp $"; #endif /* not lint */ #include --- 40,46 ---- #if 0 static char sccsid[] = "@(#)xinstall.c 8.1 (Berkeley) 7/21/93"; #endif ! static char rcsid[] = "$OpenBSD: xinstall.c,v 1.39 2003/11/22 14:17:32 mickey Exp $"; #endif /* not lint */ #include *************** *** 438,443 **** --- 438,445 ---- (void)unlink(to_name); errx(EX_OSERR, "%s: %s", from_name, strerror(serrno)); } + if (size) + madvise(p, size, MADV_SEQUENTIAL); siz = (size_t)size; if ((nw = write(to_fd, p, siz)) != siz) { serrno = errno; *************** *** 514,519 **** --- 516,525 ---- if ((p2 = mmap(NULL, length, PROT_READ, MAP_PRIVATE, to_fd, to_off)) == MAP_FAILED) err(EX_OSERR, "%s", to_name); + if (length) { + madvise(p1, length, MADV_SEQUENTIAL); + madvise(p2, length, MADV_SEQUENTIAL); + } dfound = memcmp(p1, p2, length);