All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] locking/rwsem/x86: Add stack frame dependency for some inline asm
@ 2017-09-06  5:26 Miguel Bernal Marin
  2017-09-06  5:26 ` [PATCH 1/3] locking/rwsem/x86: Add stack frame dependency for __up_read() Miguel Bernal Marin
                   ` (4 more replies)
  0 siblings, 5 replies; 27+ messages in thread
From: Miguel Bernal Marin @ 2017-09-06  5:26 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Thomas Gleixner, H . Peter Anvin
  Cc: linux-kernel, x86

Some warning were showed by objtool using gcc 7.2.0

kernel/locking/rwsem.o: warning: objtool: up_read()+0x11: call without frame pointer save/setup
kernel/locking/rwsem.o: warning: objtool: up_write()+0x17: call without frame pointer save/setup
kernel/locking/rwsem.o: warning: objtool: downgrade_write()+0x22: call without frame pointer save/setup

which means gcc placed an inline asm function and its call instruction before
the frame pointer setup.
 
This series forces a stack frame to be created before the call instruction
by listing the stack pointer as an output operand in the inline asm statement.

Miguel Bernal Marin (3):
  locking/rwsem/x86: Add stack frame dependency for __up_read()
  locking/rwsem/x86: Add stack frame dependency for __up_write()
  locking/rwsem/x86: Add stack frame dependency for __downgrade_write()

 arch/x86/include/asm/rwsem.h | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

-- 
2.14.1

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2017-09-25 21:34 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-06  5:26 [PATCH 0/3] locking/rwsem/x86: Add stack frame dependency for some inline asm Miguel Bernal Marin
2017-09-06  5:26 ` [PATCH 1/3] locking/rwsem/x86: Add stack frame dependency for __up_read() Miguel Bernal Marin
2017-09-06  5:26 ` [PATCH 2/3] locking/rwsem/x86: Add stack frame dependency for __up_write() Miguel Bernal Marin
2017-09-06  5:26 ` [PATCH 3/3] locking/rwsem/x86: Add stack frame dependency for __downgrade_write() Miguel Bernal Marin
2017-09-06 21:33   ` Josh Poimboeuf
2017-09-06 22:14     ` Miguel Bernal Marin
2017-09-07  7:04     ` Peter Zijlstra
2017-09-06 22:44 ` [PATCH v2 0/3] locking/rwsem/x86: Add stack frame dependency for some inline asm Miguel Bernal Marin
2017-09-06 22:44   ` [PATCH v2 1/3] locking/rwsem/x86: Add stack frame dependency for __up_read() Miguel Bernal Marin
2017-09-07  7:12     ` Ingo Molnar
2017-09-14 21:42       ` Miguel Bernal Marin
2017-09-06 22:45   ` [PATCH v2 2/3] locking/rwsem/x86: Add stack frame dependency for __up_write() Miguel Bernal Marin
2017-09-06 22:45   ` [PATCH v2 3/3] locking/rwsem/x86: Add stack frame dependency for __downgrade_write() Miguel Bernal Marin
2017-09-06 23:05   ` [PATCH v2 0/3] locking/rwsem/x86: Add stack frame dependency for some inline asm Josh Poimboeuf
2017-09-19 23:37 ` [PATCH v3 0/6] " Miguel Bernal Marin
2017-09-19 23:37   ` [PATCH v3 1/6] locking/rwsem/x86: Add stack frame dependency for __up_read() Miguel Bernal Marin
2017-09-19 23:37   ` [PATCH v3 2/6] locking/rwsem/x86: Add stack frame dependency for __up_write() Miguel Bernal Marin
2017-09-19 23:37   ` [PATCH v3 3/6] locking/rwsem/x86: Add stack frame dependency for __downgrade_write() Miguel Bernal Marin
2017-09-19 23:37   ` [PATCH v3 4/6] x86, asm/rwsem: Use named operands in __up_read() Miguel Bernal Marin
2017-09-19 23:37   ` [PATCH v3 5/6] x86, asm/rwsem: Use named operands in __up_write() Miguel Bernal Marin
2017-09-19 23:37   ` [PATCH v3 6/6] x86, asm/rwsem: Use named operands in __downgrade_write() Miguel Bernal Marin
2017-09-20 21:24   ` [PATCH v3 0/6] locking/rwsem/x86: Add stack frame dependency for some inline asm Josh Poimboeuf
2017-09-21 16:59     ` Miguel Bernal Marin
2017-09-25 17:34     ` Miguel Bernal Marin
2017-09-25 19:00       ` Josh Poimboeuf
2017-09-25 19:03         ` Josh Poimboeuf
2017-09-25 21:34           ` Miguel Bernal Marin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.