PERFORCE change 84320 for review

Peter Wemm peter at FreeBSD.org
Mon Sep 26 16:52:24 PDT 2005


http://perforce.freebsd.org/chv.cgi?CH=84320

Change 84320 by peter at peter_melody on 2005/09/26 23:51:30

	Mask off user supplied upper bits for %dr6 and %dr7

Affected files ...

.. //depot/projects/hammer/sys/amd64/amd64/machdep.c#140 edit

Differences ...

==== //depot/projects/hammer/sys/amd64/amd64/machdep.c#140 (text+ko) ====

@@ -1731,6 +1731,13 @@
 		     i++, mask1 <<= 2, mask2 <<= 2)
 			if ((dbregs->dr[7] & mask1) == mask2)
 				return (EINVAL);
+		/*
+		 * Bits 5-12 and 32-63 are reserved for dr6, and bits 10-15 and
+		 * 32-63 of dr7 are reserved.  However, bits 32-63 cause a GPF.
+		 */
+		if ((dbregs->dr[6] & 0xffffffff00000000ul) != 0 ||
+		    (dbregs->dr[7] & 0xffffffff00000000ul) != 0)
+			return (EINVAL);
 
 		pcb = td->td_pcb;
 


More information about the p4-projects mailing list