diff options
author | dfr <dfr@FreeBSD.org> | 1999-05-22 17:35:04 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1999-05-22 17:35:04 +0000 |
commit | 345a2a7d8e7e1cf1fedabe824a70a746764f7574 (patch) | |
tree | 8a600fbdf3bab5fbb15fc3e1353e29d3c184035f /lib/libio/swiz.c | |
parent | d833054363f1e65a1738181a94ddaad59cb0e12b (diff) | |
download | FreeBSD-src-345a2a7d8e7e1cf1fedabe824a70a746764f7574.zip FreeBSD-src-345a2a7d8e7e1cf1fedabe824a70a746764f7574.tar.gz |
Cope with non page-aligned arguments to ioperm.
Diffstat (limited to 'lib/libio/swiz.c')
-rw-r--r-- | lib/libio/swiz.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/libio/swiz.c b/lib/libio/swiz.c index d8bb7b5..28848c1 100644 --- a/lib/libio/swiz.c +++ b/lib/libio/swiz.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $Id: swiz.c,v 1.1 1998/12/12 18:05:06 dfr Exp $ */ #include <sys/param.h> @@ -86,8 +86,8 @@ swiz_ioperm(u_int32_t from, u_int32_t num, int on) if (!on) return -1; /* XXX can't unmap yet */ - start = from << 5; - end = (from + num) << 5; + start = trunc_page(from << 5); + end = round_page((from + num) << 5); addr = swiz_ports + start; munmap(addr, end - start); mmap(addr, end - start, PROT_READ|PROT_WRITE, MAP_SHARED, |