if (writer->owner != current->group_leader) {
struct file *nfile;
+ mutex_unlock(&log->mutex);
nfile = make_new_file(file);
if (IS_ERR(nfile)) {
- mutex_unlock(&log->mutex);
return PTR_ERR(nfile);
}
+ mutex_lock(&log->mutex);
file = nfile;
writer = file->private_data;
if (writer->owner != current->group_leader) {
struct file *nfile;
+ mutex_unlock(&log->mutex);
nfile = make_new_file(file);
if (IS_ERR(nfile)) {
- mutex_unlock(&log->mutex);
return PTR_ERR(nfile);
}
+ mutex_lock(&log->mutex);
file = nfile;
writer = file->private_data;