svn commit: r205605 - head/sys/dev/syscons

Jung-uk Kim jkim at FreeBSD.org
Wed Mar 24 15:40:18 UTC 2010


Author: jkim
Date: Wed Mar 24 15:40:18 2010
New Revision: 205605
URL: http://svn.freebsd.org/changeset/base/205605

Log:
  Align memory access of 24-bit pixel renderer to word boundary.

Modified:
  head/sys/dev/syscons/scvgarndr.c

Modified: head/sys/dev/syscons/scvgarndr.c
==============================================================================
--- head/sys/dev/syscons/scvgarndr.c	Wed Mar 24 15:37:47 2010	(r205604)
+++ head/sys/dev/syscons/scvgarndr.c	Wed Mar 24 15:40:18 2010	(r205605)
@@ -184,8 +184,13 @@ static u_short mouse_or_mask[16] = {
 			writel(pos, vga_palette32[color]);		\
 			break;						\
 		case 24:						\
-			writew(pos, vga_palette32[color]);		\
-			writeb(pos + 2, vga_palette32[color] >> 16);	\
+			if (((pos) & 1) == 0) {				\
+				writew(pos, vga_palette32[color]);	\
+				writeb(pos + 2, vga_palette32[color] >> 16);\
+			} else {					\
+				writeb(pos, vga_palette32[color]);	\
+				writew(pos + 1, vga_palette32[color] >> 8);\
+			}						\
 			break;						\
 		case 16:						\
 			if (scp->sc->adp->va_info.vi_pixel_fsizes[1] == 5)\


More information about the svn-src-head mailing list