From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 16EBDC433E0 for ; Mon, 4 Jan 2021 10:14:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A754621BE5 for ; Mon, 4 Jan 2021 10:14:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726418AbhADKOZ (ORCPT ); Mon, 4 Jan 2021 05:14:25 -0500 Received: from mga17.intel.com ([192.55.52.151]:46159 "EHLO mga17.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726256AbhADKOY (ORCPT ); Mon, 4 Jan 2021 05:14:24 -0500 IronPort-SDR: /GvEVwCpF2yBSWBdbj7fKFv04wFdcU4IjC00ykcMgYep0GAwlR1LD24ctUcxV3H1GQVx4pgw2p 6O6bmCYRnQvw== X-IronPort-AV: E=McAfee;i="6000,8403,9853"; a="156723104" X-IronPort-AV: E=Sophos;i="5.78,473,1599548400"; d="gz'50?scan'50,208,50";a="156723104" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jan 2021 02:13:42 -0800 IronPort-SDR: dOs2pqK56JsOecEc56ZFJ2/+YSIl53FYzBXZbsvg3cycKfXXMvewlH9171wf6Tx2zeCvigbGnP XPVJdEizmBvw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.78,473,1599548400"; d="gz'50?scan'50,208,50";a="378362422" Received: from lkp-server02.sh.intel.com (HELO 4242b19f17ef) ([10.239.97.151]) by orsmga008.jf.intel.com with ESMTP; 04 Jan 2021 02:13:40 -0800 Received: from kbuild by 4242b19f17ef with local (Exim 4.92) (envelope-from ) id 1kwMrs-0007Y9-3I; Mon, 04 Jan 2021 10:13:40 +0000 Date: Mon, 4 Jan 2021 18:13:25 +0800 From: kernel test robot To: Al Viro Cc: kbuild-all@lists.01.org, linux-fsdevel@vger.kernel.org Subject: [vfs:work.elf-compat 11/13] fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' Message-ID: <202101041818.RRAoU6Bu-lkp@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="envbJBWh7q8WU6mo" Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-fsdevel@vger.kernel.org --envbJBWh7q8WU6mo Content-Type: text/plain; charset=us-ascii Content-Disposition: inline tree: https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.elf-compat head: b9613abdecd9d2dae95f4712985280c80ce8e646 commit: 5df3c15125233fbc59fd003249c381c7edd985cc [11/13] Kconfig: regularize selection of CONFIG_BINFMT_ELF config: x86_64-randconfig-a005-20210104 (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 reproduce (this is a W=1 build): # https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/commit/?id=5df3c15125233fbc59fd003249c381c7edd985cc git remote add vfs https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git git fetch --no-tags vfs work.elf-compat git checkout 5df3c15125233fbc59fd003249c381c7edd985cc # save the attached .config to linux build tree make W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): ld: fs/compat_binfmt_elf.o: in function `create_elf_tables': >> fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' >> ld: fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' >> ld: fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' vim +254 fs/binfmt_elf.c 483fad1c3fa1060 Nathan Lynch 2008-07-22 170 ^1da177e4c3f415 Linus Torvalds 2005-04-16 171 static int a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 172 create_elf_tables(struct linux_binprm *bprm, const struct elfhdr *exec, a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 173 unsigned long load_addr, unsigned long interp_load_addr, a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 174 unsigned long e_entry) ^1da177e4c3f415 Linus Torvalds 2005-04-16 175 { 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 176 struct mm_struct *mm = current->mm; ^1da177e4c3f415 Linus Torvalds 2005-04-16 177 unsigned long p = bprm->p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 178 int argc = bprm->argc; ^1da177e4c3f415 Linus Torvalds 2005-04-16 179 int envc = bprm->envc; ^1da177e4c3f415 Linus Torvalds 2005-04-16 180 elf_addr_t __user *sp; ^1da177e4c3f415 Linus Torvalds 2005-04-16 181 elf_addr_t __user *u_platform; 483fad1c3fa1060 Nathan Lynch 2008-07-22 182 elf_addr_t __user *u_base_platform; f06295b44c296c8 Kees Cook 2009-01-07 183 elf_addr_t __user *u_rand_bytes; ^1da177e4c3f415 Linus Torvalds 2005-04-16 184 const char *k_platform = ELF_PLATFORM; 483fad1c3fa1060 Nathan Lynch 2008-07-22 185 const char *k_base_platform = ELF_BASE_PLATFORM; f06295b44c296c8 Kees Cook 2009-01-07 186 unsigned char k_rand_bytes[16]; ^1da177e4c3f415 Linus Torvalds 2005-04-16 187 int items; ^1da177e4c3f415 Linus Torvalds 2005-04-16 188 elf_addr_t *elf_info; 1f83d80677a24ae Alexey Dobriyan 2020-01-30 189 int ei_index; 86a264abe542cfe David Howells 2008-11-14 190 const struct cred *cred = current_cred(); b6a2fea39318e43 Ollie Wild 2007-07-19 191 struct vm_area_struct *vma; ^1da177e4c3f415 Linus Torvalds 2005-04-16 192 d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 193 /* d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 194 * In some cases (e.g. Hyper-Threading), we want to avoid L1 d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 195 * evictions by the processes running on the same package. One d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 196 * thing we can do is to shuffle the initial stack for them. d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 197 */ d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 198 d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 199 p = arch_align_stack(p); d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 200 ^1da177e4c3f415 Linus Torvalds 2005-04-16 201 /* ^1da177e4c3f415 Linus Torvalds 2005-04-16 202 * If this architecture has a platform capability string, copy it ^1da177e4c3f415 Linus Torvalds 2005-04-16 203 * to userspace. In some cases (Sparc), this info is impossible ^1da177e4c3f415 Linus Torvalds 2005-04-16 204 * for userspace to get any other way, in others (i386) it is ^1da177e4c3f415 Linus Torvalds 2005-04-16 205 * merely difficult. ^1da177e4c3f415 Linus Torvalds 2005-04-16 206 */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 207 u_platform = NULL; ^1da177e4c3f415 Linus Torvalds 2005-04-16 208 if (k_platform) { ^1da177e4c3f415 Linus Torvalds 2005-04-16 209 size_t len = strlen(k_platform) + 1; ^1da177e4c3f415 Linus Torvalds 2005-04-16 210 ^1da177e4c3f415 Linus Torvalds 2005-04-16 211 u_platform = (elf_addr_t __user *)STACK_ALLOC(p, len); 646e84deb4496e2 Al Viro 2020-02-19 212 if (copy_to_user(u_platform, k_platform, len)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 213 return -EFAULT; ^1da177e4c3f415 Linus Torvalds 2005-04-16 214 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 215 483fad1c3fa1060 Nathan Lynch 2008-07-22 216 /* 483fad1c3fa1060 Nathan Lynch 2008-07-22 217 * If this architecture has a "base" platform capability 483fad1c3fa1060 Nathan Lynch 2008-07-22 218 * string, copy it to userspace. 483fad1c3fa1060 Nathan Lynch 2008-07-22 219 */ 483fad1c3fa1060 Nathan Lynch 2008-07-22 220 u_base_platform = NULL; 483fad1c3fa1060 Nathan Lynch 2008-07-22 221 if (k_base_platform) { 483fad1c3fa1060 Nathan Lynch 2008-07-22 222 size_t len = strlen(k_base_platform) + 1; 483fad1c3fa1060 Nathan Lynch 2008-07-22 223 483fad1c3fa1060 Nathan Lynch 2008-07-22 224 u_base_platform = (elf_addr_t __user *)STACK_ALLOC(p, len); 646e84deb4496e2 Al Viro 2020-02-19 225 if (copy_to_user(u_base_platform, k_base_platform, len)) 483fad1c3fa1060 Nathan Lynch 2008-07-22 226 return -EFAULT; 483fad1c3fa1060 Nathan Lynch 2008-07-22 227 } 483fad1c3fa1060 Nathan Lynch 2008-07-22 228 f06295b44c296c8 Kees Cook 2009-01-07 229 /* f06295b44c296c8 Kees Cook 2009-01-07 230 * Generate 16 random bytes for userspace PRNG seeding. f06295b44c296c8 Kees Cook 2009-01-07 231 */ f06295b44c296c8 Kees Cook 2009-01-07 232 get_random_bytes(k_rand_bytes, sizeof(k_rand_bytes)); f06295b44c296c8 Kees Cook 2009-01-07 233 u_rand_bytes = (elf_addr_t __user *) f06295b44c296c8 Kees Cook 2009-01-07 234 STACK_ALLOC(p, sizeof(k_rand_bytes)); 646e84deb4496e2 Al Viro 2020-02-19 235 if (copy_to_user(u_rand_bytes, k_rand_bytes, sizeof(k_rand_bytes))) f06295b44c296c8 Kees Cook 2009-01-07 236 return -EFAULT; f06295b44c296c8 Kees Cook 2009-01-07 237 ^1da177e4c3f415 Linus Torvalds 2005-04-16 238 /* Create the ELF interpreter info */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 239 elf_info = (elf_addr_t *)mm->saved_auxv; 4f9a58d75bfe82a Olaf Hering 2007-10-16 240 /* update AT_VECTOR_SIZE_BASE if the number of NEW_AUX_ENT() changes */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 241 #define NEW_AUX_ENT(id, val) \ f4e5cc2c44bf760 Jesper Juhl 2006-06-23 242 do { \ 1f83d80677a24ae Alexey Dobriyan 2020-01-30 243 *elf_info++ = id; \ 1f83d80677a24ae Alexey Dobriyan 2020-01-30 244 *elf_info++ = val; \ f4e5cc2c44bf760 Jesper Juhl 2006-06-23 245 } while (0) ^1da177e4c3f415 Linus Torvalds 2005-04-16 246 ^1da177e4c3f415 Linus Torvalds 2005-04-16 247 #ifdef ARCH_DLINFO ^1da177e4c3f415 Linus Torvalds 2005-04-16 248 /* ^1da177e4c3f415 Linus Torvalds 2005-04-16 249 * ARCH_DLINFO must come first so PPC can do its special alignment of ^1da177e4c3f415 Linus Torvalds 2005-04-16 250 * AUXV. 4f9a58d75bfe82a Olaf Hering 2007-10-16 251 * update AT_VECTOR_SIZE_ARCH if the number of NEW_AUX_ENT() in 4f9a58d75bfe82a Olaf Hering 2007-10-16 252 * ARCH_DLINFO changes ^1da177e4c3f415 Linus Torvalds 2005-04-16 253 */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 @254 ARCH_DLINFO; ^1da177e4c3f415 Linus Torvalds 2005-04-16 255 #endif ^1da177e4c3f415 Linus Torvalds 2005-04-16 256 NEW_AUX_ENT(AT_HWCAP, ELF_HWCAP); ^1da177e4c3f415 Linus Torvalds 2005-04-16 257 NEW_AUX_ENT(AT_PAGESZ, ELF_EXEC_PAGESIZE); ^1da177e4c3f415 Linus Torvalds 2005-04-16 258 NEW_AUX_ENT(AT_CLKTCK, CLOCKS_PER_SEC); ^1da177e4c3f415 Linus Torvalds 2005-04-16 259 NEW_AUX_ENT(AT_PHDR, load_addr + exec->e_phoff); ^1da177e4c3f415 Linus Torvalds 2005-04-16 260 NEW_AUX_ENT(AT_PHENT, sizeof(struct elf_phdr)); ^1da177e4c3f415 Linus Torvalds 2005-04-16 261 NEW_AUX_ENT(AT_PHNUM, exec->e_phnum); ^1da177e4c3f415 Linus Torvalds 2005-04-16 262 NEW_AUX_ENT(AT_BASE, interp_load_addr); ^1da177e4c3f415 Linus Torvalds 2005-04-16 263 NEW_AUX_ENT(AT_FLAGS, 0); a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 264 NEW_AUX_ENT(AT_ENTRY, e_entry); ebc887b278944fc Eric W. Biederman 2012-02-07 265 NEW_AUX_ENT(AT_UID, from_kuid_munged(cred->user_ns, cred->uid)); ebc887b278944fc Eric W. Biederman 2012-02-07 266 NEW_AUX_ENT(AT_EUID, from_kuid_munged(cred->user_ns, cred->euid)); ebc887b278944fc Eric W. Biederman 2012-02-07 267 NEW_AUX_ENT(AT_GID, from_kgid_munged(cred->user_ns, cred->gid)); ebc887b278944fc Eric W. Biederman 2012-02-07 268 NEW_AUX_ENT(AT_EGID, from_kgid_munged(cred->user_ns, cred->egid)); c425e189ffd7720 Kees Cook 2017-07-18 269 NEW_AUX_ENT(AT_SECURE, bprm->secureexec); f06295b44c296c8 Kees Cook 2009-01-07 270 NEW_AUX_ENT(AT_RANDOM, (elf_addr_t)(unsigned long)u_rand_bytes); 2171364d1a92d0a Michael Neuling 2013-04-17 271 #ifdef ELF_HWCAP2 2171364d1a92d0a Michael Neuling 2013-04-17 272 NEW_AUX_ENT(AT_HWCAP2, ELF_HWCAP2); 2171364d1a92d0a Michael Neuling 2013-04-17 273 #endif 651910874633a75 John Reiser 2008-07-21 274 NEW_AUX_ENT(AT_EXECFN, bprm->exec); ^1da177e4c3f415 Linus Torvalds 2005-04-16 275 if (k_platform) { f4e5cc2c44bf760 Jesper Juhl 2006-06-23 276 NEW_AUX_ENT(AT_PLATFORM, f4e5cc2c44bf760 Jesper Juhl 2006-06-23 277 (elf_addr_t)(unsigned long)u_platform); ^1da177e4c3f415 Linus Torvalds 2005-04-16 278 } 483fad1c3fa1060 Nathan Lynch 2008-07-22 279 if (k_base_platform) { 483fad1c3fa1060 Nathan Lynch 2008-07-22 280 NEW_AUX_ENT(AT_BASE_PLATFORM, 483fad1c3fa1060 Nathan Lynch 2008-07-22 281 (elf_addr_t)(unsigned long)u_base_platform); 483fad1c3fa1060 Nathan Lynch 2008-07-22 282 } b8a61c9e7b4a0fe Eric W. Biederman 2020-05-14 283 if (bprm->have_execfd) { b8a61c9e7b4a0fe Eric W. Biederman 2020-05-14 284 NEW_AUX_ENT(AT_EXECFD, bprm->execfd); ^1da177e4c3f415 Linus Torvalds 2005-04-16 285 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 286 #undef NEW_AUX_ENT ^1da177e4c3f415 Linus Torvalds 2005-04-16 287 /* AT_NULL is zero; clear the rest too */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 288 memset(elf_info, 0, (char *)mm->saved_auxv + 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 289 sizeof(mm->saved_auxv) - (char *)elf_info); ^1da177e4c3f415 Linus Torvalds 2005-04-16 290 ^1da177e4c3f415 Linus Torvalds 2005-04-16 291 /* And advance past the AT_NULL entry. */ 1f83d80677a24ae Alexey Dobriyan 2020-01-30 292 elf_info += 2; ^1da177e4c3f415 Linus Torvalds 2005-04-16 293 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 294 ei_index = elf_info - (elf_addr_t *)mm->saved_auxv; ^1da177e4c3f415 Linus Torvalds 2005-04-16 295 sp = STACK_ADD(p, ei_index); ^1da177e4c3f415 Linus Torvalds 2005-04-16 296 d20894a23708c2a Andi Kleen 2008-02-08 297 items = (argc + 1) + (envc + 1) + 1; ^1da177e4c3f415 Linus Torvalds 2005-04-16 298 bprm->p = STACK_ROUND(sp, items); ^1da177e4c3f415 Linus Torvalds 2005-04-16 299 ^1da177e4c3f415 Linus Torvalds 2005-04-16 300 /* Point sp at the lowest address on the stack */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 301 #ifdef CONFIG_STACK_GROWSUP ^1da177e4c3f415 Linus Torvalds 2005-04-16 302 sp = (elf_addr_t __user *)bprm->p - items - ei_index; ^1da177e4c3f415 Linus Torvalds 2005-04-16 303 bprm->exec = (unsigned long)sp; /* XXX: PARISC HACK */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 304 #else ^1da177e4c3f415 Linus Torvalds 2005-04-16 305 sp = (elf_addr_t __user *)bprm->p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 306 #endif ^1da177e4c3f415 Linus Torvalds 2005-04-16 307 b6a2fea39318e43 Ollie Wild 2007-07-19 308 b6a2fea39318e43 Ollie Wild 2007-07-19 309 /* b6a2fea39318e43 Ollie Wild 2007-07-19 310 * Grow the stack manually; some architectures have a limit on how b6a2fea39318e43 Ollie Wild 2007-07-19 311 * far ahead a user-space access may be in order to grow the stack. b6a2fea39318e43 Ollie Wild 2007-07-19 312 */ b2767d97f5ff758 Jann Horn 2020-10-17 313 if (mmap_read_lock_killable(mm)) b2767d97f5ff758 Jann Horn 2020-10-17 314 return -EINTR; 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 315 vma = find_extend_vma(mm, bprm->p); b2767d97f5ff758 Jann Horn 2020-10-17 316 mmap_read_unlock(mm); b6a2fea39318e43 Ollie Wild 2007-07-19 317 if (!vma) b6a2fea39318e43 Ollie Wild 2007-07-19 318 return -EFAULT; b6a2fea39318e43 Ollie Wild 2007-07-19 319 ^1da177e4c3f415 Linus Torvalds 2005-04-16 320 /* Now, let's put argc (and argv, envp if appropriate) on the stack */ 646e84deb4496e2 Al Viro 2020-02-19 321 if (put_user(argc, sp++)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 322 return -EFAULT; ^1da177e4c3f415 Linus Torvalds 2005-04-16 323 67c6777a5d331dd Kees Cook 2017-07-10 324 /* Populate list of argv pointers back to argv strings. */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 325 p = mm->arg_end = mm->arg_start; ^1da177e4c3f415 Linus Torvalds 2005-04-16 326 while (argc-- > 0) { ^1da177e4c3f415 Linus Torvalds 2005-04-16 327 size_t len; 646e84deb4496e2 Al Viro 2020-02-19 328 if (put_user((elf_addr_t)p, sp++)) 841d5fb7c75260f Heiko Carstens 2006-12-06 329 return -EFAULT; b6a2fea39318e43 Ollie Wild 2007-07-19 330 len = strnlen_user((void __user *)p, MAX_ARG_STRLEN); b6a2fea39318e43 Ollie Wild 2007-07-19 331 if (!len || len > MAX_ARG_STRLEN) 23c4971e3d97de4 WANG Cong 2008-05-08 332 return -EINVAL; ^1da177e4c3f415 Linus Torvalds 2005-04-16 333 p += len; ^1da177e4c3f415 Linus Torvalds 2005-04-16 334 } 646e84deb4496e2 Al Viro 2020-02-19 335 if (put_user(0, sp++)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 336 return -EFAULT; 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 337 mm->arg_end = p; 67c6777a5d331dd Kees Cook 2017-07-10 338 67c6777a5d331dd Kees Cook 2017-07-10 339 /* Populate list of envp pointers back to envp strings. */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 340 mm->env_end = mm->env_start = p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 341 while (envc-- > 0) { ^1da177e4c3f415 Linus Torvalds 2005-04-16 342 size_t len; 646e84deb4496e2 Al Viro 2020-02-19 343 if (put_user((elf_addr_t)p, sp++)) 841d5fb7c75260f Heiko Carstens 2006-12-06 344 return -EFAULT; b6a2fea39318e43 Ollie Wild 2007-07-19 345 len = strnlen_user((void __user *)p, MAX_ARG_STRLEN); b6a2fea39318e43 Ollie Wild 2007-07-19 346 if (!len || len > MAX_ARG_STRLEN) 23c4971e3d97de4 WANG Cong 2008-05-08 347 return -EINVAL; ^1da177e4c3f415 Linus Torvalds 2005-04-16 348 p += len; ^1da177e4c3f415 Linus Torvalds 2005-04-16 349 } 646e84deb4496e2 Al Viro 2020-02-19 350 if (put_user(0, sp++)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 351 return -EFAULT; 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 352 mm->env_end = p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 353 ^1da177e4c3f415 Linus Torvalds 2005-04-16 354 /* Put the elf_info on the stack in the right place. */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 355 if (copy_to_user(sp, mm->saved_auxv, ei_index * sizeof(elf_addr_t))) ^1da177e4c3f415 Linus Torvalds 2005-04-16 356 return -EFAULT; ^1da177e4c3f415 Linus Torvalds 2005-04-16 357 return 0; ^1da177e4c3f415 Linus Torvalds 2005-04-16 358 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 359 :::::: The code at line 254 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds :::::: CC: Linus Torvalds --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --envbJBWh7q8WU6mo Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 --envbJBWh7q8WU6mo-- From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4833402872715218861==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: [vfs:work.elf-compat 11/13] fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' Date: Mon, 04 Jan 2021 18:13:25 +0800 Message-ID: <202101041818.RRAoU6Bu-lkp@intel.com> List-Id: --===============4833402872715218861== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.e= lf-compat head: b9613abdecd9d2dae95f4712985280c80ce8e646 commit: 5df3c15125233fbc59fd003249c381c7edd985cc [11/13] Kconfig: regulariz= e selection of CONFIG_BINFMT_ELF config: x86_64-randconfig-a005-20210104 (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 reproduce (this is a W=3D1 build): # https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/comm= it/?id=3D5df3c15125233fbc59fd003249c381c7edd985cc git remote add vfs https://git.kernel.org/pub/scm/linux/kernel/git/= viro/vfs.git git fetch --no-tags vfs work.elf-compat git checkout 5df3c15125233fbc59fd003249c381c7edd985cc # save the attached .config to linux build tree make W=3D1 ARCH=3Dx86_64 = If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): ld: fs/compat_binfmt_elf.o: in function `create_elf_tables': >> fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' >> ld: fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' >> ld: fs/binfmt_elf.c:254: undefined reference to `vdso_image_32' vim +254 fs/binfmt_elf.c 483fad1c3fa1060 Nathan Lynch 2008-07-22 170 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 171 static int a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 172 create_elf_tables(struct= linux_binprm *bprm, const struct elfhdr *exec, a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 173 unsigned long load_add= r, unsigned long interp_load_addr, a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 174 unsigned long e_entry) ^1da177e4c3f415 Linus Torvalds 2005-04-16 175 { 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 176 struct mm_struct *mm = =3D current->mm; ^1da177e4c3f415 Linus Torvalds 2005-04-16 177 unsigned long p =3D bpr= m->p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 178 int argc =3D bprm->argc; ^1da177e4c3f415 Linus Torvalds 2005-04-16 179 int envc =3D bprm->envc; ^1da177e4c3f415 Linus Torvalds 2005-04-16 180 elf_addr_t __user *sp; ^1da177e4c3f415 Linus Torvalds 2005-04-16 181 elf_addr_t __user *u_pl= atform; 483fad1c3fa1060 Nathan Lynch 2008-07-22 182 elf_addr_t __user *u_ba= se_platform; f06295b44c296c8 Kees Cook 2009-01-07 183 elf_addr_t __user *u_ra= nd_bytes; ^1da177e4c3f415 Linus Torvalds 2005-04-16 184 const char *k_platform = =3D ELF_PLATFORM; 483fad1c3fa1060 Nathan Lynch 2008-07-22 185 const char *k_base_plat= form =3D ELF_BASE_PLATFORM; f06295b44c296c8 Kees Cook 2009-01-07 186 unsigned char k_rand_by= tes[16]; ^1da177e4c3f415 Linus Torvalds 2005-04-16 187 int items; ^1da177e4c3f415 Linus Torvalds 2005-04-16 188 elf_addr_t *elf_info; 1f83d80677a24ae Alexey Dobriyan 2020-01-30 189 int ei_index; 86a264abe542cfe David Howells 2008-11-14 190 const struct cred *cred= =3D current_cred(); b6a2fea39318e43 Ollie Wild 2007-07-19 191 struct vm_area_struct *= vma; ^1da177e4c3f415 Linus Torvalds 2005-04-16 192 = d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 193 /* d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 194 * In some cases (e.g. = Hyper-Threading), we want to avoid L1 d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 195 * evictions by the pro= cesses running on the same package. One d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 196 * thing we can do is t= o shuffle the initial stack for them. d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 197 */ d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 198 = d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 199 p =3D arch_align_stack(= p); d68c9d6ae8f1fda Franck Bui-Huu 2007-10-16 200 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 201 /* ^1da177e4c3f415 Linus Torvalds 2005-04-16 202 * If this architecture= has a platform capability string, copy it ^1da177e4c3f415 Linus Torvalds 2005-04-16 203 * to userspace. In so= me cases (Sparc), this info is impossible ^1da177e4c3f415 Linus Torvalds 2005-04-16 204 * for userspace to get= any other way, in others (i386) it is ^1da177e4c3f415 Linus Torvalds 2005-04-16 205 * merely difficult. ^1da177e4c3f415 Linus Torvalds 2005-04-16 206 */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 207 u_platform =3D NULL; ^1da177e4c3f415 Linus Torvalds 2005-04-16 208 if (k_platform) { ^1da177e4c3f415 Linus Torvalds 2005-04-16 209 size_t len =3D strlen(= k_platform) + 1; ^1da177e4c3f415 Linus Torvalds 2005-04-16 210 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 211 u_platform =3D (elf_ad= dr_t __user *)STACK_ALLOC(p, len); 646e84deb4496e2 Al Viro 2020-02-19 212 if (copy_to_user(u_pla= tform, k_platform, len)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 213 return -EFAULT; ^1da177e4c3f415 Linus Torvalds 2005-04-16 214 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 215 = 483fad1c3fa1060 Nathan Lynch 2008-07-22 216 /* 483fad1c3fa1060 Nathan Lynch 2008-07-22 217 * If this architecture= has a "base" platform capability 483fad1c3fa1060 Nathan Lynch 2008-07-22 218 * string, copy it to u= serspace. 483fad1c3fa1060 Nathan Lynch 2008-07-22 219 */ 483fad1c3fa1060 Nathan Lynch 2008-07-22 220 u_base_platform =3D NUL= L; 483fad1c3fa1060 Nathan Lynch 2008-07-22 221 if (k_base_platform) { 483fad1c3fa1060 Nathan Lynch 2008-07-22 222 size_t len =3D strlen(= k_base_platform) + 1; 483fad1c3fa1060 Nathan Lynch 2008-07-22 223 = 483fad1c3fa1060 Nathan Lynch 2008-07-22 224 u_base_platform =3D (e= lf_addr_t __user *)STACK_ALLOC(p, len); 646e84deb4496e2 Al Viro 2020-02-19 225 if (copy_to_user(u_bas= e_platform, k_base_platform, len)) 483fad1c3fa1060 Nathan Lynch 2008-07-22 226 return -EFAULT; 483fad1c3fa1060 Nathan Lynch 2008-07-22 227 } 483fad1c3fa1060 Nathan Lynch 2008-07-22 228 = f06295b44c296c8 Kees Cook 2009-01-07 229 /* f06295b44c296c8 Kees Cook 2009-01-07 230 * Generate 16 random b= ytes for userspace PRNG seeding. f06295b44c296c8 Kees Cook 2009-01-07 231 */ f06295b44c296c8 Kees Cook 2009-01-07 232 get_random_bytes(k_rand= _bytes, sizeof(k_rand_bytes)); f06295b44c296c8 Kees Cook 2009-01-07 233 u_rand_bytes =3D (elf_a= ddr_t __user *) f06295b44c296c8 Kees Cook 2009-01-07 234 STACK_ALLOC(p, = sizeof(k_rand_bytes)); 646e84deb4496e2 Al Viro 2020-02-19 235 if (copy_to_user(u_rand= _bytes, k_rand_bytes, sizeof(k_rand_bytes))) f06295b44c296c8 Kees Cook 2009-01-07 236 return -EFAULT; f06295b44c296c8 Kees Cook 2009-01-07 237 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 238 /* Create the ELF inter= preter info */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 239 elf_info =3D (elf_addr_= t *)mm->saved_auxv; 4f9a58d75bfe82a Olaf Hering 2007-10-16 240 /* update AT_VECTOR_SIZ= E_BASE if the number of NEW_AUX_ENT() changes */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 241 #define NEW_AUX_ENT(id, = val) \ f4e5cc2c44bf760 Jesper Juhl 2006-06-23 242 do { \ 1f83d80677a24ae Alexey Dobriyan 2020-01-30 243 *elf_info++ =3D id; \ 1f83d80677a24ae Alexey Dobriyan 2020-01-30 244 *elf_info++ =3D val; \ f4e5cc2c44bf760 Jesper Juhl 2006-06-23 245 } while (0) ^1da177e4c3f415 Linus Torvalds 2005-04-16 246 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 247 #ifdef ARCH_DLINFO ^1da177e4c3f415 Linus Torvalds 2005-04-16 248 /* = ^1da177e4c3f415 Linus Torvalds 2005-04-16 249 * ARCH_DLINFO must com= e first so PPC can do its special alignment of ^1da177e4c3f415 Linus Torvalds 2005-04-16 250 * AUXV. 4f9a58d75bfe82a Olaf Hering 2007-10-16 251 * update AT_VECTOR_SIZ= E_ARCH if the number of NEW_AUX_ENT() in 4f9a58d75bfe82a Olaf Hering 2007-10-16 252 * ARCH_DLINFO changes ^1da177e4c3f415 Linus Torvalds 2005-04-16 253 */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 @254 ARCH_DLINFO; ^1da177e4c3f415 Linus Torvalds 2005-04-16 255 #endif ^1da177e4c3f415 Linus Torvalds 2005-04-16 256 NEW_AUX_ENT(AT_HWCAP, E= LF_HWCAP); ^1da177e4c3f415 Linus Torvalds 2005-04-16 257 NEW_AUX_ENT(AT_PAGESZ, = ELF_EXEC_PAGESIZE); ^1da177e4c3f415 Linus Torvalds 2005-04-16 258 NEW_AUX_ENT(AT_CLKTCK, = CLOCKS_PER_SEC); ^1da177e4c3f415 Linus Torvalds 2005-04-16 259 NEW_AUX_ENT(AT_PHDR, lo= ad_addr + exec->e_phoff); ^1da177e4c3f415 Linus Torvalds 2005-04-16 260 NEW_AUX_ENT(AT_PHENT, s= izeof(struct elf_phdr)); ^1da177e4c3f415 Linus Torvalds 2005-04-16 261 NEW_AUX_ENT(AT_PHNUM, e= xec->e_phnum); ^1da177e4c3f415 Linus Torvalds 2005-04-16 262 NEW_AUX_ENT(AT_BASE, in= terp_load_addr); ^1da177e4c3f415 Linus Torvalds 2005-04-16 263 NEW_AUX_ENT(AT_FLAGS, 0= ); a62c5b1b6647ea0 Alexey Dobriyan 2020-01-30 264 NEW_AUX_ENT(AT_ENTRY, e= _entry); ebc887b278944fc Eric W. Biederman 2012-02-07 265 NEW_AUX_ENT(AT_UID, fro= m_kuid_munged(cred->user_ns, cred->uid)); ebc887b278944fc Eric W. Biederman 2012-02-07 266 NEW_AUX_ENT(AT_EUID, fr= om_kuid_munged(cred->user_ns, cred->euid)); ebc887b278944fc Eric W. Biederman 2012-02-07 267 NEW_AUX_ENT(AT_GID, fro= m_kgid_munged(cred->user_ns, cred->gid)); ebc887b278944fc Eric W. Biederman 2012-02-07 268 NEW_AUX_ENT(AT_EGID, fr= om_kgid_munged(cred->user_ns, cred->egid)); c425e189ffd7720 Kees Cook 2017-07-18 269 NEW_AUX_ENT(AT_SECURE, = bprm->secureexec); f06295b44c296c8 Kees Cook 2009-01-07 270 NEW_AUX_ENT(AT_RANDOM, = (elf_addr_t)(unsigned long)u_rand_bytes); 2171364d1a92d0a Michael Neuling 2013-04-17 271 #ifdef ELF_HWCAP2 2171364d1a92d0a Michael Neuling 2013-04-17 272 NEW_AUX_ENT(AT_HWCAP2, = ELF_HWCAP2); 2171364d1a92d0a Michael Neuling 2013-04-17 273 #endif 651910874633a75 John Reiser 2008-07-21 274 NEW_AUX_ENT(AT_EXECFN, = bprm->exec); ^1da177e4c3f415 Linus Torvalds 2005-04-16 275 if (k_platform) { f4e5cc2c44bf760 Jesper Juhl 2006-06-23 276 NEW_AUX_ENT(AT_PLATFOR= M, f4e5cc2c44bf760 Jesper Juhl 2006-06-23 277 (elf_addr_t)(unsi= gned long)u_platform); ^1da177e4c3f415 Linus Torvalds 2005-04-16 278 } 483fad1c3fa1060 Nathan Lynch 2008-07-22 279 if (k_base_platform) { 483fad1c3fa1060 Nathan Lynch 2008-07-22 280 NEW_AUX_ENT(AT_BASE_PL= ATFORM, 483fad1c3fa1060 Nathan Lynch 2008-07-22 281 (elf_addr_t)(unsi= gned long)u_base_platform); 483fad1c3fa1060 Nathan Lynch 2008-07-22 282 } b8a61c9e7b4a0fe Eric W. Biederman 2020-05-14 283 if (bprm->have_execfd) { b8a61c9e7b4a0fe Eric W. Biederman 2020-05-14 284 NEW_AUX_ENT(AT_EXECFD,= bprm->execfd); ^1da177e4c3f415 Linus Torvalds 2005-04-16 285 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 286 #undef NEW_AUX_ENT ^1da177e4c3f415 Linus Torvalds 2005-04-16 287 /* AT_NULL is zero; cle= ar the rest too */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 288 memset(elf_info, 0, (ch= ar *)mm->saved_auxv + 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 289 sizeof(mm->saved_auxv= ) - (char *)elf_info); ^1da177e4c3f415 Linus Torvalds 2005-04-16 290 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 291 /* And advance past the= AT_NULL entry. */ 1f83d80677a24ae Alexey Dobriyan 2020-01-30 292 elf_info +=3D 2; ^1da177e4c3f415 Linus Torvalds 2005-04-16 293 = 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 294 ei_index =3D elf_info -= (elf_addr_t *)mm->saved_auxv; ^1da177e4c3f415 Linus Torvalds 2005-04-16 295 sp =3D STACK_ADD(p, ei_= index); ^1da177e4c3f415 Linus Torvalds 2005-04-16 296 = d20894a23708c2a Andi Kleen 2008-02-08 297 items =3D (argc + 1) + = (envc + 1) + 1; ^1da177e4c3f415 Linus Torvalds 2005-04-16 298 bprm->p =3D STACK_ROUND= (sp, items); ^1da177e4c3f415 Linus Torvalds 2005-04-16 299 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 300 /* Point sp at the lowe= st address on the stack */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 301 #ifdef CONFIG_STACK_GROW= SUP ^1da177e4c3f415 Linus Torvalds 2005-04-16 302 sp =3D (elf_addr_t __us= er *)bprm->p - items - ei_index; ^1da177e4c3f415 Linus Torvalds 2005-04-16 303 bprm->exec =3D (unsigne= d long)sp; /* XXX: PARISC HACK */ ^1da177e4c3f415 Linus Torvalds 2005-04-16 304 #else ^1da177e4c3f415 Linus Torvalds 2005-04-16 305 sp =3D (elf_addr_t __us= er *)bprm->p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 306 #endif ^1da177e4c3f415 Linus Torvalds 2005-04-16 307 = b6a2fea39318e43 Ollie Wild 2007-07-19 308 = b6a2fea39318e43 Ollie Wild 2007-07-19 309 /* b6a2fea39318e43 Ollie Wild 2007-07-19 310 * Grow the stack manua= lly; some architectures have a limit on how b6a2fea39318e43 Ollie Wild 2007-07-19 311 * far ahead a user-spa= ce access may be in order to grow the stack. b6a2fea39318e43 Ollie Wild 2007-07-19 312 */ b2767d97f5ff758 Jann Horn 2020-10-17 313 if (mmap_read_lock_kill= able(mm)) b2767d97f5ff758 Jann Horn 2020-10-17 314 return -EINTR; 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 315 vma =3D find_extend_vma= (mm, bprm->p); b2767d97f5ff758 Jann Horn 2020-10-17 316 mmap_read_unlock(mm); b6a2fea39318e43 Ollie Wild 2007-07-19 317 if (!vma) b6a2fea39318e43 Ollie Wild 2007-07-19 318 return -EFAULT; b6a2fea39318e43 Ollie Wild 2007-07-19 319 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 320 /* Now, let's put argc = (and argv, envp if appropriate) on the stack */ 646e84deb4496e2 Al Viro 2020-02-19 321 if (put_user(argc, sp++= )) ^1da177e4c3f415 Linus Torvalds 2005-04-16 322 return -EFAULT; ^1da177e4c3f415 Linus Torvalds 2005-04-16 323 = 67c6777a5d331dd Kees Cook 2017-07-10 324 /* Populate list of arg= v pointers back to argv strings. */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 325 p =3D mm->arg_end =3D m= m->arg_start; ^1da177e4c3f415 Linus Torvalds 2005-04-16 326 while (argc-- > 0) { ^1da177e4c3f415 Linus Torvalds 2005-04-16 327 size_t len; 646e84deb4496e2 Al Viro 2020-02-19 328 if (put_user((elf_addr= _t)p, sp++)) 841d5fb7c75260f Heiko Carstens 2006-12-06 329 return -EFAULT; b6a2fea39318e43 Ollie Wild 2007-07-19 330 len =3D strnlen_user((= void __user *)p, MAX_ARG_STRLEN); b6a2fea39318e43 Ollie Wild 2007-07-19 331 if (!len || len > MAX_= ARG_STRLEN) 23c4971e3d97de4 WANG Cong 2008-05-08 332 return -EINVAL; ^1da177e4c3f415 Linus Torvalds 2005-04-16 333 p +=3D len; ^1da177e4c3f415 Linus Torvalds 2005-04-16 334 } 646e84deb4496e2 Al Viro 2020-02-19 335 if (put_user(0, sp++)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 336 return -EFAULT; 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 337 mm->arg_end =3D p; 67c6777a5d331dd Kees Cook 2017-07-10 338 = 67c6777a5d331dd Kees Cook 2017-07-10 339 /* Populate list of env= p pointers back to envp strings. */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 340 mm->env_end =3D mm->env= _start =3D p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 341 while (envc-- > 0) { ^1da177e4c3f415 Linus Torvalds 2005-04-16 342 size_t len; 646e84deb4496e2 Al Viro 2020-02-19 343 if (put_user((elf_addr= _t)p, sp++)) 841d5fb7c75260f Heiko Carstens 2006-12-06 344 return -EFAULT; b6a2fea39318e43 Ollie Wild 2007-07-19 345 len =3D strnlen_user((= void __user *)p, MAX_ARG_STRLEN); b6a2fea39318e43 Ollie Wild 2007-07-19 346 if (!len || len > MAX_= ARG_STRLEN) 23c4971e3d97de4 WANG Cong 2008-05-08 347 return -EINVAL; ^1da177e4c3f415 Linus Torvalds 2005-04-16 348 p +=3D len; ^1da177e4c3f415 Linus Torvalds 2005-04-16 349 } 646e84deb4496e2 Al Viro 2020-02-19 350 if (put_user(0, sp++)) ^1da177e4c3f415 Linus Torvalds 2005-04-16 351 return -EFAULT; 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 352 mm->env_end =3D p; ^1da177e4c3f415 Linus Torvalds 2005-04-16 353 = ^1da177e4c3f415 Linus Torvalds 2005-04-16 354 /* Put the elf_info on = the stack in the right place. */ 03c6d723eeac2d7 Alexey Dobriyan 2020-01-30 355 if (copy_to_user(sp, mm= ->saved_auxv, ei_index * sizeof(elf_addr_t))) ^1da177e4c3f415 Linus Torvalds 2005-04-16 356 return -EFAULT; ^1da177e4c3f415 Linus Torvalds 2005-04-16 357 return 0; ^1da177e4c3f415 Linus Torvalds 2005-04-16 358 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 359 = :::::: The code at line 254 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds :::::: CC: Linus Torvalds --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============4833402872715218861== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 --===============4833402872715218861==--