config_group_put(&nt->group);
}
+static void dynamic_netconsole_mutex_lock(void)
+{
+ mutex_lock(&dynamic_netconsole_mutex);
+}
+
+static void dynamic_netconsole_mutex_unlock(void)
+{
+ mutex_unlock(&dynamic_netconsole_mutex);
+}
+
#else /* !CONFIG_NETCONSOLE_DYNAMIC */
static int __init dynamic_netconsole_init(void)
int cmdline_count)
{
}
+
+static void dynamic_netconsole_mutex_lock(void)
+{
+}
+
+static void dynamic_netconsole_mutex_unlock(void)
+{
+}
+
#endif /* CONFIG_NETCONSOLE_DYNAMIC */
/* Check if the target was bound by mac address. */
struct netconsole_target *nt = to_target(item->ci_parent);
bool cpu_nr_enabled;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
cpu_nr_enabled = !!(nt->sysdata_fields & SYSDATA_CPU_NR);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return sysfs_emit(buf, "%d\n", cpu_nr_enabled);
}
struct netconsole_target *nt = to_target(item->ci_parent);
bool taskname_enabled;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
taskname_enabled = !!(nt->sysdata_fields & SYSDATA_TASKNAME);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return sysfs_emit(buf, "%d\n", taskname_enabled);
}
struct netconsole_target *nt = to_target(item->ci_parent);
bool release_enabled;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
release_enabled = !!(nt->sysdata_fields & SYSDATA_TASKNAME);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return sysfs_emit(buf, "%d\n", release_enabled);
}
struct netconsole_target *nt = to_target(item->ci_parent);
bool msgid_enabled;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
msgid_enabled = !!(nt->sysdata_fields & SYSDATA_MSGID);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return sysfs_emit(buf, "%d\n", msgid_enabled);
}
unsigned long flags;
ssize_t ret;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
ret = kstrtobool(buf, &enabled);
if (ret)
goto out_unlock;
/* Deferred cleanup */
netconsole_process_cleanups();
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
bool release;
ssize_t ret;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
bool extended;
ssize_t ret;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
nt->extended = extended;
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
{
struct netconsole_target *nt = to_target(item);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return -EINVAL;
}
strscpy(nt->np.dev_name, buf, IFNAMSIZ);
trim_newline(nt->np.dev_name, IFNAMSIZ);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return strnlen(buf, count);
}
struct netconsole_target *nt = to_target(item);
ssize_t ret = -EINVAL;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
goto out_unlock;
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
struct netconsole_target *nt = to_target(item);
ssize_t ret = -EINVAL;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
goto out_unlock;
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
ssize_t ret = -EINVAL;
int ipv6;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
ssize_t ret = -EINVAL;
int ipv6;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
u8 remote_mac[ETH_ALEN];
ssize_t ret = -EINVAL;
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
if (nt->state == STATE_ENABLED) {
pr_err("target (%s) is enabled, disable to update parameters\n",
config_item_name(&nt->group.cg_item));
ret = strnlen(buf, count);
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
return ret;
}
return -EMSGSIZE;
mutex_lock(&netconsole_subsys.su_mutex);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
ret = strscpy(udm->value, buf, sizeof(udm->value));
if (ret < 0)
goto out_unlock;
ret = count;
out_unlock:
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
mutex_unlock(&netconsole_subsys.su_mutex);
return ret;
}
return ret;
mutex_lock(&netconsole_subsys.su_mutex);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
curr = !!(nt->sysdata_fields & SYSDATA_MSGID);
if (msgid_enabled == curr)
goto unlock_ok;
unlock_ok:
ret = strnlen(buf, count);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
mutex_unlock(&netconsole_subsys.su_mutex);
return ret;
}
return ret;
mutex_lock(&netconsole_subsys.su_mutex);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
curr = !!(nt->sysdata_fields & SYSDATA_RELEASE);
if (release_enabled == curr)
goto unlock_ok;
unlock_ok:
ret = strnlen(buf, count);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
mutex_unlock(&netconsole_subsys.su_mutex);
return ret;
}
return ret;
mutex_lock(&netconsole_subsys.su_mutex);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
curr = !!(nt->sysdata_fields & SYSDATA_TASKNAME);
if (taskname_enabled == curr)
goto unlock_ok;
unlock_ok:
ret = strnlen(buf, count);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
mutex_unlock(&netconsole_subsys.su_mutex);
return ret;
}
return ret;
mutex_lock(&netconsole_subsys.su_mutex);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
curr = !!(nt->sysdata_fields & SYSDATA_CPU_NR);
if (cpu_nr_enabled == curr)
/* no change requested */
unlock_ok:
ret = strnlen(buf, count);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
mutex_unlock(&netconsole_subsys.su_mutex);
return ret;
}
ud = to_userdata(&group->cg_item);
nt = userdata_to_target(ud);
- mutex_lock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_lock();
update_userdata(nt);
config_item_put(item);
- mutex_unlock(&dynamic_netconsole_mutex);
+ dynamic_netconsole_mutex_unlock();
}
static struct configfs_attribute *userdata_attrs[] = {