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=-13.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, 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 AA62DC433ED for ; Wed, 12 May 2021 13:14:57 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 12E34613CA for ; Wed, 12 May 2021 13:14:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 12E34613CA Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 7ECD76B006E; Wed, 12 May 2021 09:14:56 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7757B6B0070; Wed, 12 May 2021 09:14:56 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5C8F66B0071; Wed, 12 May 2021 09:14:56 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0024.hostedemail.com [216.40.44.24]) by kanga.kvack.org (Postfix) with ESMTP id 3A5BF6B006E for ; Wed, 12 May 2021 09:14:56 -0400 (EDT) Received: from smtpin32.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id F3142181AF5CC for ; Wed, 12 May 2021 13:14:55 +0000 (UTC) X-FDA: 78132624150.32.DF25FBA Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf28.hostedemail.com (Postfix) with ESMTP id 072472000264 for ; Wed, 12 May 2021 13:14:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1620825295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8Q6aLJ8ypbeg54GoosMwtGP4SQgMN6B1sgT7wpoeVNA=; b=SM/FEfdYZUvSOR4SsNw8M6SCNkLuIj20X6ZOGkPLvZyWymcNTIk7QoGJ03KmxwnBsRrskY +jlm4nnGTXr86QzgSUgjeZADUZ4QXPspEnV8MmHB93qvm36TRUphm4XN2JVgMwO/TYpTlS lC1XHG3q/aIyS4em9L47UBnw7HWljoo= Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-396-RdGsYvZDPcyb151sOcys6w-1; Wed, 12 May 2021 09:14:53 -0400 X-MC-Unique: RdGsYvZDPcyb151sOcys6w-1 Received: by mail-wr1-f69.google.com with SMTP id 1-20020adf93810000b029010fd5ac4ed7so565360wrp.15 for ; Wed, 12 May 2021 06:14:53 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=8Q6aLJ8ypbeg54GoosMwtGP4SQgMN6B1sgT7wpoeVNA=; b=HDvrSQmAEARb6C5NLgWCOJ8QD0/lPkS4yfCNod4LczlsftjNCVobJcAt18vPOo8i6V oZTlqJXXNo1LtTCiXrbqGxpMdyWPfGQ6vxZau7sn6qQBdy6BkJCIc+w0bJvEAE9JZMzf h2mHI0/6pO2TOySNoo7NB7WbCfCAW5cRwHQgeb8QhmO1g6VNYfT7ZdQagCJcXTpLoye+ nqd7L1ybK/eJZHTDGVRl44OTioKuaDDTQ4d8El+VCqQxqjgmCXq0cydb1KXNblpf/YLl kRKKvQl9vT0Zghu0SJTuMZVNUMjuKLs29RCiH4v4wSReNF8jwD62RWYlSsQvZD5xYLAR RnwA== X-Gm-Message-State: AOAM530kSa+sqNHRXq5HN7w+sZXXCSBU8Psyp8pPkNF2jBzEgIqQbNue d5ZLFU0CvMpv3wGUg/g85+tjmfJ5VVaQZHGfqEECcDUuw6Mo/IGnPXqevzoJCangcx5qHfz6QLE Mmpad5iTU20c= X-Received: by 2002:adf:ef4d:: with SMTP id c13mr44306287wrp.277.1620825292203; Wed, 12 May 2021 06:14:52 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwMUyfi/OxnFIIFQ5PsM8BYVTBrhpbBX+Yb3Qrju7DRKedaKkFmqCpYezBFYj6ZKfxl4TzurQ== X-Received: by 2002:adf:ef4d:: with SMTP id c13mr44306264wrp.277.1620825291966; Wed, 12 May 2021 06:14:51 -0700 (PDT) Received: from [192.168.3.132] (p5b0c65ab.dip0.t-ipconnect.de. [91.12.101.171]) by smtp.gmail.com with ESMTPSA id l12sm35356278wrq.36.2021.05.12.06.14.51 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 12 May 2021 06:14:51 -0700 (PDT) Subject: Re: [linux-next:master 2036/2633] fs/binfmt_aout.c:225:43: error: expected ')' before ';' token To: kernel test robot Cc: kbuild-all@lists.01.org, Linux Memory Management List , Kees Cook , Andrew Morton References: <202105122057.kahGonCV-lkp@intel.com> From: David Hildenbrand Organization: Red Hat Message-ID: Date: Wed, 12 May 2021 15:14:51 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <202105122057.kahGonCV-lkp@intel.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=windows-1252; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 072472000264 Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="SM/FEfdY"; spf=none (imf28.hostedemail.com: domain of david@redhat.com has no SPF policy when checking 170.10.133.124) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=none) header.from=redhat.com X-Rspamd-Server: rspam04 X-Stat-Signature: usaqhn8re54hzksste7tuen17j8kagjn Received-SPF: none (redhat.com>: No applicable sender policy available) receiver=imf28; identity=mailfrom; envelope-from=""; helo=us-smtp-delivery-124.mimecast.com; client-ip=170.10.133.124 X-HE-DKIM-Result: pass/pass X-HE-Tag: 1620825293-413716 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On 12.05.21 14:50, kernel test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master > head: ec85c95b0c90a17413901b018e8ade7b9eae7cad > commit: 953f99327748a7ed47f6fdce8ec2df85e53c672c [2036/2633] binfmt: remove in-tree usage of MAP_EXECUTABLE > config: alpha-randconfig-r023-20210512 (attached as .config) > compiler: alpha-linux-gcc (GCC) 9.3.0 > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=953f99327748a7ed47f6fdce8ec2df85e53c672c > git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git > git fetch --no-tags linux-next master > git checkout 953f99327748a7ed47f6fdce8ec2df85e53c672c > # save the attached .config to linux build tree > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=alpha > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot > > All errors (new ones prefixed by >>): > > fs/binfmt_aout.c: In function 'load_aout_binary': >>> fs/binfmt_aout.c:225:43: error: expected ')' before ';' token > 225 | MAP_FIXED | MAP_PRIVATE | MAP_DENYWRITE; > | ^ >>> fs/binfmt_aout.c:223:11: error: too few arguments to function 'vm_mmap' > 223 | error = vm_mmap(bprm->file, N_TXTADDR(ex), ex.a_text, > | ^~~~~~~ > In file included from fs/binfmt_aout.c:12: > include/linux/mm.h:2631:35: note: declared here > 2631 | extern unsigned long __must_check vm_mmap(struct file *, unsigned long, > | ^~~~~~~ > fs/binfmt_aout.c:233:44: error: expected ')' before ';' token > 233 | MAP_FIXED | MAP_PRIVATE | MAP_DENYWRITE; > | ^ > fs/binfmt_aout.c:231:11: error: too few arguments to function 'vm_mmap' > 231 | error = vm_mmap(bprm->file, N_DATADDR(ex), ex.a_data, > | ^~~~~~~ > In file included from fs/binfmt_aout.c:12: > include/linux/mm.h:2631:35: note: declared here > 2631 | extern unsigned long __must_check vm_mmap(struct file *, unsigned long, > | ^~~~~~~ > > > vim +225 fs/binfmt_aout.c > > 111 > 112 /* > 113 * These are the functions used to load a.out style executables and shared > 114 * libraries. There is no binary dependent code anywhere else. > 115 */ > 116 > 117 static int load_aout_binary(struct linux_binprm * bprm) > 118 { > 119 struct pt_regs *regs = current_pt_regs(); > 120 struct exec ex; > 121 unsigned long error; > 122 unsigned long fd_offset; > 123 unsigned long rlim; > 124 int retval; > 125 > 126 ex = *((struct exec *) bprm->buf); /* exec-header */ > 127 if ((N_MAGIC(ex) != ZMAGIC && N_MAGIC(ex) != OMAGIC && > 128 N_MAGIC(ex) != QMAGIC && N_MAGIC(ex) != NMAGIC) || > 129 N_TRSIZE(ex) || N_DRSIZE(ex) || > 130 i_size_read(file_inode(bprm->file)) < ex.a_text+ex.a_data+N_SYMSIZE(ex)+N_TXTOFF(ex)) { > 131 return -ENOEXEC; > 132 } > 133 > 134 /* > 135 * Requires a mmap handler. This prevents people from using a.out > 136 * as part of an exploit attack against /proc-related vulnerabilities. > 137 */ > 138 if (!bprm->file->f_op->mmap) > 139 return -ENOEXEC; > 140 > 141 fd_offset = N_TXTOFF(ex); > 142 > 143 /* Check initial limits. This avoids letting people circumvent > 144 * size limits imposed on them by creating programs with large > 145 * arrays in the data or bss. > 146 */ > 147 rlim = rlimit(RLIMIT_DATA); > 148 if (rlim >= RLIM_INFINITY) > 149 rlim = ~0; > 150 if (ex.a_data + ex.a_bss > rlim) > 151 return -ENOMEM; > 152 > 153 /* Flush all traces of the currently running executable */ > 154 retval = begin_new_exec(bprm); > 155 if (retval) > 156 return retval; > 157 > 158 /* OK, This is the point of no return */ > 159 #ifdef __alpha__ > 160 SET_AOUT_PERSONALITY(bprm, ex); > 161 #else > 162 set_personality(PER_LINUX); > 163 #endif > 164 setup_new_exec(bprm); > 165 > 166 current->mm->end_code = ex.a_text + > 167 (current->mm->start_code = N_TXTADDR(ex)); > 168 current->mm->end_data = ex.a_data + > 169 (current->mm->start_data = N_DATADDR(ex)); > 170 current->mm->brk = ex.a_bss + > 171 (current->mm->start_brk = N_BSSADDR(ex)); > 172 > 173 retval = setup_arg_pages(bprm, STACK_TOP, EXSTACK_DEFAULT); > 174 if (retval < 0) > 175 return retval; > 176 > 177 > 178 if (N_MAGIC(ex) == OMAGIC) { > 179 unsigned long text_addr, map_size; > 180 loff_t pos; > 181 > 182 text_addr = N_TXTADDR(ex); > 183 > 184 #ifdef __alpha__ > 185 pos = fd_offset; > 186 map_size = ex.a_text+ex.a_data + PAGE_SIZE - 1; > 187 #else > 188 pos = 32; > 189 map_size = ex.a_text+ex.a_data; > 190 #endif > 191 error = vm_brk(text_addr & PAGE_MASK, map_size); > 192 if (error) > 193 return error; > 194 > 195 error = read_code(bprm->file, text_addr, pos, > 196 ex.a_text+ex.a_data); > 197 if ((signed long)error < 0) > 198 return error; > 199 } else { > 200 if ((ex.a_text & 0xfff || ex.a_data & 0xfff) && > 201 (N_MAGIC(ex) != NMAGIC) && printk_ratelimit()) > 202 { > 203 printk(KERN_NOTICE "executable not page aligned\n"); > 204 } > 205 > 206 if ((fd_offset & ~PAGE_MASK) != 0 && printk_ratelimit()) > 207 { > 208 printk(KERN_WARNING > 209 "fd_offset is not page aligned. Please convert program: %pD\n", > 210 bprm->file); > 211 } > 212 > 213 if (!bprm->file->f_op->mmap||((fd_offset & ~PAGE_MASK) != 0)) { > 214 error = vm_brk(N_TXTADDR(ex), ex.a_text+ex.a_data); > 215 if (error) > 216 return error; > 217 > 218 read_code(bprm->file, N_TXTADDR(ex), fd_offset, > 219 ex.a_text + ex.a_data); > 220 goto beyond_if; > 221 } > 222 > > 223 error = vm_mmap(bprm->file, N_TXTADDR(ex), ex.a_text, > 224 PROT_READ | PROT_EXEC, > > 225 MAP_FIXED | MAP_PRIVATE | MAP_DENYWRITE; > 226 fd_offset); > 227 > 228 if (error != N_TXTADDR(ex)) > 229 return error; > 230 > 231 error = vm_mmap(bprm->file, N_DATADDR(ex), ex.a_data, > 232 PROT_READ | PROT_WRITE | PROT_EXEC, > 233 MAP_FIXED | MAP_PRIVATE | MAP_DENYWRITE; > 234 fd_offset + ex.a_text); > 235 if (error != N_DATADDR(ex)) > 236 return error; > 237 } Fix should be simple (wasn't expecting this file only buils on alpha), asked Andrew in the original patch on how to best route the build fix https://lkml.kernel.org/r/49a8cb62-e26d-a351-937e-6fb62a6f4a2e@redhat.com -- Thanks, David / dhildenb