Re: fsync on large files

Ralf.Sieger@gmx.net
Sun, 14 Feb 1999 20:40:25 +0100 (CET)


I took a look at fs/buffer.c in 2.0.36 and compared it with 2.2.1.
What I found was
1. We do a lock_kernel() on each sys_fsync().
So all other processes using this lock_have to wait... Why?
2. Plus we ensure we get the semaphore

/* We need to protect against concurrent writers.. */
down(&inode->i_sem);

So I have problems to get it. Since we called lock_kernel() we are the ony
on in this pice of code.

So AFAIK wheter the kernel lock is unneccessary or the semaphore or both?

Could someone give me comments on this?

Ralf

,-~~-.___.
/ | ' \ Yup that's what I like ....
( ) 0 __
\_/-, ,----' | |
==== | |
/ \-'~; ___| |
/ __/~| / |
=( _____| (_________|

-------------------------------------------------------
- I'm not a complete idiot, some parts are missing!
--------------- *** --- *** --- *** --- *** -----------
Ralf.Sieger@gmx.net

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/