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

Commit fd659fd6 authored by Eric Dumazet's avatar Eric Dumazet Committed by Al Viro
Browse files

fix f_count description in Documentation/filesystems/files.txt



Documentation/filesystems/files.txt was not updated when
f_count became an atomic_long_t.
atomic_long_inc_not_zero() is now used instead of atomic_inc_not_zero()

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 1239f26c
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -76,13 +76,13 @@ the fdtable structure -
5. Handling of the file structures is special. Since the look-up
   of the fd (fget()/fget_light()) are lock-free, it is possible
   that look-up may race with the last put() operation on the
   file structure. This is avoided using atomic_inc_not_zero()
   file structure. This is avoided using atomic_long_inc_not_zero()
   on ->f_count :

	rcu_read_lock();
	file = fcheck_files(files, fd);
	if (file) {
		if (atomic_inc_not_zero(&file->f_count))
		if (atomic_long_inc_not_zero(&file->f_count))
			*fput_needed = 1;
		else
		/* Didn't get the reference, someone's freed */
@@ -92,7 +92,7 @@ the fdtable structure -
	....
	return file;

   atomic_inc_not_zero() detects if refcounts is already zero or
   atomic_long_inc_not_zero() detects if refcounts is already zero or
   goes to zero during increment. If it does, we fail
   fget()/fget_light().