Messages in this thread | | | Subject | Re: [PATCH v4 3/5] kasan: support alloca() poisoning | From | Andrey Ryabinin <> | Date | Tue, 5 Dec 2017 19:36:34 +0300 |
| |
On 12/04/2017 10:17 PM, Paul Lawrence wrote: > clang's AddressSanitizer implementation adds redzones on either side of > alloca()ed buffers. These redzones are 32-byte aligned and at least 32 > bytes long. > > __asan_alloca_poison() is passed the size and address of the allocated > buffer, *excluding* the redzones on either side. The left redzone will > always be to the immediate left of this buffer; but AddressSanitizer may > need to add padding between the end of the buffer and the right redzone. > If there are any 8-byte chunks inside this padding, we should poison > those too. > > __asan_allocas_unpoison() is just passed the top and bottom of the > dynamic stack area, so unpoisoning is simpler. > > Signed-off-by: Greg Hackmann <ghackmann@google.com> > Signed-off-by: Paul Lawrence <paullawrence@google.com> > ---
Acked-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
| |