Skip to contentSkip to conversation

drivers/video/kyro/* - compile warning cleanup

PATCH In review Stephen Biggs 2 participants 2 messages Feb 10, 2005 – Feb 11, 2005

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 19/26 drivers/video/kyro/* - compile warning cleanup

Description: compile warning cleanup - handle copy_to/from_user error returns

drivers/video/kyro/fbdev.c +21 -6
diff -Nurdp -X dontdiff-osdl linux-2.6.11-rc3-mm-original/drivers/video/kyro/fbdev.c linux-2.6.11-rc3-mm/drivers/video/kyro/fbdev.c
@@ -596,7 +596,10 @@ static int kyrofb_ioctl(struct inode *in
 
 	switch (cmd) {
 	case KYRO_IOCTL_OVERLAY_CREATE:
-		copy_from_user(&ol_create, argp, sizeof(overlay_create));
+		if (copy_from_user(&ol_create, argp, sizeof(overlay_create))) {
+			printk(KERN_ERR "copy_from_user failed!\n");
+			return -EFAULT;
+		}
 
 		if (kyro_dev_overlay_create(ol_create.ulWidth,
 					    ol_create.ulHeight, 0) < 0) {
@@ -606,8 +609,11 @@ static int kyrofb_ioctl(struct inode *in
 		}
 		break;
 	case KYRO_IOCTL_OVERLAY_VIEWPORT_SET:
-		copy_from_user(&ol_viewport_set, argp,
-			       sizeof(overlay_viewport_set));
+		if (copy_from_user(&ol_viewport_set, argp,
+			       sizeof(overlay_viewport_set))) {
+			printk(KERN_ERR "copy_from_user failed!\n");
+			return -EFAULT;
+		}
 
 		if (kyro_dev_overlay_viewport_set(ol_viewport_set.xOrgin,
 						  ol_viewport_set.yOrgin,
@@ -627,13 +633,22 @@ static int kyrofb_ioctl(struct inode *in
 		}
 		break;
 	case KYRO_IOCTL_UVSTRIDE:
-		copy_to_user(argp, &deviceInfo.ulOverlayUVStride, sizeof(unsigned long));
+		if (copy_to_user(argp, &deviceInfo.ulOverlayUVStride, sizeof(unsigned long))) {
+			printk(KERN_ERR "copy_to_user failed!\n");
+			return -EFAULT;
+		}
 		break;
 	case KYRO_IOCTL_STRIDE:
-		copy_to_user(argp, &deviceInfo.ulOverlayStride, sizeof(unsigned long));
+		if (copy_to_user(argp, &deviceInfo.ulOverlayStride, sizeof(unsigned long))) {
+			printk(KERN_ERR "copy_to_user failed!\n");
+			return -EFAULT;
+		}
 		break;
 	case KYRO_IOCTL_OVERLAY_OFFSET:
-		copy_to_user(argp, &deviceInfo.ulOverlayOffset, sizeof(unsigned long));
+		if (copy_to_user(argp, &deviceInfo.ulOverlayOffset, sizeof(unsigned long))) {
+			printk(KERN_ERR "copy_to_user failed!\n");
+			return -EFAULT;
+		}
 		break;
 	}
 

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#1 lore raw

drivers/video/kyro/fbdev.c static int kyrofb_ioctl(struct inode *in · line 600

Quoted 6 lines · Stephen Biggs
drivers/video/kyro/fbdev.c +2 -1
 
-		copy_from_user(&ol_create, argp, sizeof(overlay_create));
+		if (copy_from_user(&ol_create, argp, sizeof(overlay_create))) {
+			printk(KERN_ERR "copy_from_user failed!\n");

Forgotten "Kyro FB: " prefix.

Quoted 7 lines
drivers/video/kyro/fbdev.c +3 -3
-		copy_from_user(&ol_viewport_set, argp,
-			       sizeof(overlay_viewport_set));
+		if (copy_from_user(&ol_viewport_set, argp,
+			       sizeof(overlay_viewport_set))) {
+			printk(KERN_ERR "copy_from_user failed!\n");
 
-		copy_to_user(argp, &deviceInfo.ulOverlayUVStride, sizeof(unsigned long));

drivers/video/kyro/fbdev.c

Quoted 10 lines
drivers/video/kyro/fbdev.c +6 -2
+		if (copy_to_user(argp, &deviceInfo.ulOverlayUVStride, sizeof(unsigned long))) {
+			printk(KERN_ERR "copy_to_user failed!\n");
 
-		copy_to_user(argp, &deviceInfo.ulOverlayStride, sizeof(unsigned long));
+		if (copy_to_user(argp, &deviceInfo.ulOverlayStride, sizeof(unsigned long))) {
+			printk(KERN_ERR "copy_to_user failed!\n");
 
-		copy_to_user(argp, &deviceInfo.ulOverlayOffset, sizeof(unsigned long));
+		if (copy_to_user(argp, &deviceInfo.ulOverlayOffset, sizeof(unsigned long))) {
+			printk(KERN_ERR "copy_to_user failed!\n");

Alexey

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors