patch-2.4.25 linux-2.4.25/fs/locks.c
Next file: linux-2.4.25/fs/msdos/namei.c
Previous file: linux-2.4.25/fs/lockd/clntlock.c
Back to the patch index
Back to the overall index
- Lines: 82
- Date:
2004-02-18 05:36:31.000000000 -0800
- Orig file:
linux-2.4.24/fs/locks.c
- Orig date:
2003-08-25 04:44:43.000000000 -0700
diff -urN linux-2.4.24/fs/locks.c linux-2.4.25/fs/locks.c
@@ -135,15 +135,9 @@
static kmem_cache_t *filelock_cache;
/* Allocate an empty lock structure. */
-static struct file_lock *locks_alloc_lock(int account)
+static struct file_lock *locks_alloc_lock(void)
{
- struct file_lock *fl;
- if (account && current->locks >= current->rlim[RLIMIT_LOCKS].rlim_cur)
- return NULL;
- fl = kmem_cache_alloc(filelock_cache, SLAB_KERNEL);
- if (fl)
- current->locks++;
- return fl;
+ return kmem_cache_alloc(filelock_cache, SLAB_KERNEL);
}
/* Free a lock which is not in use. */
@@ -153,7 +147,6 @@
BUG();
return;
}
- current->locks--;
if (waitqueue_active(&fl->fl_wait))
panic("Attempting to free lock with active wait queue");
@@ -220,7 +213,7 @@
/* Fill in a file_lock structure with an appropriate FLOCK lock. */
static struct file_lock *flock_make_lock(struct file *filp, unsigned int type)
{
- struct file_lock *fl = locks_alloc_lock(1);
+ struct file_lock *fl = locks_alloc_lock();
if (fl == NULL)
return NULL;
@@ -358,7 +351,7 @@
/* Allocate a file_lock initialised to this type of lease */
static int lease_alloc(struct file *filp, int type, struct file_lock **flp)
{
- struct file_lock *fl = locks_alloc_lock(1);
+ struct file_lock *fl = locks_alloc_lock();
if (fl == NULL)
return -ENOMEM;
@@ -721,7 +714,7 @@
size_t count)
{
struct file_lock *fl;
- struct file_lock *new_fl = locks_alloc_lock(0);
+ struct file_lock *new_fl = locks_alloc_lock();
int error;
if (new_fl == NULL)
@@ -881,8 +874,8 @@
* We may need two file_lock structures for this operation,
* so we get them in advance to avoid races.
*/
- new_fl = locks_alloc_lock(0);
- new_fl2 = locks_alloc_lock(0);
+ new_fl = locks_alloc_lock();
+ new_fl2 = locks_alloc_lock();
error = -ENOLCK; /* "no luck" */
if (!(new_fl && new_fl2))
goto out_nolock;
@@ -1488,7 +1481,7 @@
int fcntl_setlk(unsigned int fd, unsigned int cmd, struct flock *l)
{
struct file *filp;
- struct file_lock *file_lock = locks_alloc_lock(0);
+ struct file_lock *file_lock = locks_alloc_lock();
struct flock flock;
struct inode *inode;
int error;
@@ -1644,7 +1637,7 @@
int fcntl_setlk64(unsigned int fd, unsigned int cmd, struct flock64 *l)
{
struct file *filp;
- struct file_lock *file_lock = locks_alloc_lock(0);
+ struct file_lock *file_lock = locks_alloc_lock();
struct flock64 flock;
struct inode *inode;
int error;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)