Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2982433imu; Sun, 9 Dec 2018 14:14:48 -0800 (PST) X-Google-Smtp-Source: AFSGD/XCTsxqcZeB5gmsR0EjoMU18XyYnGZNXMf80DUD02caXtv+tuzkWgEUuuY0Zm8++g3mooIe X-Received: by 2002:a62:399b:: with SMTP id u27mr10470281pfj.181.1544393688794; Sun, 09 Dec 2018 14:14:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544393688; cv=none; d=google.com; s=arc-20160816; b=FNhzuDYZSm7H8Oy2MObQPRJOlHQC767uwW1mYw+SNgDmXheSx1xOeF8gUsXOsqD6a5 h2ZlJ5sz7njkG1gKtR8QMMGtYeSE9yq+dZO3xg03AUuQb9fBUApIolLi8LHQbFdItD0y ZZiyb/cqEZ5gJ+WX6I83MXha6lby/MDQWoW8n8n045DJPv3vNd32/30P9Ult51umOjFd g4lmkzZvMfawrYDzxuQuyx4OasymC+zkKJrWRuZzZqLZnmEXQ58s/zXjHE9igS7BpMOP L0WX+Qq8mTObnt3xPmaq53WAc+uA3qk05OeeWdi4+YGR+1iW5fi0+CKvPZcRxbHquzML luIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:subject:message-id:date:cc:to :from:mime-version:content-transfer-encoding:content-disposition; bh=k06fnvfShiP9Gz6It0VraQ1FGSbXcuD7loJcaL8gz08=; b=LFMnjMGrya8J7h299YoK/bBWF7HJPOKcuhoCGTHwW/bURGlDDChfCPoxsqdpV3/+k7 xfTEVDFA6zaMiSrj0pF8v0RqMMpRrM1Xst9TXVs6r9oJCKstP0QeBxIZtdPSxUmH4N6E 5KDdpg9guSJpvLlAwh+AKF9/1UKxD/4AhO//FcHFK9yetegPV/Dxx8VWrKtM4/zsR69p KSt0IMRn7KsO83/gL38OGfh6VUYTkgjqdnBTf+6rWIBftkv3wzOuTG1uE8tk+x5QC95+ 1qWwgyc5rkfNtjUB09FuzqTyC+89ROrDdrKYB+FLmv7ZMyAyNWmEsLrgHjo5f8w6lezm nA+A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q16si6046272pfh.138.2018.12.09.14.14.33; Sun, 09 Dec 2018 14:14:48 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728128AbeLIWNU (ORCPT + 99 others); Sun, 9 Dec 2018 17:13:20 -0500 Received: from shadbolt.e.decadent.org.uk ([88.96.1.126]:37896 "EHLO shadbolt.e.decadent.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728318AbeLIWNS (ORCPT ); Sun, 9 Dec 2018 17:13:18 -0500 Received: from pub.yeoldevic.com ([81.174.156.145] helo=deadeye) by shadbolt.decadent.org.uk with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gW73O-0002ia-Iv; Sun, 09 Dec 2018 21:55:58 +0000 Received: from ben by deadeye with local (Exim 4.91) (envelope-from ) id 1gW72Z-0003Fi-KZ; Sun, 09 Dec 2018 21:55:07 +0000 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 From: Ben Hutchings To: linux-kernel@vger.kernel.org, stable@vger.kernel.org CC: akpm@linux-foundation.org, linux-mips@linux-mips.org, "James Hogan" , "Ralf Baechle" , "Alexander Viro" , "Paul Burton" , linux-fsdevel@vger.kernel.org, "Maciej W. Rozycki" Date: Sun, 09 Dec 2018 21:50:33 +0000 Message-ID: X-Mailer: LinuxStableQueue (scripts by bwh) X-Patchwork-Hint: ignore Subject: [PATCH 3.16 045/328] binfmt_elf: Respect error return from `regset->active' In-Reply-To: X-SA-Exim-Connect-IP: 81.174.156.145 X-SA-Exim-Mail-From: ben@decadent.org.uk X-SA-Exim-Scanned: No (on shadbolt.decadent.org.uk); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 3.16.62-rc1 review patch. If anyone has any objections, please let me know. ------------------ From: "Maciej W. Rozycki" commit 2f819db565e82e5f73cd42b39925098986693378 upstream. The regset API documented in defines -ENODEV as the result of the `->active' handler to be used where the feature requested is not available on the hardware found. However code handling core file note generation in `fill_thread_core_info' interpretes any non-zero result from the `->active' handler as the regset requested being active. Consequently processing continues (and hopefully gracefully fails later on) rather than being abandoned right away for the regset requested. Fix the problem then by making the code proceed only if a positive result is returned from the `->active' handler. Signed-off-by: Maciej W. Rozycki Signed-off-by: Paul Burton Fixes: 4206d3aa1978 ("elf core dump: notes user_regset") Patchwork: https://patchwork.linux-mips.org/patch/19332/ Cc: Alexander Viro Cc: James Hogan Cc: Ralf Baechle Cc: linux-fsdevel@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Ben Hutchings --- fs/binfmt_elf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -1571,7 +1571,7 @@ static int fill_thread_core_info(struct const struct user_regset *regset = &view->regsets[i]; do_thread_regset_writeback(t->task, regset); if (regset->core_note_type && regset->get && - (!regset->active || regset->active(t->task, regset))) { + (!regset->active || regset->active(t->task, regset) > 0)) { int ret; size_t size = regset->n * regset->size; void *data = kmalloc(size, GFP_KERNEL);