Messages in this thread | | | Date | Mon, 30 Jan 2012 00:42:44 -0800 (PST) | From | PINTU KUMAR <> | Subject | Re: [Help] : RSS/PSS showing 0 during smaps for Xorg |
| |
Dear Hugh Dickins, Thank you very much for your reply. >If these are ordinary pages with struct pages, then you could probably >use a loop of vm_insert_page()s to insert them at mmap time, or a fault >routine to insert them on fault. But as I said, I don't know if this >memory is part of the ordinary page pool or not. You suggestion about using vm_insert_page() instead of remap_pfn_range worked for me and I got the Rss/Pss information for my driver. But still there is one problem related to page fault. If I remove remap_pfn_range then I get a page fault in the beginning. I tried to use the same vm_insert_page() during page_fault_handler for each vmf->virtual_address but it did not work. So for time being I remove the page fault handler from my vm_operations. But with these my menu screen(LCD screen) is not behaving properly (I get colorful lines on my LCD). So I need to handle the page fault properly. But I am not sure what is that I need to do inside page fault handler. Do you have any example or references or suggestions? >Really, the question has to be, why do you need to see non-0s there? I want Rss/Pss value to account for how much video memory is used by the driver for the menu-screen,Xorg processes. Thanks, Pintu
>________________________________ >From: Hugh Dickins <hughd@google.com> >To: PINTU KUMAR <pintu_agarwal@yahoo.com> >Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>; "linux-mm@kvack.org" <linux-mm@kvack.org> >Sent: Thursday, 26 January 2012 6:29 AM >Subject: Re: [Help] : RSS/PSS showing 0 during smaps for Xorg > >On Tue, 24 Jan 2012, PINTU KUMAR wrote: >> >> Is there a way to convert our mapped pages to a normal pages. I tried pfn_to_page() but no effect. >> I mean the page is considered normal only if it is associated with "struct page" right??? >> Is is possible to convert these pages to a normal struct pages so that we can get the Rss/Pss value?? > >I don't understand why you are so anxious to see non-0 numbers there. > >I don't know if the pages you are mapping with remap_pfn_range() are >ordinary pages in normal memory, and so already have struct pages, or not. > >> >> Also, the VM_PFNMAP is being set for all dirvers during remap_pfn_range and stills shows Rss/Pss for other drivers. > >I'm surprised. It is possible to set up a private-writable VM_PFNMAP area, >which can then contain ordinary private copies of the underlying pages, >and these copies will count to Rss. But I thought that was very unusual. > >You don't mention which drivers these are that use remap_pfn_range yet >show Rss (and I don't particularly want to spend time researching them). > >I can see three or four places in drivers/ where VM_PFNMAP is set, >perhaps without going through remap_pfn_range(): that seems prone >to error, I wouldn't recommend going that route. > >> Then why it is not shown for our driver? >> How to avoid remap_pfn_range to not to set VM_PFNMAP for our driver? > >If these are ordinary pages with struct pages, then you could probably >use a loop of vm_insert_page()s to insert them at mmap time, or a fault >routine to insert them on fault. But as I said, I don't know if this >memory is part of the ordinary page pool or not. > >Really, the question has to be, why do you need to see non-0s there? > >Hugh > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |