[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 2/7] guest_memfd: Introduce an object to manage the guest-mem
From: |
Chenyi Qiang |
Subject: |
Re: [PATCH 2/7] guest_memfd: Introduce an object to manage the guest-memfd with RamDiscardManager |
Date: |
Fri, 24 Jan 2025 11:40:16 +0800 |
User-agent: |
Mozilla Thunderbird |
Sorry I missed this mail.
On 1/21/2025 11:38 PM, Peter Xu wrote:
> On Tue, Jan 21, 2025 at 05:00:45PM +0800, Chenyi Qiang wrote:
>>>> +
>>>> + /* block size and alignment */
>>>> + uint64_t block_size;
>>>
>>> Can we always fetch it from the MR/ramblock? If this is needed, better add
>>> some comment explaining why.
>>
>> The block_size is the granularity used to track the private/shared
>> attribute in the bitmap. It is currently hardcoded to 4K as guest_memfd
>> may manipulate the page conversion in at least 4K size and alignment.
>> I think It is somewhat a variable to cache the size and can avoid many
>> getpagesize() calls.
>
> Though qemu does it frequently.. e.g. qemu_real_host_page_size() wraps
> that. So IIUC that's not a major concern, and if it's a concern maybe we
> can cache it globally instead.
>
> OTOH, this is not a per-ramblock limitation either, IIUC. So maybe instead
> of caching it per manager, we could have memory_attr_manager_get_psize()
> helper (or any better name..):
>
> memory_attr_manager_get_psize(MemoryAttrManager *mgr)
> {
> /* Due to limitation of ... always notify with host psize */
> return qemu_real_host_page_size();
> }
>
> Then in the future if necessary, switch to:
>
> memory_attr_manager_get_psize(MemoryAttrManager *mgr)
> {
> return mgr->mr->ramblock->pagesize;
> }
This looks good to me. I'll change in this way.
>
> Thanks,
>
- Re: [PATCH 2/7] guest_memfd: Introduce an object to manage the guest-memfd with RamDiscardManager, (continued)
Re: [PATCH 2/7] guest_memfd: Introduce an object to manage the guest-memfd with RamDiscardManager, Peter Xu, 2025/01/20
Re: [PATCH 2/7] guest_memfd: Introduce an object to manage the guest-memfd with RamDiscardManager, Peter Xu, 2025/01/21
Re: [PATCH 2/7] guest_memfd: Introduce an object to manage the guest-memfd with RamDiscardManager,
Chenyi Qiang <=