On 8/20/07, Mulyadi Santosa <[EMAIL PROTECTED]> wrote: > > Hi... > > > > > Why we cannot kmalloc(GFP_HIGHUSER) ? > > Because it returns virtual address and to get virtual address of pages > from > > high memory we need to kmap ? > > > AFAIK your opinion is correct. > > Then how to allocate pages from highmem alloc_pages, and then kmap? > > > > > correct. > > How to free pages from highmem ? kunmap and then ? > > > free them using free_pages()
CMIIW, But in free_pages we have BUG_ON(!virt_addr_valid((void *)addr)); , so when we kunmap we will loose virt address, So I think we should call __free_pages directly after kunmap. Or without doing kunmap , just do free_pages() ? Thanks.
