NEW_AUX_ENT
NEW_AUX_ENT(AT_L1I_CACHESHAPE, alpha_l1i_cacheshape); \
NEW_AUX_ENT(AT_L1D_CACHESHAPE, alpha_l1d_cacheshape); \
NEW_AUX_ENT(AT_L2_CACHESHAPE, alpha_l2_cacheshape); \
NEW_AUX_ENT(AT_L3_CACHESHAPE, alpha_l3_cacheshape); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_MINSIGSTKSZ, signal_minsigstksz); \
NEW_AUX_ENT(AT_IGNORE, 0); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
#define VDSO_AUX_ENT(a, b) NEW_AUX_ENT(a, b)
NEW_AUX_ENT(AT_SYSINFO_EHDR, VDSO_CURRENT_BASE);\
#define VDSO_AUX_ENT(a,b) NEW_AUX_ENT(a,b)
NEW_AUX_ENT(AT_L1I_CACHESIZE, ppc64_caches.l1i.size); \
NEW_AUX_ENT(AT_L1I_CACHEGEOMETRY, get_cache_geometry(l1i)); \
NEW_AUX_ENT(AT_L1D_CACHESIZE, ppc64_caches.l1d.size); \
NEW_AUX_ENT(AT_L1D_CACHEGEOMETRY, get_cache_geometry(l1d)); \
NEW_AUX_ENT(AT_L2_CACHESIZE, ppc64_caches.l2.size); \
NEW_AUX_ENT(AT_L2_CACHEGEOMETRY, get_cache_geometry(l2)); \
NEW_AUX_ENT(AT_L3_CACHESIZE, ppc64_caches.l3.size); \
NEW_AUX_ENT(AT_L3_CACHEGEOMETRY, get_cache_geometry(l3))
NEW_AUX_ENT(AT_IGNOREPPC, AT_IGNOREPPC); \
NEW_AUX_ENT(AT_IGNOREPPC, AT_IGNOREPPC); \
NEW_AUX_ENT(AT_DCACHEBSIZE, dcache_bsize); \
NEW_AUX_ENT(AT_ICACHEBSIZE, icache_bsize); \
NEW_AUX_ENT(AT_UCACHEBSIZE, 0); \
NEW_AUX_ENT(AT_MINSIGSTKSZ, get_min_sigframe_size()); \
NEW_AUX_ENT(AT_MINSIGSTKSZ, get_min_sigframe_size_compat()); \
NEW_AUX_ENT(AT_L1D_CACHEGEOMETRY, \
NEW_AUX_ENT(AT_L2_CACHESIZE, \
NEW_AUX_ENT(AT_L2_CACHEGEOMETRY, \
NEW_AUX_ENT(AT_L3_CACHESIZE, \
NEW_AUX_ENT(AT_L3_CACHEGEOMETRY, \
NEW_AUX_ENT(AT_MINSIGSTKSZ, signal_minsigstksz); \
NEW_AUX_ENT(AT_IGNORE, 0); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_L1I_CACHESIZE, \
NEW_AUX_ENT(AT_L1I_CACHEGEOMETRY, \
NEW_AUX_ENT(AT_L1D_CACHESIZE, \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_SYSINFO_EHDR, VDSO_BASE); \
NEW_AUX_ENT(AT_IGNORE, 0)
#define VSYSCALL_AUX_ENT NEW_AUX_ENT(AT_IGNORE, 0)
#define FPU_AUX_ENT NEW_AUX_ENT(AT_FPUCW, FPSCR_INIT)
#define FPU_AUX_ENT NEW_AUX_ENT(AT_IGNORE, 0)
NEW_AUX_ENT(AT_L1I_CACHESHAPE, l1i_cache_shape); \
NEW_AUX_ENT(AT_L1D_CACHESHAPE, l1d_cache_shape); \
NEW_AUX_ENT(AT_L2_CACHESHAPE, l2_cache_shape); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_ADI_BLKSZ, adi_state.caps.blksz); \
NEW_AUX_ENT(AT_ADI_NBITS, adi_state.caps.nbits); \
NEW_AUX_ENT(AT_ADI_UEONADI, adi_state.caps.ue_on_adi); \
NEW_AUX_ENT(AT_SYSINFO, VDSO_ENTRY); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, VDSO_CURRENT_BASE); \
NEW_AUX_ENT(AT_MINSIGSTKSZ, get_sigframe_size()); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_MINSIGSTKSZ, get_sigframe_size()); \
NEW_AUX_ENT(AT_SYSINFO_EHDR, \
NEW_AUX_ENT(AT_MINSIGSTKSZ, get_sigframe_size()); \
#define ARCH_DLINFO NEW_AUX_ENT(AT_SYSINFO_EHDR, um_vdso_addr)
NEW_AUX_ENT(AT_HWCAP, ELF_HWCAP);
NEW_AUX_ENT(AT_PAGESZ, ELF_EXEC_PAGESIZE);
NEW_AUX_ENT(AT_CLKTCK, CLOCKS_PER_SEC);
NEW_AUX_ENT(AT_PHDR, phdr_addr);
NEW_AUX_ENT(AT_PHENT, sizeof(struct elf_phdr));
NEW_AUX_ENT(AT_PHNUM, exec->e_phnum);
NEW_AUX_ENT(AT_BASE, interp_load_addr);
NEW_AUX_ENT(AT_FLAGS, flags);
NEW_AUX_ENT(AT_ENTRY, e_entry);
NEW_AUX_ENT(AT_UID, from_kuid_munged(cred->user_ns, cred->uid));
NEW_AUX_ENT(AT_EUID, from_kuid_munged(cred->user_ns, cred->euid));
NEW_AUX_ENT(AT_GID, from_kgid_munged(cred->user_ns, cred->gid));
NEW_AUX_ENT(AT_EGID, from_kgid_munged(cred->user_ns, cred->egid));
NEW_AUX_ENT(AT_SECURE, bprm->secureexec);
NEW_AUX_ENT(AT_RANDOM, (elf_addr_t)(unsigned long)u_rand_bytes);
NEW_AUX_ENT(AT_HWCAP2, ELF_HWCAP2);
NEW_AUX_ENT(AT_HWCAP3, ELF_HWCAP3);
NEW_AUX_ENT(AT_HWCAP4, ELF_HWCAP4);
NEW_AUX_ENT(AT_EXECFN, bprm->exec);
NEW_AUX_ENT(AT_PLATFORM,
NEW_AUX_ENT(AT_BASE_PLATFORM,
NEW_AUX_ENT(AT_EXECFD, bprm->execfd);
NEW_AUX_ENT(AT_RSEQ_FEATURE_SIZE, offsetof(struct rseq, end));
NEW_AUX_ENT(AT_RSEQ_ALIGN, rseq_alloc_align());
NEW_AUX_ENT(AT_HWCAP, ELF_HWCAP);
NEW_AUX_ENT(AT_HWCAP2, ELF_HWCAP2);
NEW_AUX_ENT(AT_HWCAP3, ELF_HWCAP3);
NEW_AUX_ENT(AT_HWCAP4, ELF_HWCAP4);
NEW_AUX_ENT(AT_PAGESZ, PAGE_SIZE);
NEW_AUX_ENT(AT_CLKTCK, CLOCKS_PER_SEC);
NEW_AUX_ENT(AT_PHDR, exec_params->ph_addr);
NEW_AUX_ENT(AT_PHENT, sizeof(struct elf_phdr));
NEW_AUX_ENT(AT_PHNUM, exec_params->hdr.e_phnum);
NEW_AUX_ENT(AT_BASE, interp_params->elfhdr_addr);
NEW_AUX_ENT(AT_FLAGS, flags);
NEW_AUX_ENT(AT_ENTRY, exec_params->entry_addr);
NEW_AUX_ENT(AT_UID, (elf_addr_t) from_kuid_munged(cred->user_ns, cred->uid));
NEW_AUX_ENT(AT_EUID, (elf_addr_t) from_kuid_munged(cred->user_ns, cred->euid));
NEW_AUX_ENT(AT_GID, (elf_addr_t) from_kgid_munged(cred->user_ns, cred->gid));
NEW_AUX_ENT(AT_EGID, (elf_addr_t) from_kgid_munged(cred->user_ns, cred->egid));
NEW_AUX_ENT(AT_SECURE, bprm->secureexec);
NEW_AUX_ENT(AT_EXECFN, bprm->exec);
NEW_AUX_ENT(AT_PLATFORM,
NEW_AUX_ENT(AT_BASE_PLATFORM,
NEW_AUX_ENT(AT_EXECFD, bprm->execfd);