- reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls.patch removed from -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

     reiser4: add missing txn_restart before get_nonexclusive_access calls

has been removed from the -mm tree.  Its filename is

     reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls.patch

This patch was probably dropped from -mm because
it has now been merged into a subsystem tree or
into Linus's tree, or because it was folded into
its parent patch in the -mm tree.

------------------------------------------------------
Subject: reiser4: add missing txn_restart before get_nonexclusive_access calls
From: Alexander Zarochentsev <zam@xxxxxxxxxxx>


Add missing txn_restart_current() before get_nonexclusive_access() calls.

Signed-off-by: Alexander Zarochentsev <zam@xxxxxxxxxxx>
Signed-off-by: Hans Reiser <reiser@xxxxxxxxxxx>
Cc: Vladimir Saveliev <vs@xxxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 fs/reiser4/plugin/file/file.c            |   17 ++++++++---------
 fs/reiser4/plugin/file/file.h            |    2 +-
 fs/reiser4/plugin/file/funcs.h           |    5 -----
 fs/reiser4/plugin/file/tail_conversion.c |   12 +++---------
 fs/reiser4/plugin/item/extent_file_ops.c |    3 ++-
 fs/reiser4/plugin/item/tail.c            |    3 ++-
 6 files changed, 16 insertions(+), 26 deletions(-)

diff -puN fs/reiser4/plugin/file/file.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls fs/reiser4/plugin/file/file.c
--- devel/fs/reiser4/plugin/file/file.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls	2006-05-14 02:12:24.000000000 -0700
+++ devel-akpm/fs/reiser4/plugin/file/file.c	2006-05-14 02:12:24.000000000 -0700
@@ -1600,7 +1600,7 @@ writepages_unix_file(struct address_spac
 				break;
 			}
 		} else
-			get_nonexclusive_access(uf_info, 0);
+			get_nonexclusive_access(uf_info);
 
 		while (to_capture > 0) {
 			pgoff_t start;
@@ -2026,7 +2026,7 @@ read_unix_file(struct file *file, char _
 	while (left > 0) {
 		txn_restart_current();
 
-		get_nonexclusive_access(uf_info, 0);
+		get_nonexclusive_access(uf_info);
 
 		size = i_size_read(inode);
 		if (*off >= size) {
@@ -2181,7 +2181,7 @@ append_and_or_overwrite(hint_t * hint, s
 				if (!exclusive) {
 					drop_exclusive_access(uf_info);
 					txn_restart_current();
-					get_nonexclusive_access(uf_info, 0);
+					get_nonexclusive_access(uf_info);
 				}
 				if (result)
 					return result;
@@ -2535,19 +2535,18 @@ ssize_t write_unix_file(struct file *fil
 	while (left > 0) {
 		int excl = 0;
 
-		/* getting exclusive or not exclusive access requires no
-		   transaction open */
-		txn_restart_current();
-
 		/* faultin user page */
 		fault_in_pages_readable(buf,
 					left > PAGE_CACHE_SIZE ? PAGE_CACHE_SIZE : left);
+		/* getting exclusive or not exclusive access requires no
+		   transaction open */
+		txn_restart_current();
 
 		if (inode->i_size == 0) {
 			get_exclusive_access(uf_info);
 			excl = 1;
 		} else {
-			get_nonexclusive_access(uf_info, 0);
+			get_nonexclusive_access(uf_info);
 			excl = 0;
 		}
 
@@ -3028,7 +3027,7 @@ sendfile_unix_file(struct file *file, lo
 	mutex_unlock(&inode->i_mutex);
 
 	uf_info = unix_file_inode_data(inode);
-	get_nonexclusive_access(uf_info, 0);
+	get_nonexclusive_access(uf_info);
 	result = generic_file_sendfile(file, ppos, count, actor, target);
 	drop_nonexclusive_access(uf_info);
  error:
diff -puN fs/reiser4/plugin/file/file.h~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls fs/reiser4/plugin/file/file.h
--- devel/fs/reiser4/plugin/file/file.h~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls	2006-05-14 02:12:24.000000000 -0700
+++ devel-akpm/fs/reiser4/plugin/file/file.h	2006-05-14 02:12:24.000000000 -0700
@@ -104,7 +104,7 @@ typedef struct unix_file_info {
 struct unix_file_info *unix_file_inode_data(const struct inode *inode);
 void get_exclusive_access(unix_file_info_t *);
 void drop_exclusive_access(unix_file_info_t *);
-void get_nonexclusive_access(unix_file_info_t *, int);
+void get_nonexclusive_access(unix_file_info_t *);
 void drop_nonexclusive_access(unix_file_info_t *);
 int try_to_get_nonexclusive_access(unix_file_info_t *);
 
diff -puN fs/reiser4/plugin/file/funcs.h~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls fs/reiser4/plugin/file/funcs.h
--- devel/fs/reiser4/plugin/file/funcs.h~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls	2006-05-14 02:12:24.000000000 -0700
+++ devel-akpm/fs/reiser4/plugin/file/funcs.h	2006-05-14 02:12:24.000000000 -0700
@@ -1,11 +1,6 @@
 /* Copyright 2001, 2002, 2003, 2004 by Hans Reiser, licensing governed by reiser4/README */
 
 /* this prototypes functions used by both file.c and tail_conversion.c */
-void get_exclusive_access(unix_file_info_t *);
-void drop_exclusive_access(unix_file_info_t *);
-void get_nonexclusive_access(unix_file_info_t *, int);
-void drop_nonexclusive_access(unix_file_info_t *);
-
 int tail2extent(unix_file_info_t *);
 int extent2tail(unix_file_info_t *);
 int finish_conversion(struct inode *inode);
diff -puN fs/reiser4/plugin/file/tail_conversion.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls fs/reiser4/plugin/file/tail_conversion.c
--- devel/fs/reiser4/plugin/file/tail_conversion.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls	2006-05-14 02:12:24.000000000 -0700
+++ devel-akpm/fs/reiser4/plugin/file/tail_conversion.c	2006-05-14 02:12:24.000000000 -0700
@@ -70,18 +70,12 @@ static void nea_grabbed(unix_file_info_t
  *
  * Nonexclusive access is obtained on a file before read, write, readpage.
  */
-void get_nonexclusive_access(unix_file_info_t *uf_info, int atom_may_exist)
+void get_nonexclusive_access(unix_file_info_t *uf_info)
 {
 	assert("nikita-3029", schedulable());
-	/* unix_file_filemap_nopage may call this when current atom exist already */
-	assert("nikita-3361",
-	       ergo(atom_may_exist == 0,
-		    get_current_context()->trans->atom == NULL));
-	BUG_ON(atom_may_exist == 0
-	       && get_current_context()->trans->atom != NULL);
-
+	assert("nikita-3361", get_current_context()->trans->atom == NULL);
+	BUG_ON(get_current_context()->trans->atom != NULL);
 	down_read(&uf_info->latch);
-
 	nea_grabbed(uf_info);
 }
 
diff -puN fs/reiser4/plugin/item/extent_file_ops.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls fs/reiser4/plugin/item/extent_file_ops.c
--- devel/fs/reiser4/plugin/item/extent_file_ops.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls	2006-05-14 02:12:24.000000000 -0700
+++ devel-akpm/fs/reiser4/plugin/item/extent_file_ops.c	2006-05-14 02:12:24.000000000 -0700
@@ -804,10 +804,11 @@ extent_balance_dirty_pages(struct inode 
 					f->length > PAGE_CACHE_SIZE ?
 					PAGE_CACHE_SIZE : f->length);
 
+		txn_restart_current();
 		if (excl)
 			get_exclusive_access(uf_info);
 		else
-			get_nonexclusive_access(uf_info, 0);
+			get_nonexclusive_access(uf_info);
 	}
 	return 0;
 }
diff -puN fs/reiser4/plugin/item/tail.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls fs/reiser4/plugin/item/tail.c
--- devel/fs/reiser4/plugin/item/tail.c~reiser4-add-missing-txn_restart-before-get_nonexclusive_access-calls	2006-05-14 02:12:24.000000000 -0700
+++ devel-akpm/fs/reiser4/plugin/item/tail.c	2006-05-14 02:12:24.000000000 -0700
@@ -507,10 +507,11 @@ tail_balance_dirty_pages(struct address_
 		} else
 			drop_nonexclusive_access(uf_info);
 		reiser4_throttle_write(inode);
+		txn_restart_current();
 		if (excl)
 			get_exclusive_access(uf_info);
 		else
-			get_nonexclusive_access(uf_info, 0);
+			get_nonexclusive_access(uf_info);
 	}
 	return 0;
 }
_

Patches currently in -mm which might be from zam@xxxxxxxxxxx are


-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux