|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] Rework CACHE to use a FreeList
On 22/08/2022 11:13, Owen Smith wrote: -----Original Message----- From: Paul Durrant <xadimgnik@xxxxxxxxx> Sent: 22 August 2022 09:22 To: Owen Smith <owen.smith@xxxxxxxxxx>; win-pv-devel@xxxxxxxxxxxxxxxxxxxx Subject: Re: [PATCH] Rework CACHE to use a FreeList [CAUTION - EXTERNAL EMAIL] DO NOT reply, click links, or open attachments unless you have verified the sender and know the content is safe. On 22/08/2022 08:24, Owen Smith wrote:-----Original Message----- From: win-pv-devel <win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx> On Behalf Of Paul Durrant Sent: 19 August 2022 17:23 To: win-pv-devel@xxxxxxxxxxxxxxxxxxxx Subject: Re: [PATCH] Rework CACHE to use a FreeList [CAUTION - EXTERNAL EMAIL] DO NOT reply, click links, or open attachments unless you have verified the sender and know the content is safe. On 19/08/2022 11:15, Owen Smith wrote:The slab allocation method will allogate about a PAGE worth of objects, and every object will be initialized. If the objects initializer allocates any resources, this can result in resource starvation. A particular bad example of this is the grant table cache, where a page of gnttab objects is 253 objects. This is highlighted by xenvif's queues, where the receiver requires 257 grant references (1 for the ring, and 256 for the ring slots) which results in 2 slabs, or 506 gnttab objects, reserving 506 grant references. Use a FreeList to contain individual objects that are not in use. This trades an increase in smaller allocations for reducing the wastage of unused objects. Signed-off-by: Owen Smith <owen.smith@xxxxxxxxxx> I can take a look over the next few days; shouldn't be too much churn in the code. Paul
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |