Received: by 2002:ac0:aa62:0:0:0:0:0 with SMTP id w31-v6csp2055640ima; Mon, 22 Oct 2018 03:32:50 -0700 (PDT) X-Google-Smtp-Source: ACcGV61MRS/xeifcB79H3lzaL68f3enC3BVb+ylHk0yBZcgk0NWVF0yN0aIN2C5UenPww1Tfgq6u X-Received: by 2002:a62:6414:: with SMTP id y20-v6mr45161728pfb.213.1540204370757; Mon, 22 Oct 2018 03:32:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1540204370; cv=none; d=google.com; s=arc-20160816; b=T3u4jteaWhrdXWVX1d4WgJN/4zCzYrsaISMXcbbQsXNMT5G9TKWQ1CMs0XTH0YdhTW 4aeZY1ttKMCX91TER5vhGlO+hEl35Ooh7LFpGW+SP662lJh1svklOOqzNAjf9ZFhOsgS jei1iXbDdw3R1ImPTgLa4GQds7Nldy0WxxBh4eVq67CgyXDNKqvSFDeo514UvpDc6o80 2BBf08dq5uBlY1IJWGrZzhPrq7f4GV2SB72t3zPR12St9rw9DWWLOXb5Ypiodjh9bYni rnonpJXwvHp41+b4pD303JfVTbdILC4d1NJqYacl7/F019ipUHQPYRY2yOX2kKDP3GzK +1Fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=WBDt7ATtnemw4hAlr7IxXxJeCvTYWg5allddh1RhHQY=; b=FzbPv8f/1knfRz6LNgRZk0VmpEaZ+VZouv0WOqhr4FZwHhudCRECT5hrvh4BcoTxgp 0pDhEIv+lyco+Gt/bsFmVhbavvKfDq0owWifh/UI5li23pDIc8FAtUD5fAiLyU9hJ9I+ iQGtwEkxZyEU5mxn1Y03cwGX7GUKgR/ls+/poeqWbSrBZRJqtQcevGd9jD901xUqYRAm 1Sm9SXFw64EyPULqDABW0barbdWDTk2Z0n7g75TGsx3kwGd9UPfF81AkuIKC4K9f1Hqy AkqavBA1DrfdkcTHGg2zXFMJ7tVc0TVuOspSom+s6JfSKI+rLjd30x0U1KJiuNY8aCMu 4oMw== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v6-v6si32732778plo.134.2018.10.22.03.32.35; Mon, 22 Oct 2018 03:32:50 -0700 (PDT) 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728561AbeJVSsU (ORCPT + 99 others); Mon, 22 Oct 2018 14:48:20 -0400 Received: from mail-wm1-f65.google.com ([209.85.128.65]:40909 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727797AbeJVSsU (ORCPT ); Mon, 22 Oct 2018 14:48:20 -0400 Received: by mail-wm1-f65.google.com with SMTP id z204-v6so9783089wmc.5 for ; Mon, 22 Oct 2018 03:30:21 -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:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=WBDt7ATtnemw4hAlr7IxXxJeCvTYWg5allddh1RhHQY=; b=tCTU/it86wLWD5GKthAY90ev9ZenjYi0xtpsMPCyhk06vMnv31RpeIDyRNwj7PIKeJ Ew5GoaUEvQ3tJ6erl/pomPGEsWSaNxl781vAk5ZK9AcV77C0+fzH7pQWVcX0mCM1/oP3 0fMU9GhGJPsk8b/Sitcq4P+TozRYaxdlvZ7iyLgJVe0yJp21XJgPUG9oAd0gWJ1W97m5 K/X/7WUun9fzmZsx5X7Ym/H+AmSW4grOTKQWXWHTx+DiOWkM979sacz3ky7mFrASODm0 jFL7W2DbZhQa+lIB66pLgaxStNzedTdjZENsGtXI9NymbeaKhdrlkgUKlI57/a7GgQhj bn3Q== X-Gm-Message-State: ABuFfoiojqHMjBUEObsbbxDG1KT1yLwZ3rj5FGFtoq8RFfoCWxjbo1nZ qRfW5a8j6MUPEzlRzjClSQJfl0KJ3vk= X-Received: by 2002:a1c:dc42:: with SMTP id t63-v6mr15323255wmg.17.1540204220893; Mon, 22 Oct 2018 03:30:20 -0700 (PDT) Received: from [172.22.36.222] ([167.98.65.38]) by smtp.gmail.com with ESMTPSA id e14-v6sm26326341wrs.69.2018.10.22.03.30.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 22 Oct 2018 03:30:19 -0700 (PDT) Subject: Re: [PATCH] ARM: kprobes: Fix false positive with FORTIFY_SOURCE To: Kees Cook , Russell King Cc: William Cohen , linux-kernel@vger.kernel.org, Masami Hiramatsu , linux-arm-kernel@lists.infradead.org References: <20181022093023.GA8920@beast> From: Laura Abbott Message-ID: Date: Mon, 22 Oct 2018 03:30:19 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20181022093023.GA8920@beast> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10/22/2018 02:30 AM, Kees Cook wrote: > The arm compiler internally interprets an inline assembly label > as an unsigned long value, not a pointer. As a result, under > CONFIG_FORTIFY_SOURCE, the size of the array pointed to by an address > of a label is 4 bytes, which was tripping the runtime checks. Instead, > we can just cast the label (as done with the size calculations earlier) > to avoid the problem. > Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1639397 Acked-by: Laura Abbott > Reported-by: William Cohen > Fixes: 6974f0c4555e ("include/linux/string.h: add the option of fortified string.h functions") > Cc: stable@vger.kernel.org > Signed-off-by: Kees Cook > --- > arch/arm/probes/kprobes/opt-arm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/probes/kprobes/opt-arm.c b/arch/arm/probes/kprobes/opt-arm.c > index b2aa9b32bff2..2c118a6ab358 100644 > --- a/arch/arm/probes/kprobes/opt-arm.c > +++ b/arch/arm/probes/kprobes/opt-arm.c > @@ -247,7 +247,7 @@ int arch_prepare_optimized_kprobe(struct optimized_kprobe *op, struct kprobe *or > } > > /* Copy arch-dep-instance from template. */ > - memcpy(code, &optprobe_template_entry, > + memcpy(code, (unsigned char *)optprobe_template_entry, > TMPL_END_IDX * sizeof(kprobe_opcode_t)); > > /* Adjust buffer according to instruction. */ >