Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f55ac56d authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull vfs fixes (try two) from Al Viro:
 "nfsd performance regression fix + seq_file lseek(2) fix"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  seq_file: always update file->f_pos in seq_lseek()
  nfsd regression since delayed fput()
parents 4208c471 05e16745
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -297,7 +297,7 @@ void flush_delayed_fput(void)
	delayed_fput(NULL);
}

static DECLARE_WORK(delayed_fput_work, delayed_fput);
static DECLARE_DELAYED_WORK(delayed_fput_work, delayed_fput);

void fput(struct file *file)
{
@@ -317,7 +317,7 @@ void fput(struct file *file)
		}

		if (llist_add(&file->f_u.fu_llist, &delayed_fput_list))
			schedule_work(&delayed_fput_work);
			schedule_delayed_work(&delayed_fput_work, 1);
	}
}

+2 −0
Original line number Diff line number Diff line
@@ -328,6 +328,8 @@ loff_t seq_lseek(struct file *file, loff_t offset, int whence)
				m->read_pos = offset;
				retval = file->f_pos = offset;
			}
		} else {
			file->f_pos = offset;
		}
	}
	file->f_version = m->version;