> On Fri, 13 Nov 2015, Andreas Krebbel1 wrote: > > > this appears to be the result of aligning struct page to more than 8 bytes > > and putting it onto the stack - wich is only 8 bytes aligned. The > > compiler has to perform runtime alignment to achieve that. It allocates > > memory using *alloca* and does the math with the returned pointer. Our > > dynamic stack allocation option basically only checks if there is an > > alloca user. > > The slub uses of struct page only require an alignment of the page struct > on the stack to a word. So its fine. Our compare and swap double hardware instruction unfortunately requires 16 byte alignment. That's probably the reason why this alignment has been picked. So I don't think that we can easily get rid of it. -Andreas- -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href