xlat: add elf_em.in
authorEugene Syromyatnikov <evgsyr@gmail.com>
Thu, 22 Nov 2018 09:45:02 +0000 (10:45 +0100)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 5 Aug 2019 10:58:30 +0000 (10:58 +0000)
For now, it's a source of fallback values for AUDIT_ARCH_* constants.

* xlat/elf_em.in: New file.
* xlat/audit_arch.in (AUDIT_ARCH_ARM, AUDIT_ARCH_ARMEB, AUDIT_ARCH_FRV,
AUDIT_ARCH_MICROBLAZE, AUDIT_ARCH_OPENRISC): Define unconditionally.
* printsiginfo.c: Include "xlat/elf_em.h".
* tests/ptrace_syscall_info.c: Likewise.

Co-Authored-by: Dmitry V. Levin <ldv@altlinux.org>
printsiginfo.c
tests/ptrace_syscall_info.c
xlat/audit_arch.in
xlat/elf_em.in [new file with mode: 0644]

index 9cfc4c63e10545c12fe8596fc43f06ab037031d2..c1d601fd6ad5f7cfa9ff88b3768ab5638aa91a61 100644 (file)
 # include "printsiginfo.h"
 #endif
 
+#define XLAT_MACROS_ONLY
+/* For xlat/audit_arch.h */
+# include "xlat/elf_em.h"
+#undef XLAT_MACROS_ONLY
+
 #include "xlat/audit_arch.h"
 #include "xlat/sigbus_codes.h"
 #include "xlat/sigchld_codes.h"
index 70373637bbf9896c2781d08eba72fe1954e888b6..362f6ded93d641331ca5dde9b43ad18e9aa9fdf1 100644 (file)
 #include <linux/audit.h>
 
 #include "xlat.h"
+#define XLAT_MACROS_ONLY
+/* For xlat/audit_arch.h */
+# include "xlat/elf_em.h"
+#undef XLAT_MACROS_ONLY
 #include "xlat/audit_arch.h"
 
 static const char *errstr;
index 916e7954229a0f539c45eedcc1fb58919caaeb0b..b63c8cfa29a2120631c24739afba8847680604db 100644 (file)
@@ -1,30 +1,23 @@
-/* linux used to have linux/elf-em.h out of sync with linux/audit.h */
 AUDIT_ARCH_AARCH64
 AUDIT_ARCH_ALPHA
 AUDIT_ARCH_ARCOMPACT
 AUDIT_ARCH_ARCOMPACTBE
 AUDIT_ARCH_ARCV2
 AUDIT_ARCH_ARCV2BE
-#ifdef EM_ARM
 AUDIT_ARCH_ARM
 AUDIT_ARCH_ARMEB
-#endif
 AUDIT_ARCH_C6X
 AUDIT_ARCH_C6XBE
 AUDIT_ARCH_CRIS
 AUDIT_ARCH_CSKY
-#ifdef EM_FRV
 AUDIT_ARCH_FRV
-#endif
 AUDIT_ARCH_H8300
 AUDIT_ARCH_HEXAGON
 AUDIT_ARCH_I386
 AUDIT_ARCH_IA64
 AUDIT_ARCH_M32R
 AUDIT_ARCH_M68K
-#ifdef EM_MICROBLAZE
 AUDIT_ARCH_MICROBLAZE
-#endif
 AUDIT_ARCH_MIPS
 AUDIT_ARCH_MIPS64
 AUDIT_ARCH_MIPS64N32
@@ -34,9 +27,7 @@ AUDIT_ARCH_MIPSEL64N32
 AUDIT_ARCH_NDS32
 AUDIT_ARCH_NDS32BE
 AUDIT_ARCH_NIOS2
-#ifdef EM_OPENRISC
 AUDIT_ARCH_OPENRISC
-#endif
 AUDIT_ARCH_PARISC
 AUDIT_ARCH_PARISC64
 AUDIT_ARCH_PPC
diff --git a/xlat/elf_em.in b/xlat/elf_em.in
new file mode 100644 (file)
index 0000000..3443849
--- /dev/null
@@ -0,0 +1,202 @@
+#sorted
+/* General source: include/uapi/linux/elf-em.h */
+/* See also http://www.sco.com/developers/gabi/latest/ch4.eheader.html */
+EM_NONE                        0
+EM_M32                 1 /* AT&T WE 32100 */
+EM_SPARC               2 /* SPARC */
+EM_386                 3 /* Intel 80386 */
+EM_68K                 4 /* Motorola 68000 */
+EM_88K                 5 /* Motorola 88000 */
+EM_486                 6 /* "Perhaps disused" */
+/* EM_IAMCU            6 - Intel MCU */
+EM_860                 7 /* Intel 80860 */
+EM_MIPS                        8 /* MIPS I, MIPS R3000 (officially, big-endian only) */
+EM_S370                        9 /* IBM System/370 Processor */
+EM_MIPS_RS3_LE         10 /* MIPS RS3000 Little-endian */
+/* EM_MIPS_RS4_BE      10 - MIPS R4000 big-endian */
+/* 11-14 reserved for future use */
+EM_PARISC              15 /* Hewlett-Packard PA-RISC */
+/* 16 reserved for future use */
+EM_VPP500              17 /* Fujitsu VPP500 */
+EM_SPARC32PLUS         18 /* Enhanced instruction seti SPARC, Sun's "v8plus" */
+EM_960                 19 /* Intel 80960 */
+EM_PPC                 20 /* PowerPC */
+EM_PPC64               21 /* 64-bit PowerPC */
+EM_S390                        22 /* IBM System/390 Processor */
+EM_SPU                 23 /* IBM Cell BE SPU/SPC */
+/* 24-35 reserved for future use */
+EM_V800                        36 /* NEC V800 */
+EM_FR20                        37 /* Fujitsu FR20 */
+EM_RH32                        38 /* TRW RH-32 */
+EM_RCE                 39 /* Motorola RCE */
+EM_ARM                 40 /* ARM 32-bit architecture */
+/* EM_ALPHA            41 - Digital Alpha */
+EM_SH                  42 /* Hitachi SH */
+EM_SPARCV9             43 /* SPARC Version 9 */
+EM_TRICORE             44 /* Siemens TriCore embedded processor */
+EM_ARC                 45 /* Argonaut RISC Core, Argonaut Technologies Inc. */
+EM_H8_300              46 /* Hitachi/Renesas H8/300 */
+EM_H8_300H             47 /* Hitachi H8/300H */
+EM_H8S                 48 /* Hitachi H8S */
+EM_H8_500              49 /* Hitachi H8/500 */
+EM_IA_64               50 /* Intel IA-64 processor architecture */
+EM_MIPS_X              51 /* Stanford MIPS-X */
+EM_COLDFIRE            52 /* Motorola ColdFire */
+EM_68HC12              53 /* Motorola M68HC12 */
+EM_MMA                 54 /* Fujitsu MMA Multimedia Accelerator */
+EM_PCP                 55 /* Siemens PCP */
+EM_NCPU                        56 /* Sony nCPU embedded RISC processor */
+EM_NDR1                        57 /* Denso NDR1 microprocessor */
+EM_STARCORE            58 /* Motorola Star*Core processor */
+EM_ME16                        59 /* Toyota ME16 processor */
+EM_ST100               60 /* STMicroelectronics ST100 processor */
+EM_TINYJ               61 /* Advanced Logic Corp. TinyJ embedded processor family */
+EM_X86_64              62 /* AMD x86-64 architecture */
+EM_PDSP                        63 /* Sony DSP Processor */
+EM_PDP10               64 /* Digital Equipment Corp. PDP-10 */
+EM_PDP11               65 /* Digital Equipment Corp. PDP-11 */
+EM_FX66                        66 /* Siemens FX66 microcontroller */
+EM_ST9PLUS             67 /* STMicroelectronics ST9+ 8/16 bit microcontroller */
+EM_ST7                 68 /* STMicroelectronics ST7 8-bit microcontroller */
+EM_68HC16              69 /* Motorola MC68HC16 Microcontroller */
+EM_68HC11              70 /* Motorola MC68HC11 Microcontroller */
+EM_68HC08              71 /* Motorola MC68HC08 Microcontroller */
+EM_68HC05              72 /* Motorola MC68HC05 Microcontroller */
+EM_SVX                 73 /* Silicon Graphics SVx */
+EM_ST19                        74 /* STMicroelectronics ST19 8-bit microcontroller */
+EM_VAX                 75 /* Digital VAX */
+EM_CRIS                        76 /* Axis Communications 32-bit embedded processor */
+EM_JAVELIN             77 /* Infineon Technologies 32-bit embedded processor */
+EM_FIREPATH            78 /* Element 14 64-bit DSP Processor */
+EM_ZSP                 79 /* LSI Logic 16-bit DSP Processor */
+EM_MMIX                        80 /* Donald Knuth's educational 64-bit processor */
+EM_HUANY               81 /* Harvard University machine-independent object files */
+EM_PRISM               82 /* SiTera Prism */
+EM_AVR                 83 /* Atmel AVR 8-bit microcontroller */
+EM_FR30                        84 /* Fujitsu FR30 */
+EM_D10V                        85 /* Mitsubishi D10V */
+EM_D30V                        86 /* Mitsubishi D30V */
+EM_V850                        87 /* NEC v850, removed in v4.6-rc1~95^2~36 */
+EM_M32R                        88 /* Mitsubishi M32R */
+EM_MN10300             89 /* Matsushita MN10300 */
+EM_MN10200             90 /* Matsushita MN10200 */
+EM_PJ                  91 /* picoJava */
+EM_OPENRISC            92 /* OpenRISC 32-bit embedded processor */
+EM_ARCOMPACT           93 /* ARCompact processor */
+EM_XTENSA              94 /* arch/xtensa/include/asm/elf.h; Tensilica Xtensa Architecture */
+EM_VIDEOCORE           95 /* Alphamosaic VideoCore processor */
+EM_TMM_GPP             96 /* Thompson Multimedia General Purpose Processor */
+EM_NS32K               97 /* National Semiconductor 32000 series */
+EM_TPC                 98 /* Tenor Network TPC processor */
+EM_SNP1K               99 /* Trebia SNP 1000 processor */
+EM_ST200               100 /* STMicroelectronics (www.st.com) ST200 microcontroller */
+EM_IP2K                        101 /* Ubicom IP2xxx microcontroller family */
+EM_MAX                 102 /* MAX Processor */
+EM_CR                  103 /* National Semiconductor CompactRISC microprocessor */
+EM_F2MC16              104 /* Fujitsu F2MC16 */
+EM_MSP430              105 /* Texas Instruments embedded microcontroller msp430 */
+EM_BLACKFIN            106 /* ADI Blackfin Processor */
+EM_SE_C33              107 /* S1C33 Family of Seiko Epson processors */
+EM_SEP                 108 /* Sharp embedded microprocessor */
+EM_ARCA                        109 /* Arca RISC Microprocessor */
+EM_UNICORE             110 /* UniCore-32 */
+EM_EXCESS              111 /* eXcess: 16/32/64-bit configurable embedded CPU */
+EM_DXP                 112 /* Icera Semiconductor Inc. Deep Execution Processor */
+EM_ALTERA_NIOS2                113 /* Altera Nios II soft-core processor */
+EM_CRX                 114 /* National Semiconductor CompactRISC CRX microprocessor */
+EM_XGATE               115 /* Motorola XGATE embedded processor */
+EM_C166                        116 /* Infineon C16x/XC16x processor */
+EM_M16C                        117 /* Renesas M16C series microprocessors */
+EM_DSPIC30F            118 /* Microchip Technology dsPIC30F Digital Signal Controller */
+EM_CE                  119 /* Freescale Communication Engine RISC core */
+EM_M32C                        120 /* Renesas M32C series microprocessors */
+/* 121-130 reserved for future use */
+EM_TSK3000             131 /* Altium TSK3000 core */
+EM_RS08                        132 /* Freescale RS08 embedded processor */
+EM_SHARC               133 /* Analog Devices SHARC family of 32-bit DSP processors */
+EM_ECOG2               134 /* Cyan Technology eCOG2 microprocessor */
+EM_SCORE7              135 /* Sunplus S+core7 RISC processor, arch/score/include/asm/elf.h; removed in v4.17-rc1~163^2~59 */
+EM_DSP24               136 /* New Japan Radio (NJR) 24-bit DSP Processor */
+EM_VIDEOCORE3          137 /* Broadcom VideoCore III processor */
+EM_LATTICEMICO32       138 /* RISC processor for Lattice FPGA architecture */
+EM_SE_C17              139 /* Seiko Epson C17 family */
+EM_TI_C6000            140 /* The Texas Instruments TMS320C6000 DSP family */
+EM_TI_C2000            141 /* The Texas Instruments TMS320C2000 DSP family */
+EM_TI_C5500            142 /* The Texas Instruments TMS320C55x DSP family */
+EM_TI_ARP32            143 /* Texas Instruments Application Specific RISC Processor, 32bit fetch */
+EM_TI_PRU              144 /* Texas Instruments Programmable Realtime Unit */
+/* 145-159 reserved for future use */
+EM_MMDSP_PLUS          160
+EM_CYPRESS_M8C         161 /* Cypress M8C microprocessor */
+EM_R32C                        162 /* Renesas R32C series microprocessors */
+EM_TRIMEDIA            163 /* NXP Semiconductors TriMedia architecture family */
+EM_HEXAGON             164 /* QUALCOMM Hexagon */
+EM_8051                        165 /* Intel 8051 and variants */
+EM_STXP7X              166 /* STMicroelectronics STxP7x family of configurable and extensible RISC processors */
+EM_NDS32               167 /* Andes Technology compact code size embedded RISC processor family */
+EM_ECOG1X              168 /* Cyan Technology eCOG1X family (synonym: EM_ECOG1) */
+EM_MAXQ30              169 /* Dallas Semiconductor MAXQ30 Core Micro-controllers */
+EM_XIMO16              170 /* New Japan Radio (NJR) 16-bit DSP Processor */
+EM_MANIK               171 /* M2000 Reconfigurable RISC Microprocessor */
+EM_CRAYNV2             172 /* Cray Inc. NV2 vector architecture */
+EM_RX                  173 /* Renesas RX family */
+EM_METAG               174 /* Imagination Technologies META processor architecture, arch/metag/include/asm/elf.h; removed in v4.17-rc1~163^2~63^2~10 */
+EM_MCST_ELBRUS         175 /* MCST Elbrus general purpose hardware architecture */
+EM_ECOG16              176 /* Cyan Technology eCOG16 family */
+EM_CR16                        177 /* National Semiconductor CompactRISC CR16 16-bit microprocessor */
+EM_ETPU                        178 /* Freescale Extended Time Processing Unit */
+EM_SLE9X               179 /* Infineon Technologies SLE9X core */
+EM_L10M                        180 /* Intel L10M/L1OM - Larrabee/Knights Ferry */
+EM_K10M                        181 /* Intel K10M/K1OM - Knights Korner */
+/* 182 reserved for future Intel use */
+EM_AARCH64             183
+/* 184 reserved for future ARM use */
+/* EM_AVR32            185 - Atmel Corporation 32-bit microprocessor family */
+EM_STM8                        186 /* STMicroeletronics STM8 8-bit microcontroller */
+EM_TILE64              187 /* Tilera TILE64 multicore architecture family */
+EM_TILEPRO             188 /* Tilera TILEPro multicore architecture family */
+EM_MICROBLAZE          189 /* Xilinx MicroBlaze 32-bit RISC soft processor core */
+EM_CUDA                        190 /* NVIDIA CUDA architecture */
+EM_TILEGX              191 /* Tilera TILE-Gx multicore architecture family */
+EM_CLOUDSHIELD         192 /* CloudShield architecture family */
+EM_COREA_1ST           193 /* KIPO-KAIST Core-A 1st generation processor family */
+EM_COREA_2ND           194 /* KIPO-KAIST Core-A 2nd generation processor family */
+EM_ARCV2               195 /* Synopsys ARCv2 Cores */
+EM_OPEN8               196 /* Open8 8-bit RISC soft processor core */
+EM_RL78                        197 /* Renesas RL78 family */
+EM_VIDEOCORE5          198 /* Broadcom VideoCore V processor */
+EM_78KOR               199 /* Renesas 78KOR family */
+EM_56800EX             200 /* Freescale 56800EX Digital Signal Controller (DSC) */
+EM_BA1                 201 /* Beyond BA1 CPU architecture */
+EM_BA2                 202 /* Beyond BA2 CPU architecture */
+EM_XCORE               203 /* XMOS xCORE processor family */
+EM_MCHP_PIC            204 /* Microchip 8-bit PIC(r) family */
+/* 205-209 reserved by Intel */
+EM_KM32                        210 /* KM211 KM32 32-bit processor */
+EM_KMX32               211 /* KM211 KMX32 32-bit processor */
+EM_KMX16               212 /* KM211 KMX16 16-bit processor */
+EM_KMX8                        213 /* KM211 KMX8 8-bit processor */
+EM_KVARC               214 /* KM211 KVARC processor */
+EM_CDP                 215 /* Paneve CDP architecture family */
+EM_COGE                        216 /* Cognitive Smart Memory Processor */
+EM_COOL                        217 /* Bluechip Systems CoolEngine */
+EM_NORC                        218 /* Nanoradio Optimized RISC */
+EM_CSR_KALIMBA         219 /* CSR Kalimba architecture family */
+EM_Z80                 220 /* Zilog Z80 */
+EM_VISIUM              221 /* Controls and Data Services VISIUMcore processor */
+EM_FT32                        222 /* FTDI Chip FT32 high performance 32-bit RISC architecture */
+EM_MOXIE               223 /* Moxie processor family */
+EM_AMDGPU              224 /* AMD GPU architecture */
+EM_RISCV               243 /* RISC-V */
+EM_BPF                 247 /* Linux BPF - in-kernel virtual machine */
+EM_CSKY                        252 /* C-SKY */
+EM_AVR32               0x18ad /* Atmel AVR32, removed in v4.12-rc1~159^2~5 */
+EM_FRV                 0x5441 /* Fujitsu FR-V */
+EM_OR32                        0x8472 /* arch/openrisc/include/uapi/asm/elf.h */
+EM_ALPHA               0x9026 /* "This is an interim value that we will use until the committee comes up with a final number."; see also 41 */
+EM_CYGNUS_V850         0x9080 /* Bogus old v850 magic number, used by old tools, removed in v4.6-rc1~95^2~36 */
+EM_CYGNUS_M32R         0x9041 /* Bogus old m32r magic number, used by old tools. */
+EM_S390_OLD            0xa390 /* This is the old interim value for S/390 architecture */
+EM_XTENSA_OLD          0xabc7 /* arch/xtensa/include/asm/elf.h */
+EM_MICROBLAZE_OLD      0xbaab /* arch/microblaze/include/uapi/asm/elf.h */
+EM_CYGNUS_MN10300      0xbeef /* Also Panasonic/MEI MN10300, AM33 */