> > Yes, this happens on 32 bit builds, not on 64 bit builds. If you > > look at the source code, the compiler is obviously wrong (or I am > > blind). > > > > ret = btrfs_dev_replace_find_srcdev(root, args->start.srcdevid, > > args->start.srcdev_name, > > &src_device); > > mutex_unlock(&fs_info->volume_mutex); > > if (ret) { <-- this is line 344 > > > > But thanks for the feedback anyway! > > This usually means that somewhere in the call tree under > btrfs_dev_replace_find_srcdev(), there's a way that the function can > return without returning a value
Indeed, and that's obviously the case in 15/26 with btrfs_dev_replace_find_srcdev() when btrfs_find_device() returns a device. *mumbles something about the reason for ERR_PTR semantics* - z -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html