read_policy
u32 read_policy:1;
static char *read_policy;
return read_policy;
module_param(read_policy, charp, 0);
MODULE_PARM_DESC(read_policy,
if (btrfs_read_policy_to_enum(read_policy, &value) == -EINVAL) {
btrfs_err(NULL, "invalid read policy or value %s", read_policy);
const enum btrfs_read_policy policy = READ_ONCE(fs_devices->read_policy);
if (fs_devices->read_policy == BTRFS_READ_POLICY_RR && index != BTRFS_READ_POLICY_RR)
if (index != READ_ONCE(fs_devices->read_policy) ||
WRITE_ONCE(fs_devices->read_policy, index);
if (index != READ_ONCE(fs_devices->read_policy) ||
WRITE_ONCE(fs_devices->read_policy, index);
if (index != READ_ONCE(fs_devices->read_policy)) {
WRITE_ONCE(fs_devices->read_policy, index);
BTRFS_ATTR_RW(, read_policy, btrfs_read_policy_show, btrfs_read_policy_store);
BTRFS_ATTR_PTR(, read_policy),
fs_devices->read_policy = btrfs_read_policy_to_enum(btrfs_get_mod_read_policy(),
if (fs_devices->read_policy == BTRFS_READ_POLICY_RR)
if (fs_devices->read_policy == BTRFS_READ_POLICY_RR)
if (fs_devices->read_policy == BTRFS_READ_POLICY_DEVID)
fs_devices->read_policy = BTRFS_READ_POLICY_PID;
const enum btrfs_read_policy policy = READ_ONCE(fs_info->fs_devices->read_policy);
WRITE_ONCE(fs_info->fs_devices->read_policy, BTRFS_READ_POLICY_PID);
enum btrfs_read_policy read_policy;
.read = read_policy,