Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3219299imu; Fri, 18 Jan 2019 06:51:16 -0800 (PST) X-Google-Smtp-Source: ALg8bN5K/Wquo8iDZxWnO3o1ezUKlJR7FWP08OtYtSOWzNNFDzIiGZtCzStyzi+JpgwN+LTe/X8Z X-Received: by 2002:a62:64d7:: with SMTP id y206mr19685133pfb.84.1547823076093; Fri, 18 Jan 2019 06:51:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1547823076; cv=none; d=google.com; s=arc-20160816; b=M+LaJZovZB9Ls21Ap+8ATrQHQkFv2N3YFOlTco/kebL+pGFu0wdN9tRQw16Zj9UySq j3LzWH3zH6vnMZ0UAw9zMvsUrmzivHRUE+CQsNjyEfd+xgqIDE4jQK7fG8QmHnys1lBX DD4/HrugLHj1ybgD95Xxb5T8bUV0Jf1ND/USX/3EH3kUA0//IYLWtCf7+h6dZjZcVv3O yMcQkiKOIwzX3hZAuEXpBqEjSeIqxS01yuzv5hxLBkPJBI2jAHdzdZYg6DbDv22OT6yC 9txoAbfYNx2H/m6BgmdhVtjIn7dSr1e751jKd6U8eKlzCDEDeXuJFc3YUsUzMYuvVePi DKag== 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:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=UXKzSzeudUuPwHtY75HWLbr6PVGsuWm/q7TiL7pl4/U=; b=DuLRVP1aanfXpE7DZSoyIwLMJrPHmWoeFNVEWhk7u0QHi6Fbp2JLcnMqmfj44YGZWV MWTeseq1qLu5UncwA6ICNMBhC3dcV9UXjjN3++rBusUnFBeZpFAlgphVgyK2FQw/PxoB LdFZgDtccML9QPhocbU920verIBMd+Vqu7uXCBlQzsHsVV6n/lb1JjJD7qpaNMZdYx0S vfJs62Mitej46LOLMD+AyCVlUyAbMjgtgXsUgu+J6ichTeW9bpo0AUCvo1ptkrSe8CW0 8HQDV9cgszJ4OamiGniAlZZ6Z/Ow6/xEBiH7l7GaRWAsrN9E+rY6uwjK9Ho8+b3gUzb5 KoxA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=t540qs20; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f63si4635474pgc.473.2019.01.18.06.51.00; Fri, 18 Jan 2019 06:51:16 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=t540qs20; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727584AbfAROtK (ORCPT + 99 others); Fri, 18 Jan 2019 09:49:10 -0500 Received: from mail-ed1-f67.google.com ([209.85.208.67]:41315 "EHLO mail-ed1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727177AbfAROtK (ORCPT ); Fri, 18 Jan 2019 09:49:10 -0500 Received: by mail-ed1-f67.google.com with SMTP id a20so11301215edc.8 for ; Fri, 18 Jan 2019 06:49:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=UXKzSzeudUuPwHtY75HWLbr6PVGsuWm/q7TiL7pl4/U=; b=t540qs20UAxmRFAnPkoKbyM6MTzYgnthaL8L13yCt/qJSx6cybbxmnBxWHE6CidlsD 87t7bVNULUacKxeuCeoD3gXsQyQez6WN1sQ6yT6t4r4Pyz2SzMwo+1JlyKGIiTQOz0Uf jWCPoQnBsuLCWw0X9VEG15NwljINtTw6nwb5WvykufwoFhc/w3jlEsNHmqBB3JtksDVr Kl8u4lXVwK2qxYysTSMmk3Ei2uZnRnmSGOKvxZVI+2P4x5CKyMUeGhNLO/gYvVLRSsXZ 1RQ0wZsKuG1fXVn3rC35luzli+G+Hsi5bFBUCbBwv8qsxOYOHDKcfh7gRmaCK18uRxzI YadQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=UXKzSzeudUuPwHtY75HWLbr6PVGsuWm/q7TiL7pl4/U=; b=DtFd9Tpi+Vk3zIHqfrhTkOA+8rAECgv6cECBKfSBNQAmp2rMRRJbRzvIf6AO3yRuaN sCC1VQ6uClxoHup52MqG3xUBWxePBigqjnuh3vnnOyD0EZY2BA2AReHrMXbpI+IMPyPW 5cNlMGa4hcDTLGOhy3+8ILFmk+wu+4HDGRljq3xm9Caja8tC75uogorxu6wYURSy1Fa/ 5GalnB/IbyBHIqOKbEF7YtRiFcxZhMlVfo1gjt6i1bz7Y3adN9jc9TUcm3n5QJVgrvPA 3GpZt2mDgpIEIfb28+6wAFcDXAtDX0WogKUeCWTbSy8TKiCnIbMfmKgz/LVhB60zS7jF QtIA== X-Gm-Message-State: AJcUukfBJUkmxentjCcqcg0EHTllp2rZEFz5+6WCmsH8RfJepoHQR4j2 6KORTLUbgJCjARriLB3/ID5vVMIC X-Received: by 2002:a17:906:1001:: with SMTP id 1-v6mr14307823ejm.91.1547822948240; Fri, 18 Jan 2019 06:49:08 -0800 (PST) Received: from localhost.localdomain ([2a02:a03f:40fa:9f00:74c6:12d0:25bf:3ed0]) by smtp.gmail.com with ESMTPSA id u33sm7149757edm.88.2019.01.18.06.49.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 18 Jan 2019 06:49:07 -0800 (PST) From: Luc Van Oostenryck To: linux-kernel@vger.kernel.org Cc: Luc Van Oostenryck , Akash Goel , Jens Axboe , Andrew Morton , Thomas Gleixner Subject: [PATCH] relay: fix percpu annotation in struct rchan Date: Fri, 18 Jan 2019 15:49:02 +0100 Message-Id: <20190118144902.79065-1-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.20.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The percpu member of this structure is declared as: struct ... ** __percpu member; So its type is: __percpu pointer to pointer to struct ... But looking at how it's used, its type should be: pointer to __percpu pointer to struct ... and it should thus be declared as: struct ... * __percpu *member; So fix the placement of '__percpu' in the definition of this structures. This silents a few Sparse's warnings like: warning: incorrect type in initializer (different address spaces) expected void const [noderef] *__vpp_verify got struct sched_domain ** CC: Akash Goel CC: Jens Axboe CC: Andrew Morton CC: Thomas Gleixner CC: linux-kernel@vger.kernel.org Fixes: 017c59c04 ("relay: Use per CPU constructs for the relay channel buffer pointers") Signed-off-by: Luc Van Oostenryck --- include/linux/relay.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/relay.h b/include/linux/relay.h index e1bdf01a8..c759f96e3 100644 --- a/include/linux/relay.h +++ b/include/linux/relay.h @@ -66,7 +66,7 @@ struct rchan struct kref kref; /* channel refcount */ void *private_data; /* for user-defined data */ size_t last_toobig; /* tried to log event > subbuf size */ - struct rchan_buf ** __percpu buf; /* per-cpu channel buffers */ + struct rchan_buf * __percpu *buf; /* per-cpu channel buffers */ int is_global; /* One global buffer ? */ struct list_head list; /* for channel list */ struct dentry *parent; /* parent dentry passed to open */ -- 2.20.0