Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2503472pxj; Mon, 10 May 2021 04:42:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxheCovJp8dEi4fNpUCM+axuiv4SHkjPLo7whV5lKfl6obgJ5F836fUKcantJJwG1OHQ2cQ X-Received: by 2002:a17:907:7243:: with SMTP id ds3mr24722250ejc.100.1620646933887; Mon, 10 May 2021 04:42:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620646933; cv=none; d=google.com; s=arc-20160816; b=QXl8JM4VBqgKBAQxdujaE98Ofyd5B+i2Cjin4M8k74PQNprB4fx3Z0ETRPLGU9T9Oo tTt6NK9X61HlQzzelE4m6vDX1rRxMVMwZtDccEPEhvqN9L0Hw7YC0UufvHPdzBRJaz+C ZXNtL6MRaSjw4z8GPalCrfCHhsPp/W7Q0Y3Nmv6otuXGbOKo6Cc3zJGHQaQk6fGU0UMD 1e+wVjKhObB6W4MiPY4u/wxcO4e159NNby2jMRA+3x+FXEXayqP4k9xC+bZfI7o36Mea 1xNWML/Q2v5La/XS955oqji3ZuTcJVlxj6cDwS00/s30c36sHIzRHYdFUopMeAzhy3In albw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=DXlnq0aWud/fnMo/2wTp+6EzVkLdA2p0NG5ewyC66vo=; b=AmQcNcX5oMytgmx42DFfbJ/Uz8rj29d6M3YyZf4Cy/PYL7sGL9jY9Ad7ZNN8Pvw8Vg teJTnP4QGYGm7zdODCIt06cri0pfyrDEIXXt4prn7eDqvzMwC/gOakgbN4LuH8Kx2Vtk is92OEVQ48p0QRj++OvkVmWhctN1UaYhkhkWxQKdNNB3alYTgfmYAXZlpctkkY7K33cQ Bi8Nhkhpuw4uiJaWOXH7YCz3J+oZK6NrHnH3hUjkg4fxqX52GJkzYDOe6w+qpHhPT7ja pK0438ZOFn472SCt10GkTfHcq7mhhYrkKqXOEOrk1+8jSR0Z0kVxBDhAnqDD0yiRMccM 4OYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=fOcSDpZI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y11si12294439edv.309.2021.05.10.04.41.50; Mon, 10 May 2021 04:42:13 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=fOcSDpZI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240881AbhEJLgz (ORCPT + 99 others); Mon, 10 May 2021 07:36:55 -0400 Received: from mail.kernel.org ([198.145.29.99]:42240 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232344AbhEJKxd (ORCPT ); Mon, 10 May 2021 06:53:33 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id B36ED61288; Mon, 10 May 2021 10:41:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620643290; bh=6aDdcVRD5XDeRzPu5cDpy+CeTozswdh322xviITHbFE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fOcSDpZIURV6OHS7wc60HVYHfGaKdROWohyMmAzBrfaZ6ykLtBmyepZZBUybs0Ows pqUNLU1mOwPFgAT6Zmko6wMxxejCzsu2yHekoiZU78EHYL3FBZCkcXBusVOWgDMyZC i1JkEkRcoKZNEvMX6yHMl8N/YzR4tTMV46EBJw8k= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Arnd Bergmann , Christian Brauner , James Morris , Andrey Zhizhikin Subject: [PATCH 5.10 255/299] security: commoncap: fix -Wstringop-overread warning Date: Mon, 10 May 2021 12:20:52 +0200 Message-Id: <20210510102013.371437536@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210510102004.821838356@linuxfoundation.org> References: <20210510102004.821838356@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Arnd Bergmann commit 82e5d8cc768b0c7b03c551a9ab1f8f3f68d5f83f upstream. gcc-11 introdces a harmless warning for cap_inode_getsecurity: security/commoncap.c: In function ‘cap_inode_getsecurity’: security/commoncap.c:440:33: error: ‘memcpy’ reading 16 bytes from a region of size 0 [-Werror=stringop-overread] 440 | memcpy(&nscap->data, &cap->data, sizeof(__le32) * 2 * VFS_CAP_U32); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The problem here is that tmpbuf is initialized to NULL, so gcc assumes it is not accessible unless it gets set by vfs_getxattr_alloc(). This is a legitimate warning as far as I can tell, but the code is correct since it correctly handles the error when that function fails. Add a separate NULL check to tell gcc about it as well. Signed-off-by: Arnd Bergmann Acked-by: Christian Brauner Signed-off-by: James Morris Cc: Andrey Zhizhikin Signed-off-by: Greg Kroah-Hartman --- security/commoncap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/security/commoncap.c +++ b/security/commoncap.c @@ -391,7 +391,7 @@ int cap_inode_getsecurity(struct inode * &tmpbuf, size, GFP_NOFS); dput(dentry); - if (ret < 0) + if (ret < 0 || !tmpbuf) return ret; fs_ns = inode->i_sb->s_user_ns;