Re: [PATCH 05/10] powerpc/mm/slice: implement a slice mask cache

2018-03-06 Thread Nicholas Piggin
On Tue, 6 Mar 2018 14:49:57 +0100 Christophe LEROY wrote: > Le 06/03/2018 à 14:25, Nicholas Piggin a écrit : > > @@ -201,6 +206,15 @@ typedef struct { > > unsigned char low_slices_psize[SLICE_ARRAY_SIZE]; > > unsigned char high_slices_psize[0]; > > unsigned long slb_addr_limit; > > +

Re: [PATCH 05/10] powerpc/mm/slice: implement a slice mask cache

2018-03-06 Thread Christophe LEROY
Le 06/03/2018 à 14:25, Nicholas Piggin a écrit : Calculating the slice mask can become a signifcant overhead for get_unmapped_area. This patch adds a struct slice_mask for each page size in the mm_context, and keeps these in synch with the slices psize arrays and slb_addr_limit. On Book3S/64 t

[PATCH 05/10] powerpc/mm/slice: implement a slice mask cache

2018-03-06 Thread Nicholas Piggin
Calculating the slice mask can become a signifcant overhead for get_unmapped_area. This patch adds a struct slice_mask for each page size in the mm_context, and keeps these in synch with the slices psize arrays and slb_addr_limit. On Book3S/64 this adds 288 bytes to the mm_context_t for the slice