All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH -resend 00/27] New macros for assembler symbols
@ 2018-05-10  8:06 Jiri Slaby
  2018-05-10  8:06   ` Jiri Slaby
                   ` (28 more replies)
  0 siblings, 29 replies; 46+ messages in thread
From: Jiri Slaby @ 2018-05-10  8:06 UTC (permalink / raw)
  To: mingo; +Cc: linux-arch, linux-kernel, Jiri Slaby

This series introduces new macros for assembly as was discussed [1].
The macros are introduced in the first patch of the series. The rest
of patches start using these new macros in x86, converting *all* uses
of the old macros to the new ones throughout the last patch. With
every last user of some old macro, the macro is immediatelly made
forbidden for x86.

When this settles down, conversion of other architectures can be done
too.

For introduction, documentation, use and examples, please see
Documentation/asm-annotations.rst from the first patch of the series.

[1] https://lkml.org/lkml/2017/3/1/742

Jiri Slaby (27):
  linkage: new macros for assembler symbols
  x86: assembly, use SYM_DATA for data
  x86: assembly, annotate relocate_kernel
  x86: entry, annotate THUNKs
  x86: assembly, annotate local pseudo-functions
  x86: crypto, annotate local functions
  x86: boot, annotate local functions
  x86: assembly, annotate aliases
  x86: entry, annotate interrupt symbols properly
  x86: head, annotate data appropriatelly
  x86: boot, annotate data appropriatelly
  x86: um, annotate data appropriatelly
  x86: xen-pvh, annotate data appropriatelly
  x86: purgatory, start using annotations
  x86: assembly, do not annotate functions by GLOBAL
  x86: assembly, use SYM_CODE_INNER_LABEL instead of GLOBAL
  x86: realmode, use SYM_DATA_* instead of GLOBAL
  x86: assembly, remove GLOBAL macro
  x86: assembly, make some functions local
  x86: ftrace, mark function_hook as function
  x86_64: assembly, add ENDs to some functions and relabel with
    SYM_CODE_*
  x86_64: assembly, change all ENTRY+END to SYM_CODE_*
  x86_64: assembly, change all ENTRY+ENDPROC to SYM_FUNC_*
  x86_32: assembly, add ENDs to some functions and relabel with
    SYM_CODE_*
  x86_32: assembly, change all ENTRY+END to SYM_CODE_*
  x86_32: assembly, change all ENTRY+ENDPROC to SYM_FUNC_*
  x86: assembly, replace WEAK uses

 Documentation/asm-annotations.rst                  | 218 +++++++++++++++++
 arch/x86/boot/compressed/efi_stub_32.S             |   4 +-
 arch/x86/boot/compressed/efi_thunk_64.S            |  33 +--
 arch/x86/boot/compressed/head_32.S                 |  15 +-
 arch/x86/boot/compressed/head_64.S                 |  60 ++---
 arch/x86/boot/compressed/mem_encrypt.S             |  14 +-
 arch/x86/boot/copy.S                               |  16 +-
 arch/x86/boot/pmjump.S                             |   8 +-
 arch/x86/crypto/aes-i586-asm_32.S                  |   8 +-
 arch/x86/crypto/aes-x86_64-asm_64.S                |   4 +-
 arch/x86/crypto/aes_ctrby8_avx-x86_64.S            |  12 +-
 arch/x86/crypto/aesni-intel_asm.S                  | 114 ++++-----
 arch/x86/crypto/aesni-intel_avx-x86_64.S           |  24 +-
 arch/x86/crypto/blowfish-x86_64-asm_64.S           |  16 +-
 arch/x86/crypto/camellia-aesni-avx-asm_64.S        |  44 ++--
 arch/x86/crypto/camellia-aesni-avx2-asm_64.S       |  44 ++--
 arch/x86/crypto/camellia-x86_64-asm_64.S           |  16 +-
 arch/x86/crypto/cast5-avx-x86_64-asm_64.S          |  24 +-
 arch/x86/crypto/cast6-avx-x86_64-asm_64.S          |  32 +--
 arch/x86/crypto/chacha20-avx2-x86_64.S             |   4 +-
 arch/x86/crypto/chacha20-ssse3-x86_64.S            |   8 +-
 arch/x86/crypto/crc32-pclmul_asm.S                 |   4 +-
 arch/x86/crypto/crc32c-pcl-intel-asm_64.S          |   4 +-
 arch/x86/crypto/crct10dif-pcl-asm_64.S             |   4 +-
 arch/x86/crypto/des3_ede-asm_64.S                  |   8 +-
 arch/x86/crypto/ghash-clmulni-intel_asm.S          |  12 +-
 arch/x86/crypto/poly1305-avx2-x86_64.S             |   4 +-
 arch/x86/crypto/poly1305-sse2-x86_64.S             |   8 +-
 arch/x86/crypto/salsa20-i586-asm_32.S              |   4 +-
 arch/x86/crypto/salsa20-x86_64-asm_64.S            |   4 +-
 arch/x86/crypto/serpent-avx-x86_64-asm_64.S        |  32 +--
 arch/x86/crypto/serpent-avx2-asm_64.S              |  32 +--
 arch/x86/crypto/serpent-sse2-i586-asm_32.S         |   8 +-
 arch/x86/crypto/serpent-sse2-x86_64-asm_64.S       |   8 +-
 arch/x86/crypto/sha1-mb/sha1_mb_mgr_flush_avx2.S   |   8 +-
 arch/x86/crypto/sha1-mb/sha1_mb_mgr_submit_avx2.S  |   4 +-
 arch/x86/crypto/sha1-mb/sha1_x8_avx2.S             |   4 +-
 arch/x86/crypto/sha1_avx2_x86_64_asm.S             |   4 +-
 arch/x86/crypto/sha1_ni_asm.S                      |   4 +-
 arch/x86/crypto/sha1_ssse3_asm.S                   |   4 +-
 arch/x86/crypto/sha256-avx-asm.S                   |   4 +-
 arch/x86/crypto/sha256-avx2-asm.S                  |   4 +-
 .../crypto/sha256-mb/sha256_mb_mgr_flush_avx2.S    |   8 +-
 .../crypto/sha256-mb/sha256_mb_mgr_submit_avx2.S   |   4 +-
 arch/x86/crypto/sha256-mb/sha256_x8_avx2.S         |   4 +-
 arch/x86/crypto/sha256-ssse3-asm.S                 |   4 +-
 arch/x86/crypto/sha256_ni_asm.S                    |   4 +-
 arch/x86/crypto/sha512-avx-asm.S                   |   4 +-
 arch/x86/crypto/sha512-avx2-asm.S                  |   4 +-
 .../crypto/sha512-mb/sha512_mb_mgr_flush_avx2.S    |   8 +-
 .../crypto/sha512-mb/sha512_mb_mgr_submit_avx2.S   |   4 +-
 arch/x86/crypto/sha512-mb/sha512_x4_avx2.S         |   4 +-
 arch/x86/crypto/sha512-ssse3-asm.S                 |   4 +-
 arch/x86/crypto/twofish-avx-x86_64-asm_64.S        |  32 +--
 arch/x86/crypto/twofish-i586-asm_32.S              |   8 +-
 arch/x86/crypto/twofish-x86_64-asm_64-3way.S       |   8 +-
 arch/x86/crypto/twofish-x86_64-asm_64.S            |   8 +-
 arch/x86/entry/entry_32.S                          | 155 ++++++------
 arch/x86/entry/entry_64.S                          | 107 ++++-----
 arch/x86/entry/entry_64_compat.S                   |  16 +-
 arch/x86/entry/thunk_32.S                          |   4 +-
 arch/x86/entry/thunk_64.S                          |   8 +-
 arch/x86/entry/vdso/vdso32/system_call.S           |   2 +-
 arch/x86/include/asm/linkage.h                     |   4 -
 arch/x86/kernel/acpi/wakeup_32.S                   |  11 +-
 arch/x86/kernel/acpi/wakeup_64.S                   |  25 +-
 arch/x86/kernel/ftrace_32.S                        |  23 +-
 arch/x86/kernel/ftrace_64.S                        |  42 ++--
 arch/x86/kernel/head_32.S                          |  60 ++---
 arch/x86/kernel/head_64.S                          | 106 +++++----
 arch/x86/kernel/relocate_kernel_32.S               |  13 +-
 arch/x86/kernel/relocate_kernel_64.S               |  13 +-
 arch/x86/kernel/verify_cpu.S                       |   4 +-
 arch/x86/lib/atomic64_386_32.S                     |   4 +-
 arch/x86/lib/atomic64_cx8_32.S                     |  32 +--
 arch/x86/lib/checksum_32.S                         |  16 +-
 arch/x86/lib/clear_page_64.S                       |  12 +-
 arch/x86/lib/cmpxchg16b_emu.S                      |   4 +-
 arch/x86/lib/cmpxchg8b_emu.S                       |   4 +-
 arch/x86/lib/copy_page_64.S                        |   8 +-
 arch/x86/lib/copy_user_64.S                        |  16 +-
 arch/x86/lib/csum-copy_64.S                        |   4 +-
 arch/x86/lib/getuser.S                             |  24 +-
 arch/x86/lib/hweight.S                             |   8 +-
 arch/x86/lib/iomap_copy_64.S                       |   4 +-
 arch/x86/lib/memcpy_64.S                           |  20 +-
 arch/x86/lib/memmove_64.S                          |   8 +-
 arch/x86/lib/memset_64.S                           |  16 +-
 arch/x86/lib/msr-reg.S                             |   8 +-
 arch/x86/lib/putuser.S                             |  20 +-
 arch/x86/lib/retpoline.S                           |   4 +-
 arch/x86/lib/rwsem.S                               |  24 +-
 arch/x86/math-emu/div_Xsig.S                       |   4 +-
 arch/x86/math-emu/div_small.S                      |   4 +-
 arch/x86/math-emu/mul_Xsig.S                       |  12 +-
 arch/x86/math-emu/polynom_Xsig.S                   |   4 +-
 arch/x86/math-emu/reg_norm.S                       |   8 +-
 arch/x86/math-emu/reg_round.S                      |   4 +-
 arch/x86/math-emu/reg_u_add.S                      |   4 +-
 arch/x86/math-emu/reg_u_div.S                      |   4 +-
 arch/x86/math-emu/reg_u_mul.S                      |   4 +-
 arch/x86/math-emu/reg_u_sub.S                      |   4 +-
 arch/x86/math-emu/round_Xsig.S                     |   8 +-
 arch/x86/math-emu/shr_Xsig.S                       |   4 +-
 arch/x86/math-emu/wm_shrx.S                        |   8 +-
 arch/x86/math-emu/wm_sqrt.S                        |   4 +-
 arch/x86/mm/mem_encrypt_boot.S                     |   8 +-
 arch/x86/platform/efi/efi_stub_32.S                |   4 +-
 arch/x86/platform/efi/efi_stub_64.S                |   4 +-
 arch/x86/platform/efi/efi_thunk_64.S               |  16 +-
 arch/x86/platform/olpc/xo1-wakeup.S                |   3 +-
 arch/x86/power/hibernate_asm_32.S                  |   6 +-
 arch/x86/power/hibernate_asm_64.S                  |  14 +-
 arch/x86/purgatory/entry64.S                       |  21 +-
 arch/x86/purgatory/setup-x86_64.S                  |  14 +-
 arch/x86/purgatory/stack.S                         |   7 +-
 arch/x86/realmode/rm/header.S                      |   8 +-
 arch/x86/realmode/rm/reboot.S                      |  13 +-
 arch/x86/realmode/rm/stack.S                       |  14 +-
 arch/x86/realmode/rm/trampoline_32.S               |  16 +-
 arch/x86/realmode/rm/trampoline_64.S               |  29 ++-
 arch/x86/realmode/rm/trampoline_common.S           |   4 +-
 arch/x86/realmode/rm/wakeup_asm.S                  |  15 +-
 arch/x86/realmode/rmpiggy.S                        |  10 +-
 arch/x86/um/vdso/vdso.S                            |   6 +-
 arch/x86/xen/xen-asm.S                             |  20 +-
 arch/x86/xen/xen-asm_32.S                          |   7 +-
 arch/x86/xen/xen-asm_64.S                          |  34 +--
 arch/x86/xen/xen-head.S                            |   8 +-
 arch/x86/xen/xen-pvh.S                             |  15 +-
 include/linux/linkage.h                            | 261 ++++++++++++++++++++-
 131 files changed, 1474 insertions(+), 982 deletions(-)
 create mode 100644 Documentation/asm-annotations.rst

-- 
2.16.3

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

end of thread, other threads:[~2018-05-18  9:17 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-10  8:06 [PATCH -resend 00/27] New macros for assembler symbols Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 01/27] linkage: new " Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-14  3:04   ` Randy Dunlap
2018-05-14  3:04   ` Randy Dunlap
2018-05-14 12:54     ` Jiri Slaby
2018-05-14 12:54     ` Jiri Slaby
2018-05-14  8:03   ` Ingo Molnar
2018-05-14  8:03   ` Ingo Molnar
2018-05-10  8:06 ` [PATCH -resend 02/27] x86: assembly, use SYM_DATA for data Jiri Slaby
2018-05-14  8:05   ` Ingo Molnar
2018-05-15  6:39     ` Ingo Molnar
2018-05-18  9:17       ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 03/27] x86: assembly, annotate relocate_kernel Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 04/27] x86: entry, annotate THUNKs Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 05/27] x86: assembly, annotate local pseudo-functions Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 06/27] x86: crypto, annotate local functions Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 07/27] x86: boot, " Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 08/27] x86: assembly, annotate aliases Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 09/27] x86: entry, annotate interrupt symbols properly Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 10/27] x86: head, annotate data appropriatelly Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 11/27] x86: boot, " Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 12/27] x86: um, " Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 13/27] x86: xen-pvh, " Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 14/27] x86: purgatory, start using annotations Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 15/27] x86: assembly, do not annotate functions by GLOBAL Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 16/27] x86: assembly, use SYM_CODE_INNER_LABEL instead of GLOBAL Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 17/27] x86: realmode, use SYM_DATA_* " Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 18/27] x86: assembly, remove GLOBAL macro Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 19/27] x86: assembly, make some functions local Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 20/27] x86: ftrace, mark function_hook as function Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 21/27] x86_64: assembly, add ENDs to some functions and relabel with SYM_CODE_* Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 22/27] x86_64: assembly, change all ENTRY+END to SYM_CODE_* Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 23/27] x86_64: assembly, change all ENTRY+ENDPROC to SYM_FUNC_* Jiri Slaby
2018-05-10  8:06   ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 24/27] x86_32: assembly, add ENDs to some functions and relabel with SYM_CODE_* Jiri Slaby
2018-05-10  8:06 ` Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 25/27] x86_32: assembly, change all ENTRY+END to SYM_CODE_* Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 26/27] x86_32: assembly, change all ENTRY+ENDPROC to SYM_FUNC_* Jiri Slaby
2018-05-10  8:06 ` [PATCH -resend 27/27] x86: assembly, replace WEAK uses Jiri Slaby
2018-05-14  8:10 ` [PATCH -resend 00/27] New macros for assembler symbols Ingo Molnar

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.