

inline fput_light()



 25-akpm/fs/file_table.c      |    9 +--------
 25-akpm/include/linux/file.h |    8 +++++++-
 2 files changed, 8 insertions(+), 9 deletions(-)

diff -puN fs/file_table.c~fget-speedup-inline-fput_light fs/file_table.c
--- 25/fs/file_table.c~fget-speedup-inline-fput_light	Fri May  2 14:00:15 2003
+++ 25-akpm/fs/file_table.c	Fri May  2 14:00:15 2003
@@ -141,19 +141,12 @@ void close_private_file(struct file *fil
 	security_file_free(file);
 }
 
-void fput(struct file * file)
+void fput(struct file *file)
 {
 	if (atomic_dec_and_test(&file->f_count))
 		__fput(file);
 }
 
-void fput_light(struct file * file, int fput_needed)
-{
-	if (unlikely(fput_needed))
-		if (atomic_dec_and_test(&file->f_count))
-			__fput(file);
-}
-
 /* __fput is called from task context when aio completion releases the last
  * last use of a struct file *.  Do not use otherwise.
  */
diff -puN include/linux/file.h~fget-speedup-inline-fput_light include/linux/file.h
--- 25/include/linux/file.h~fget-speedup-inline-fput_light	Fri May  2 14:00:15 2003
+++ 25-akpm/include/linux/file.h	Fri May  2 14:00:15 2003
@@ -35,7 +35,13 @@ struct files_struct {
 
 extern void FASTCALL(__fput(struct file *));
 extern void FASTCALL(fput(struct file *));
-extern void FASTCALL(fput_light(struct file *, int));
+
+static inline void fput_light(struct file *file, int fput_needed)
+{
+	if (unlikely(fput_needed))
+		fput(file);
+}
+
 extern struct file * FASTCALL(fget(unsigned int fd));
 extern struct file * FASTCALL(fget_light(unsigned int fd, int *fput_needed));
 extern void FASTCALL(set_close_on_exec(unsigned int fd, int flag));

_
