Messages in this thread | | | From | Marco Elver <> | Date | Fri, 2 Oct 2020 23:28:12 +0200 | Subject | Re: [PATCH v4 01/11] mm: add Kernel Electric-Fence infrastructure |
| |
On Fri, 2 Oct 2020 at 21:32, Jann Horn <jannh@google.com> wrote:
> > That's another check; we don't want to make this more expensive. > > Ah, right, I missed that this is the one piece of KFENCE that is > actually really hot code until Dmitry pointed that out. > > But actually, can't you reduce how hot this is for SLUB by moving > is_kfence_address() down into the freeing slowpath? At the moment you > use it in slab_free_freelist_hook(), which is in the super-hot > fastpath, but you should be able to at least move it down into > __slab_free()... > > Actually, you already have hooked into __slab_free(), so can't you > just get rid of the check in the slab_free_freelist_hook()?
I missed this bit: the loop that follows wants the free pointer, so I currently see how this might work. :-/
We'll look at your other email re optimizing is_kfence_address() next week; and thank you for the detailed comments thus far!
Thanks, -- Marco
| |