sparse warnings: (new ones prefixed by >>)
The new Warning that this patch created is the same as the other 7 old
Warnings. It is all about how we have used the device:name.
I will fix the new Warning. Looks like we need to fix the older
Warning as well.
Thanks, Anand
fs/btrfs/volumes.c:402:31: sparse: sparse: incorrect type in
argument 1 (different address spaces) @@ expected struct rcu_string *str @@ got
struct rcu_string [noderef] __rcu *name @@
fs/btrfs/volumes.c:402:31: sparse: expected struct rcu_string *str
fs/btrfs/volumes.c:402:31: sparse: got struct rcu_string [noderef] __rcu *name
rcu_string_free(device->name);
>> fs/btrfs/volumes.c:549:35: sparse: sparse: incorrect type in
argument 1 (different address spaces) @@ expected char const *pathname @@ got char
[noderef] __rcu * @@
fs/btrfs/volumes.c:549:35: sparse: expected char const *pathname
fs/btrfs/volumes.c:549:35: sparse: got char [noderef] __rcu *
error = lookup_bdev(device->name->str, &dev_old);
fs/btrfs/volumes.c:643:43: sparse: sparse: incorrect type in
argument 1 (different address spaces) @@ expected char const *device_path @@ got
char [noderef] __rcu * @@
fs/btrfs/volumes.c:643:43: sparse: expected char const *device_path
fs/btrfs/volumes.c:643:43: sparse: got char [noderef] __rcu *
ret = btrfs_get_bdev_and_sb(device->name->str, flags, holder, 1,
&bdev, &disk_super);
fs/btrfs/volumes.c:904:50: sparse: sparse: incorrect type in
argument 1 (different address spaces) @@ expected char const *cs @@ got char
[noderef] __rcu * @@
fs/btrfs/volumes.c:904:50: sparse: expected char const *cs
fs/btrfs/volumes.c:904:50: sparse: got char [noderef] __rcu *
} else if (!device->name || strcmp(device->name->str, path)) {
fs/btrfs/volumes.c:984:39: sparse: sparse: incorrect type in
argument 1 (different address spaces) @@ expected struct rcu_string *str @@ got
struct rcu_string [noderef] __rcu *name @@
fs/btrfs/volumes.c:984:39: sparse: expected struct rcu_string *str
fs/btrfs/volumes.c:984:39: sparse: got struct rcu_string [noderef] __rcu *name
rcu_string_free(device->name);
fs/btrfs/volumes.c:1040:58: sparse: sparse: incorrect type in
argument 1 (different address spaces) @@ expected char const *src @@ got char
[noderef] __rcu * @@
fs/btrfs/volumes.c:1040:58: sparse: expected char const *src
fs/btrfs/volumes.c:1040:58: sparse: got char [noderef] __rcu *
name = rcu_string_strdup(orig_dev->name->str,
GFP_KERNEL);
fs/btrfs/volumes.c:2235:49: sparse: sparse: incorrect type in
argument 3 (different address spaces) @@ expected char const *device_path @@ got
char [noderef] __rcu * @@
fs/btrfs/volumes.c:2235:49: sparse: expected char const *device_path
fs/btrfs/volumes.c:2235:49: sparse: got char [noderef] __rcu *
btrfs_scratch_superblocks(fs_info, device->bdev,
device->name->str);
fs/btrfs/volumes.c:2350:41: sparse: sparse: incorrect type in
argument 3 (different address spaces) @@ expected char const *device_path @@ got
char [noderef] __rcu * @@
fs/btrfs/volumes.c:2350:41: sparse: expected char const *device_path
fs/btrfs/volumes.c:2350:41: sparse: got char [noderef] __rcu *
btrfs_scratch_superblocks(tgtdev->fs_info, tgtdev->bdev,
tgtdev->name->str);