aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/uio/uio.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/uio/uio.c')
-rw-r--r--drivers/uio/uio.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/uio/uio.c b/drivers/uio/uio.c
index d2efe823c20d..a783d533a1a6 100644
--- a/drivers/uio/uio.c
+++ b/drivers/uio/uio.c
@@ -69,7 +69,7 @@ static ssize_t map_name_show(struct uio_mem *mem, char *buf)
69 69
70static ssize_t map_addr_show(struct uio_mem *mem, char *buf) 70static ssize_t map_addr_show(struct uio_mem *mem, char *buf)
71{ 71{
72 return sprintf(buf, "0x%lx\n", mem->addr); 72 return sprintf(buf, "0x%llx\n", (unsigned long long)mem->addr);
73} 73}
74 74
75static ssize_t map_size_show(struct uio_mem *mem, char *buf) 75static ssize_t map_size_show(struct uio_mem *mem, char *buf)
@@ -79,7 +79,7 @@ static ssize_t map_size_show(struct uio_mem *mem, char *buf)
79 79
80static ssize_t map_offset_show(struct uio_mem *mem, char *buf) 80static ssize_t map_offset_show(struct uio_mem *mem, char *buf)
81{ 81{
82 return sprintf(buf, "0x%lx\n", mem->addr & ~PAGE_MASK); 82 return sprintf(buf, "0x%llx\n", (unsigned long long)mem->addr & ~PAGE_MASK);
83} 83}
84 84
85struct map_sysfs_entry { 85struct map_sysfs_entry {
@@ -634,8 +634,7 @@ static int uio_vma_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
634 if (idev->info->mem[mi].memtype == UIO_MEM_LOGICAL) 634 if (idev->info->mem[mi].memtype == UIO_MEM_LOGICAL)
635 page = virt_to_page(idev->info->mem[mi].addr + offset); 635 page = virt_to_page(idev->info->mem[mi].addr + offset);
636 else 636 else
637 page = vmalloc_to_page((void *)idev->info->mem[mi].addr 637 page = vmalloc_to_page((void *)(unsigned long)idev->info->mem[mi].addr + offset);
638 + offset);
639 get_page(page); 638 get_page(page);
640 vmf->page = page; 639 vmf->page = page;
641 return 0; 640 return 0;
@@ -750,14 +749,13 @@ static int uio_major_init(void)
750 749
751 uio_major = MAJOR(uio_dev); 750 uio_major = MAJOR(uio_dev);
752 uio_cdev = cdev; 751 uio_cdev = cdev;
753 result = 0; 752 return 0;
754out:
755 return result;
756out_put: 753out_put:
757 kobject_put(&cdev->kobj); 754 kobject_put(&cdev->kobj);
758out_unregister: 755out_unregister:
759 unregister_chrdev_region(uio_dev, UIO_MAX_DEVICES); 756 unregister_chrdev_region(uio_dev, UIO_MAX_DEVICES);
760 goto out; 757out:
758 return result;
761} 759}
762 760
763static void uio_major_cleanup(void) 761static void uio_major_cleanup(void)