[lkml]   [2005]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 2.6.15-rc4 1/1] cpia: use vm_insert_page() instead of remap_pfn_range()
    On Tue, Dec 06, 2005 at 07:10:12PM +0000, Christoph Hellwig wrote:
    > > pos = (unsigned long)(cam->frame_buf);
    > > while (size > 0) {
    > > - page = vmalloc_to_pfn((void *)pos);
    > > - if (remap_pfn_range(vma, start, page, PAGE_SIZE, PAGE_SHARED)) {
    > > + page = vmalloc_to_page((void *)pos);
    > > + if (vm_insert_page(vma, start, page)) {
    > it would be nicer to do the arithmetis on pos as pointers rather than unsigned
    > long. Also you might want to use alloc_pages + vmap instead of vmalloc so that
    > you already have a page array. Or we should provide a helper that walks over
    > a vmalloc'ed region and calls vmalloc_to_page + vm_insert_page. Either way
    > this type of code is duplicated far too much and we'd really need some better
    > interface for it.

    As I said in my previous mail, the patch was just switching to use
    vm_insert_page, and not any other cleanups.

    I agree that a helper is a good idea, as the vmalloc, SetPageReserved,
    remap_pfn_range (was remap_page_range in 2.4) pattern has been copied
    and pasted across many video4linux drivers.

    The cpia driver could do with other cleanups.

    - It doesn't have a sysfs release callback (so says warning printk).
    - The colourspace conversion has been disabled, but should be
    ripped out.
    - Needs to support V4L2 API

    `O O' |
    // ^ \\ |
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-12-06 22:09    [W:0.020 / U:54.768 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site