bring in jantorial changes from 2.5.51
parent
fd621fd4a0
commit
786228bd26
|
@ -449,7 +449,8 @@ static int DRM(_vma_info)(char *buf, char **start, off_t offset, int request,
|
|||
for (i = vma->vm_start; i < vma->vm_end; i += PAGE_SIZE) {
|
||||
pgd = pgd_offset(vma->vm_mm, i);
|
||||
pmd = pmd_offset(pgd, i);
|
||||
pte = pte_offset(pmd, i);
|
||||
preempt_disable();
|
||||
pte = pte_offset_map(pmd, i);
|
||||
if (pte_present(*pte)) {
|
||||
address = __pa(pte_page(*pte))
|
||||
+ (i & (PAGE_SIZE-1));
|
||||
|
@ -465,6 +466,8 @@ static int DRM(_vma_info)(char *buf, char **start, off_t offset, int request,
|
|||
} else {
|
||||
DRM_PROC_PRINT(" 0x%08lx\n", i);
|
||||
}
|
||||
pte_unmap(pte);
|
||||
preempt_enable();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include "i810_drv.h"
|
||||
#include <linux/interrupt.h> /* For task queue support */
|
||||
#include <linux/delay.h>
|
||||
#include <linux/pagemap.h>
|
||||
|
||||
#ifdef DO_MUNMAP_4_ARGS
|
||||
#define DO_MUNMAP(m, a, l) do_munmap(m, a, l, 1)
|
||||
|
@ -1184,7 +1185,8 @@ int i810_ov0_info(struct inode *inode, struct file *filp,
|
|||
|
||||
data.offset = dev_priv->overlay_offset;
|
||||
data.physical = dev_priv->overlay_physical;
|
||||
copy_to_user((drm_i810_overlay_t *)arg,&data,sizeof(data));
|
||||
if (copy_to_user((drm_i810_overlay_t *)arg,&data,sizeof(data)))
|
||||
return -EFAULT;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -449,7 +449,8 @@ static int DRM(_vma_info)(char *buf, char **start, off_t offset, int request,
|
|||
for (i = vma->vm_start; i < vma->vm_end; i += PAGE_SIZE) {
|
||||
pgd = pgd_offset(vma->vm_mm, i);
|
||||
pmd = pmd_offset(pgd, i);
|
||||
pte = pte_offset(pmd, i);
|
||||
preempt_disable();
|
||||
pte = pte_offset_map(pmd, i);
|
||||
if (pte_present(*pte)) {
|
||||
address = __pa(pte_page(*pte))
|
||||
+ (i & (PAGE_SIZE-1));
|
||||
|
@ -465,6 +466,8 @@ static int DRM(_vma_info)(char *buf, char **start, off_t offset, int request,
|
|||
} else {
|
||||
DRM_PROC_PRINT(" 0x%08lx\n", i);
|
||||
}
|
||||
pte_unmap(pte);
|
||||
preempt_enable();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include "i810_drv.h"
|
||||
#include <linux/interrupt.h> /* For task queue support */
|
||||
#include <linux/delay.h>
|
||||
#include <linux/pagemap.h>
|
||||
|
||||
#ifdef DO_MUNMAP_4_ARGS
|
||||
#define DO_MUNMAP(m, a, l) do_munmap(m, a, l, 1)
|
||||
|
@ -1184,7 +1185,8 @@ int i810_ov0_info(struct inode *inode, struct file *filp,
|
|||
|
||||
data.offset = dev_priv->overlay_offset;
|
||||
data.physical = dev_priv->overlay_physical;
|
||||
copy_to_user((drm_i810_overlay_t *)arg,&data,sizeof(data));
|
||||
if (copy_to_user((drm_i810_overlay_t *)arg,&data,sizeof(data)))
|
||||
return -EFAULT;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -50,15 +50,16 @@ set_t *setInit(void)
|
|||
set_t *set;
|
||||
|
||||
set = (set_t *)MALLOC(sizeof(set_t));
|
||||
for(i = 0; i < SET_SIZE; i++){
|
||||
set->list[i].free_next = i+1;
|
||||
set->list[i].alloc_next = -1;
|
||||
}
|
||||
set->list[SET_SIZE-1].free_next = -1;
|
||||
set->free = 0;
|
||||
set->alloc = -1;
|
||||
set->trace = -1;
|
||||
|
||||
if (set) {
|
||||
for(i = 0; i < SET_SIZE; i++){
|
||||
set->list[i].free_next = i+1;
|
||||
set->list[i].alloc_next = -1;
|
||||
}
|
||||
set->list[SET_SIZE-1].free_next = -1;
|
||||
set->free = 0;
|
||||
set->alloc = -1;
|
||||
set->trace = -1;
|
||||
}
|
||||
return set;
|
||||
}
|
||||
|
||||
|
@ -172,7 +173,8 @@ static void *calloc(size_t nmemb, size_t size)
|
|||
{
|
||||
void *addr;
|
||||
addr = kmalloc(nmemb*size, GFP_KERNEL);
|
||||
memset(addr, 0, nmemb*size);
|
||||
if (addr)
|
||||
memset(addr, 0, nmemb*size);
|
||||
return addr;
|
||||
}
|
||||
#define free(n) kfree(n)
|
||||
|
|
Loading…
Reference in New Issue