Merge branch 'master' into for-2.6.35
[safe/jmp/linux-2.6] / drivers / gpu / drm / radeon / r300_cmdbuf.c
index 7f59352..c5c2742 100644 (file)
@@ -767,7 +767,7 @@ static __inline__ int r300_emit_packet3(drm_radeon_private_t *dev_priv,
                default:
                        DRM_ERROR("bad packet3 type %i at byte %d\n",
                                  header.packet3.packet,
-                                 cmdbuf->buffer->iterator - sizeof(header));
+                                 cmdbuf->buffer->iterator - (int)sizeof(header));
                        return -EINVAL;
                }
 
@@ -921,7 +921,7 @@ static int r300_scratch(drm_radeon_private_t *dev_priv,
 
        ptr_addr = drm_buffer_read_object(cmdbuf->buffer,
                        sizeof(stack_ptr_addr), &stack_ptr_addr);
-       ref_age_base = (u32 *)(unsigned long)*ptr_addr;
+       ref_age_base = (u32 *)(unsigned long)get_unaligned(ptr_addr);
 
        for (i=0; i < header.scratch.n_bufs; i++) {
                buf_idx = drm_buffer_pointer_to_dword(cmdbuf->buffer, 0);
@@ -1153,7 +1153,7 @@ int r300_do_cp_cmdbuf(struct drm_device *dev,
                default:
                        DRM_ERROR("bad cmd_type %i at byte %d\n",
                                  header->header.cmd_type,
-                                 cmdbuf->buffer->iterator - sizeof(*header));
+                                 cmdbuf->buffer->iterator - (int)sizeof(*header));
                        ret = -EINVAL;
                        goto cleanup;
                }