Commit a2547a1378e9039ea54bdaa53e917b74e55487ee

Authored by Laurent Desnogues
Committed by Paul Brook
1 parent 379f6698

ELF codedump build failures

Rename ELF coredump types to avoid conflict with the corresponding host types.

Signed-off-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Showing 1 changed file with 30 additions and 29 deletions
linux-user/elfload.c
@@ -134,13 +134,13 @@ static inline void init_thread(struct target_pt_regs *regs, struct image_info *i @@ -134,13 +134,13 @@ static inline void init_thread(struct target_pt_regs *regs, struct image_info *i
134 regs->rip = infop->entry; 134 regs->rip = infop->entry;
135 } 135 }
136 136
137 -typedef target_ulong elf_greg_t; 137 +typedef target_ulong target_elf_greg_t;
138 typedef uint32_t target_uid_t; 138 typedef uint32_t target_uid_t;
139 typedef uint32_t target_gid_t; 139 typedef uint32_t target_gid_t;
140 typedef int32_t target_pid_t; 140 typedef int32_t target_pid_t;
141 141
142 #define ELF_NREG 27 142 #define ELF_NREG 27
143 -typedef elf_greg_t elf_gregset_t[ELF_NREG]; 143 +typedef target_elf_greg_t target_elf_gregset_t[ELF_NREG];
144 144
145 /* 145 /*
146 * Note that ELF_NREG should be 29 as there should be place for 146 * Note that ELF_NREG should be 29 as there should be place for
@@ -149,7 +149,7 @@ typedef elf_greg_t elf_gregset_t[ELF_NREG]; @@ -149,7 +149,7 @@ typedef elf_greg_t elf_gregset_t[ELF_NREG];
149 * 149 *
150 * See linux kernel: arch/x86/include/asm/elf.h 150 * See linux kernel: arch/x86/include/asm/elf.h
151 */ 151 */
152 -static void elf_core_copy_regs(elf_gregset_t *regs, const CPUState *env) 152 +static void elf_core_copy_regs(target_elf_gregset_t *regs, const CPUState *env)
153 { 153 {
154 (*regs)[0] = env->regs[15]; 154 (*regs)[0] = env->regs[15];
155 (*regs)[1] = env->regs[14]; 155 (*regs)[1] = env->regs[14];
@@ -211,13 +211,13 @@ static inline void init_thread(struct target_pt_regs *regs, struct image_info *i @@ -211,13 +211,13 @@ static inline void init_thread(struct target_pt_regs *regs, struct image_info *i
211 regs->edx = 0; 211 regs->edx = 0;
212 } 212 }
213 213
214 -typedef target_ulong elf_greg_t; 214 +typedef target_ulong target_elf_greg_t;
215 typedef uint16_t target_uid_t; 215 typedef uint16_t target_uid_t;
216 typedef uint16_t target_gid_t; 216 typedef uint16_t target_gid_t;
217 typedef int32_t target_pid_t; 217 typedef int32_t target_pid_t;
218 218
219 #define ELF_NREG 17 219 #define ELF_NREG 17
220 -typedef elf_greg_t elf_gregset_t[ELF_NREG]; 220 +typedef target_elf_greg_t target_elf_gregset_t[ELF_NREG];
221 221
222 /* 222 /*
223 * Note that ELF_NREG should be 19 as there should be place for 223 * Note that ELF_NREG should be 19 as there should be place for
@@ -226,7 +226,7 @@ typedef elf_greg_t elf_gregset_t[ELF_NREG]; @@ -226,7 +226,7 @@ typedef elf_greg_t elf_gregset_t[ELF_NREG];
226 * 226 *
227 * See linux kernel: arch/x86/include/asm/elf.h 227 * See linux kernel: arch/x86/include/asm/elf.h
228 */ 228 */
229 -static void elf_core_copy_regs(elf_gregset_t *regs, const CPUState *env) 229 +static void elf_core_copy_regs(target_elf_gregset_t *regs, const CPUState *env)
230 { 230 {
231 (*regs)[0] = env->regs[R_EBX]; 231 (*regs)[0] = env->regs[R_EBX];
232 (*regs)[1] = env->regs[R_ECX]; 232 (*regs)[1] = env->regs[R_ECX];
@@ -286,15 +286,15 @@ static inline void init_thread(struct target_pt_regs *regs, struct image_info *i @@ -286,15 +286,15 @@ static inline void init_thread(struct target_pt_regs *regs, struct image_info *i
286 regs->ARM_r10 = infop->start_data; 286 regs->ARM_r10 = infop->start_data;
287 } 287 }
288 288
289 -typedef uint32_t elf_greg_t; 289 +typedef uint32_t target_elf_greg_t;
290 typedef uint16_t target_uid_t; 290 typedef uint16_t target_uid_t;
291 typedef uint16_t target_gid_t; 291 typedef uint16_t target_gid_t;
292 typedef int32_t target_pid_t; 292 typedef int32_t target_pid_t;
293 293
294 #define ELF_NREG 18 294 #define ELF_NREG 18
295 -typedef elf_greg_t elf_gregset_t[ELF_NREG]; 295 +typedef target_elf_greg_t target_elf_gregset_t[ELF_NREG];
296 296
297 -static void elf_core_copy_regs(elf_gregset_t *regs, const CPUState *env) 297 +static void elf_core_copy_regs(target_elf_gregset_t *regs, const CPUState *env)
298 { 298 {
299 (*regs)[0] = env->regs[0]; 299 (*regs)[0] = env->regs[0];
300 (*regs)[1] = env->regs[1]; 300 (*regs)[1] = env->regs[1];
@@ -1748,7 +1748,7 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs, @@ -1748,7 +1748,7 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs,
1748 1748
1749 /* 1749 /*
1750 * Definitions to generate Intel SVR4-like core files. 1750 * Definitions to generate Intel SVR4-like core files.
1751 - * These mostly have the same names as the SVR4 types with "elf_" 1751 + * These mostly have the same names as the SVR4 types with "target_elf_"
1752 * tacked on the front to prevent clashes with linux definitions, 1752 * tacked on the front to prevent clashes with linux definitions,
1753 * and the typedef forms have been avoided. This is mostly like 1753 * and the typedef forms have been avoided. This is mostly like
1754 * the SVR4 structure, but more Linuxy, with things that Linux does 1754 * the SVR4 structure, but more Linuxy, with things that Linux does
@@ -1768,9 +1768,9 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs, @@ -1768,9 +1768,9 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs,
1768 * Next you define type of register set used for dumping. ELF specification 1768 * Next you define type of register set used for dumping. ELF specification
1769 * says that it needs to be array of elf_greg_t that has size of ELF_NREG. 1769 * says that it needs to be array of elf_greg_t that has size of ELF_NREG.
1770 * 1770 *
1771 - * typedef <target_regtype> elf_greg_t; 1771 + * typedef <target_regtype> target_elf_greg_t;
1772 * #define ELF_NREG <number of registers> 1772 * #define ELF_NREG <number of registers>
1773 - * typedef elf_greg_t elf_gregset_t[ELF_NREG]; 1773 + * typedef taret_elf_greg_t target_elf_gregset_t[ELF_NREG];
1774 * 1774 *
1775 * Then define following types to match target types. Actual types can 1775 * Then define following types to match target types. Actual types can
1776 * be found from linux kernel (arch/<ARCH>/include/asm/posix_types.h): 1776 * be found from linux kernel (arch/<ARCH>/include/asm/posix_types.h):
@@ -1782,7 +1782,8 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs, @@ -1782,7 +1782,8 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs,
1782 * Last step is to implement target specific function that copies registers 1782 * Last step is to implement target specific function that copies registers
1783 * from given cpu into just specified register set. Prototype is: 1783 * from given cpu into just specified register set. Prototype is:
1784 * 1784 *
1785 - * static void elf_core_copy_regs(elf_gregset_t *regs, const CPUState *env); 1785 + * static void elf_core_copy_regs(taret_elf_gregset_t *regs,
  1786 + * const CPUState *env);
1786 * 1787 *
1787 * Parameters: 1788 * Parameters:
1788 * regs - copy register values into here (allocated and zeroed by caller) 1789 * regs - copy register values into here (allocated and zeroed by caller)
@@ -1802,14 +1803,14 @@ struct memelfnote { @@ -1802,14 +1803,14 @@ struct memelfnote {
1802 size_t notesz; 1803 size_t notesz;
1803 }; 1804 };
1804 1805
1805 -struct elf_siginfo { 1806 +struct target_elf_siginfo {
1806 int si_signo; /* signal number */ 1807 int si_signo; /* signal number */
1807 int si_code; /* extra code */ 1808 int si_code; /* extra code */
1808 int si_errno; /* errno */ 1809 int si_errno; /* errno */
1809 }; 1810 };
1810 1811
1811 -struct elf_prstatus {  
1812 - struct elf_siginfo pr_info; /* Info associated with signal */ 1812 +struct target_elf_prstatus {
  1813 + struct target_elf_siginfo pr_info; /* Info associated with signal */
1813 short pr_cursig; /* Current signal */ 1814 short pr_cursig; /* Current signal */
1814 target_ulong pr_sigpend; /* XXX */ 1815 target_ulong pr_sigpend; /* XXX */
1815 target_ulong pr_sighold; /* XXX */ 1816 target_ulong pr_sighold; /* XXX */
@@ -1821,13 +1822,13 @@ struct elf_prstatus { @@ -1821,13 +1822,13 @@ struct elf_prstatus {
1821 struct target_timeval pr_stime; /* XXX System time */ 1822 struct target_timeval pr_stime; /* XXX System time */
1822 struct target_timeval pr_cutime; /* XXX Cumulative user time */ 1823 struct target_timeval pr_cutime; /* XXX Cumulative user time */
1823 struct target_timeval pr_cstime; /* XXX Cumulative system time */ 1824 struct target_timeval pr_cstime; /* XXX Cumulative system time */
1824 - elf_gregset_t pr_reg; /* GP registers */ 1825 + target_elf_gregset_t pr_reg; /* GP registers */
1825 int pr_fpvalid; /* XXX */ 1826 int pr_fpvalid; /* XXX */
1826 }; 1827 };
1827 1828
1828 #define ELF_PRARGSZ (80) /* Number of chars for args */ 1829 #define ELF_PRARGSZ (80) /* Number of chars for args */
1829 1830
1830 -struct elf_prpsinfo { 1831 +struct target_elf_prpsinfo {
1831 char pr_state; /* numeric process state */ 1832 char pr_state; /* numeric process state */
1832 char pr_sname; /* char for pr_state */ 1833 char pr_sname; /* char for pr_state */
1833 char pr_zomb; /* zombie */ 1834 char pr_zomb; /* zombie */
@@ -1844,7 +1845,7 @@ struct elf_prpsinfo { @@ -1844,7 +1845,7 @@ struct elf_prpsinfo {
1844 /* Here is the structure in which status of each thread is captured. */ 1845 /* Here is the structure in which status of each thread is captured. */
1845 struct elf_thread_status { 1846 struct elf_thread_status {
1846 TAILQ_ENTRY(elf_thread_status) ets_link; 1847 TAILQ_ENTRY(elf_thread_status) ets_link;
1847 - struct elf_prstatus prstatus; /* NT_PRSTATUS */ 1848 + struct target_elf_prstatus prstatus; /* NT_PRSTATUS */
1848 #if 0 1849 #if 0
1849 elf_fpregset_t fpu; /* NT_PRFPREG */ 1850 elf_fpregset_t fpu; /* NT_PRFPREG */
1850 struct task_struct *thread; 1851 struct task_struct *thread;
@@ -1856,8 +1857,8 @@ struct elf_thread_status { @@ -1856,8 +1857,8 @@ struct elf_thread_status {
1856 1857
1857 struct elf_note_info { 1858 struct elf_note_info {
1858 struct memelfnote *notes; 1859 struct memelfnote *notes;
1859 - struct elf_prstatus *prstatus; /* NT_PRSTATUS */  
1860 - struct elf_prpsinfo *psinfo; /* NT_PRPSINFO */ 1860 + struct target_elf_prstatus *prstatus; /* NT_PRSTATUS */
  1861 + struct target_elf_prpsinfo *psinfo; /* NT_PRPSINFO */
1861 1862
1862 TAILQ_HEAD(thread_list_head, elf_thread_status) thread_list; 1863 TAILQ_HEAD(thread_list_head, elf_thread_status) thread_list;
1863 #if 0 1864 #if 0
@@ -1899,8 +1900,8 @@ static int vma_walker(void *priv, unsigned long start, unsigned long end, @@ -1899,8 +1900,8 @@ static int vma_walker(void *priv, unsigned long start, unsigned long end,
1899 static void fill_elf_header(struct elfhdr *, int, uint16_t, uint32_t); 1900 static void fill_elf_header(struct elfhdr *, int, uint16_t, uint32_t);
1900 static void fill_note(struct memelfnote *, const char *, int, 1901 static void fill_note(struct memelfnote *, const char *, int,
1901 unsigned int, void *); 1902 unsigned int, void *);
1902 -static void fill_prstatus(struct elf_prstatus *, const TaskState *, int);  
1903 -static int fill_psinfo(struct elf_prpsinfo *, const TaskState *); 1903 +static void fill_prstatus(struct target_elf_prstatus *, const TaskState *, int);
  1904 +static int fill_psinfo(struct target_elf_prpsinfo *, const TaskState *);
1904 static void fill_auxv_note(struct memelfnote *, const TaskState *); 1905 static void fill_auxv_note(struct memelfnote *, const TaskState *);
1905 static void fill_elf_note_phdr(struct elf_phdr *, int, off_t); 1906 static void fill_elf_note_phdr(struct elf_phdr *, int, off_t);
1906 static size_t note_size(const struct memelfnote *); 1907 static size_t note_size(const struct memelfnote *);
@@ -1914,10 +1915,10 @@ static int write_note(struct memelfnote *, int); @@ -1914,10 +1915,10 @@ static int write_note(struct memelfnote *, int);
1914 static int write_note_info(struct elf_note_info *, int); 1915 static int write_note_info(struct elf_note_info *, int);
1915 1916
1916 #ifdef BSWAP_NEEDED 1917 #ifdef BSWAP_NEEDED
1917 -static void bswap_prstatus(struct elf_prstatus *);  
1918 -static void bswap_psinfo(struct elf_prpsinfo *); 1918 +static void bswap_prstatus(struct target_elf_prstatus *);
  1919 +static void bswap_psinfo(struct target_elf_prpsinfo *);
1919 1920
1920 -static void bswap_prstatus(struct elf_prstatus *prstatus) 1921 +static void bswap_prstatus(struct target_elf_prstatus *prstatus)
1921 { 1922 {
1922 prstatus->pr_info.si_signo = tswapl(prstatus->pr_info.si_signo); 1923 prstatus->pr_info.si_signo = tswapl(prstatus->pr_info.si_signo);
1923 prstatus->pr_info.si_code = tswapl(prstatus->pr_info.si_code); 1924 prstatus->pr_info.si_code = tswapl(prstatus->pr_info.si_code);
@@ -1934,7 +1935,7 @@ static void bswap_prstatus(struct elf_prstatus *prstatus) @@ -1934,7 +1935,7 @@ static void bswap_prstatus(struct elf_prstatus *prstatus)
1934 prstatus->pr_fpvalid = tswap32(prstatus->pr_fpvalid); 1935 prstatus->pr_fpvalid = tswap32(prstatus->pr_fpvalid);
1935 } 1936 }
1936 1937
1937 -static void bswap_psinfo(struct elf_prpsinfo *psinfo) 1938 +static void bswap_psinfo(struct target_elf_prpsinfo *psinfo)
1938 { 1939 {
1939 psinfo->pr_flag = tswapl(psinfo->pr_flag); 1940 psinfo->pr_flag = tswapl(psinfo->pr_flag);
1940 psinfo->pr_uid = tswap16(psinfo->pr_uid); 1941 psinfo->pr_uid = tswap16(psinfo->pr_uid);
@@ -2128,7 +2129,7 @@ static size_t note_size(const struct memelfnote *note) @@ -2128,7 +2129,7 @@ static size_t note_size(const struct memelfnote *note)
2128 return (note->notesz); 2129 return (note->notesz);
2129 } 2130 }
2130 2131
2131 -static void fill_prstatus(struct elf_prstatus *prstatus, 2132 +static void fill_prstatus(struct target_elf_prstatus *prstatus,
2132 const TaskState *ts, int signr) 2133 const TaskState *ts, int signr)
2133 { 2134 {
2134 (void) memset(prstatus, 0, sizeof (*prstatus)); 2135 (void) memset(prstatus, 0, sizeof (*prstatus));
@@ -2143,7 +2144,7 @@ static void fill_prstatus(struct elf_prstatus *prstatus, @@ -2143,7 +2144,7 @@ static void fill_prstatus(struct elf_prstatus *prstatus,
2143 #endif 2144 #endif
2144 } 2145 }
2145 2146
2146 -static int fill_psinfo(struct elf_prpsinfo *psinfo, const TaskState *ts) 2147 +static int fill_psinfo(struct target_elf_prpsinfo *psinfo, const TaskState *ts)
2147 { 2148 {
2148 char *filename, *base_filename; 2149 char *filename, *base_filename;
2149 unsigned int i, len; 2150 unsigned int i, len;