Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 328967
b: refs/heads/master
c: b9e02af
h: refs/heads/master
i:
  328965: ccfaba3
  328963: d2aa51b
  328959: 90a8d97
v: v3
  • Loading branch information
Al Viro committed Sep 27, 2012
1 parent 9373c07 commit cae26f0
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 10 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 7cf4dc3c8dbfdfde163d4636f621cf99a1f63bfb
refs/heads/master: b9e02af0ae0783894abb576fbab45ec29aa8e7fc
14 changes: 5 additions & 9 deletions trunk/fs/file.c
Original file line number Diff line number Diff line change
Expand Up @@ -447,18 +447,14 @@ void put_files_struct(struct files_struct *files)

if (atomic_dec_and_test(&files->count)) {
close_files(files);
/*
* Free the fd and fdset arrays if we expanded them.
* If the fdtable was embedded, pass files for freeing
* at the end of the RCU grace period. Otherwise,
* you can free files immediately.
*/
/* not really needed, since nobody can see us */
rcu_read_lock();
fdt = files_fdtable(files);
if (fdt != &files->fdtab)
kmem_cache_free(files_cachep, files);
free_fdtable(fdt);
rcu_read_unlock();
/* free the arrays if they are not embedded */
if (fdt != &files->fdtab)
__free_fdtable(fdt);
kmem_cache_free(files_cachep, files);
}
}

Expand Down

0 comments on commit cae26f0

Please sign in to comment.