kernel pages superpage promotion/demotion
suresh gumpula
gsuryacse7k at gmail.com
Tue Oct 13 00:42:31 UTC 2015
Thanks so much for the quick reply and inputs Alan.
Thanks
Suresh
On Mon, Oct 12, 2015 at 8:02 PM, Alan Cox <alc at rice.edu> wrote:
> On 10/12/2015 18:39, suresh gumpula wrote:
>
> Thanks a lot for quick reply Alan.
> The super page promotion/demotion of kernel allocations is done in 9.1
> also I assume . Please confirm.
>
>
> Yes.
>
> Regarding write protection, I am trying to chase a corruption of uma zone
> allocation, so I was looking at pmap_protect(9).
> And thinking of using something like pmap_protect(kernel_pmap, sva , eva,
> VMPROT_READ); to write protect sva to eva of a zone allocation return
> address.
> So can pmap_protect(9) be used for this purpose ?
>
>
> Yes. However, you can't reenable write access, or in general upgrade
> access, with pmap_protect(). You'll need to use pmap_kextract(),
> PHYS_TO_VM_PAGE(), and pmap_enter() to recreate the mapping with write
> access.
>
>
>
>
> On Mon, Oct 12, 2015 at 6:43 PM, Alan Cox <alan.l.cox at gmail.com> wrote:
>
>>
>>
>> On Mon, Oct 12, 2015 at 3:11 PM, suresh gumpula < <gsuryacse7k at gmail.com>
>> gsuryacse7k at gmail.com> wrote:
>>
>>> Hi,
>>> I understand that user space VM map pages dynamically
>>> promoted/demoted to super page
>>> if the kernel thinks that it gains the performance.
>>> The question is , does this apply to kernel map pages too ?
>>>
>>>
>>
>> Yes, it applies to memory allocated for UMA zones, malloc(9), and
>> contigmalloc(9).
>>
>>
>>
>>> And is it possible to write protect kernel address space VA with
>>> pmap_protect(9). Since the protection is per 4k page, I see this
>>> routine tries to demote to 4k page.
>>> Or this is only for user space maps to support mprotect(2) and gdb
>>> watchpoints.
>>> Do we have any other API to write protect kernel addresses which come
>>> from
>>> UMA zone allocations ?
>>>
>>>
>>
>> No.
>>
>> Can you please try to describe what are you trying to do at a higher
>> level?
>>
>
>
>
More information about the freebsd-hackers
mailing list