Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 003cb608 authored by Tejun Heo's avatar Tejun Heo
Browse files

percpu: add __percpu sparse annotations to fs



Add __percpu sparse annotations to fs.

These annotations are to make sparse consider percpu variables to be
in a different address space and warn if accessed without going
through percpu accessors.  This patch doesn't affect normal builds.

Signed-off-by: default avatarTejun Heo <tj@kernel.org>
Cc: "Theodore Ts'o" <tytso@mit.edu>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Alex Elder <aelder@sgi.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
parent 43cf38eb
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1014,7 +1014,7 @@ struct ext4_sb_info {
	atomic_t s_lock_busy;

	/* locality groups */
	struct ext4_locality_group *s_locality_groups;
	struct ext4_locality_group __percpu *s_locality_groups;

	/* for write statistics */
	unsigned long s_sectors_written_start;
+2 −2
Original line number Diff line number Diff line
@@ -57,12 +57,12 @@ static inline void nfs_add_fscache_stats(struct inode *inode,
}
#endif

static inline struct nfs_iostats *nfs_alloc_iostats(void)
static inline struct nfs_iostats __percpu *nfs_alloc_iostats(void)
{
	return alloc_percpu(struct nfs_iostats);
}

static inline void nfs_free_iostats(struct nfs_iostats *stats)
static inline void nfs_free_iostats(struct nfs_iostats __percpu *stats)
{
	if (stats != NULL)
		free_percpu(stats);
+1 −1
Original line number Diff line number Diff line
@@ -243,7 +243,7 @@ typedef struct xfs_mount {
	struct xfs_qmops	*m_qm_ops;	/* vector of XQM ops */
	atomic_t		m_active_trans;	/* number trans frozen */
#ifdef HAVE_PERCPU_SB
	xfs_icsb_cnts_t		*m_sb_cnts;	/* per-cpu superblock counters */
	xfs_icsb_cnts_t __percpu *m_sb_cnts;	/* per-cpu superblock counters */
	unsigned long		m_icsb_counters; /* disabled per-cpu counters */
	struct notifier_block	m_icsb_notifier; /* hotplug cpu notifier */
	struct mutex		m_icsb_mutex;	/* balancer sync lock */
+1 −1
Original line number Diff line number Diff line
@@ -66,7 +66,7 @@ struct vfsmount {
	int mnt_pinned;
	int mnt_ghosts;
#ifdef CONFIG_SMP
	int *mnt_writers;
	int __percpu *mnt_writers;
#else
	int mnt_writers;
#endif
+1 −1
Original line number Diff line number Diff line
@@ -105,7 +105,7 @@ struct nfs_server {
	struct rpc_clnt *	client;		/* RPC client handle */
	struct rpc_clnt *	client_acl;	/* ACL RPC client handle */
	struct nlm_host		*nlm_host;	/* NLM client handle */
	struct nfs_iostats *	io_stats;	/* I/O statistics */
	struct nfs_iostats __percpu *io_stats;	/* I/O statistics */
	struct backing_dev_info	backing_dev_info;
	atomic_long_t		writeback;	/* number of writeback pages */
	int			flags;		/* various flags */