Skip to contentSkip to conversation

pohmelfs: fix atomic type spew

PATCH New Alan Cox 1 participant 2 messages Aug 19, 2009 Staging

lore
Share & tools
lore

Alan Cox

author
#0 lore raw

PATCH 1/2 pohmelfs: fix atomic type spew

atomic_long != atomic

---

 drivers/staging/pohmelfs/inode.c |    2 +-
 drivers/staging/pohmelfs/net.c   |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
drivers/staging/pohmelfs/inode.c +1 -1
index 7b60579..834edc5 100644
@@ -1865,7 +1865,7 @@ static int pohmelfs_fill_super(struct super_block *sb, void *data, int silent)
 	INIT_LIST_HEAD(&psb->crypto_active_list);
 
 	atomic_set(&psb->trans_gen, 1);
-	atomic_set(&psb->total_inodes, 0);
+	atomic_long_set(&psb->total_inodes, 0);
 
 	mutex_init(&psb->state_lock);
 	INIT_LIST_HEAD(&psb->state_list);
drivers/staging/pohmelfs/net.c +1 -1
index 5f312c9..bdaab69 100644
@@ -680,7 +680,7 @@ static int pohmelfs_root_cap_response(struct netfs_state *st)
 		printk(KERN_INFO "Mounting POHMELFS (%d) "
 			"with extended attributes support.\n", psb->idx);
 
-	if (atomic_read(&psb->total_inodes) <= 1)
+	if (atomic_long_read(&psb->total_inodes) <= 1)
 		atomic_long_set(&psb->total_inodes, cap->nr_files);
 
 	dprintk("%s: total: %llu, avail: %llu, flags: %llx, inodes: %llu.\n",
author
#1 lore raw

PATCH 2/2 pohmelfs: fix type errors

---

 drivers/staging/pohmelfs/config.c |    3 +--
 drivers/staging/pohmelfs/dir.c    |    2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)
drivers/staging/pohmelfs/config.c +1 -2
index a6eaa42..99ae1d9 100644
@@ -446,9 +446,8 @@ out_unlock:
 	return err;
 }
 
-static void pohmelfs_cn_callback(void *data)
+static void pohmelfs_cn_callback(struct cn_msg *msg)
 {
-	struct cn_msg *msg = data;
 	int err;
 
 	switch (msg->flags) {
drivers/staging/pohmelfs/dir.c +1 -1
index 4c58e22..4c63a4c 100644
@@ -412,7 +412,7 @@ static int pohmelfs_readdir(struct file *file, void *dirent, filldir_t filldir)
 				__func__, file->f_pos, pi->ino, n->data, n->len,
 				n->ino, n->mode, mode, file->f_pos, n->hash);
 
-		file->private_data = (void *)n->hash;
+		file->private_data = (void *)(unsigned long)n->hash;
 
 		len = n->len;
 		err = filldir(dirent, n->data, n->len, file->f_pos, n->ino, mode);