2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-12-06 20:34:23 -08:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-01-11 22:34:01 -05:00
|
|
|
|
2009-06-17 11:47:48 -04:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
2010-07-27 11:56:05 -04:00
|
|
|
|
2010-10-27 21:25:12 -04:00
|
|
|
|
2010-12-17 10:44:16 -05:00
|
|
|
|
2017-05-03 14:53:26 -07:00
|
|
|
|
2009-06-17 11:47:48 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-12-24 11:46:01 -08:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2013-02-09 16:29:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-11 15:35:47 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-12-09 20:42:53 -05:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-04-24 00:56:07 -04:00
|
|
|
|
|
|
|
|
|
2008-07-11 19:27:31 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-01-10 12:29:43 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
jbd2: use a single printk for jbd_debug()
Since the jbd_debug() is implemented with two separate printk()
calls, it can lead to corrupted and misleading debug output like
the following (see lines marked with "*"):
[ 290.339362] (fs/jbd2/journal.c, 203): kjournald2: kjournald2 wakes
[ 290.339365] (fs/jbd2/journal.c, 155): kjournald2: commit_sequence=42103, commit_request=42104
[ 290.339369] (fs/jbd2/journal.c, 158): kjournald2: OK, requests differ
[* 290.339376] (fs/jbd2/journal.c, 648): jbd2_log_wait_commit:
[* 290.339379] (fs/jbd2/commit.c, 370): jbd2_journal_commit_transaction: JBD2: want 42104, j_commit_sequence=42103
[* 290.339382] JBD2: starting commit of transaction 42104
[ 290.339410] (fs/jbd2/revoke.c, 566): jbd2_journal_write_revoke_records: Wrote 0 revoke records
[ 290.376555] (fs/jbd2/commit.c, 1088): jbd2_journal_commit_transaction: JBD2: commit 42104 complete, head 42079
i.e. the debug output from log_wait_commit and journal_commit_transaction
have become interleaved. The output should have been:
(fs/jbd2/journal.c, 648): jbd2_log_wait_commit: JBD2: want 42104, j_commit_sequence=42103
(fs/jbd2/commit.c, 370): jbd2_journal_commit_transaction: JBD2: starting commit of transaction 42104
It is expected that this is not easy to replicate -- I was only able
to cause it on preempt-rt kernels, and even then only under heavy
I/O load.
Reported-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Suggested-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2013-06-12 23:04:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
2014-02-17 20:49:04 -05:00
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
2015-10-15 10:30:36 -04:00
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-08-28 14:59:58 -04:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
2013-08-28 14:59:58 -04:00
|
|
|
|
|
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-02-17 20:49:04 -05:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-02-17 20:49:04 -05:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-02-03 19:59:41 +11:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-03 14:53:26 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2011-11-21 12:32:22 -08:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-02-01 20:49:35 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-05-08 00:30:42 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2007-05-08 00:30:42 -07:00
|
|
|
|
|
|
|
|
|
2009-09-29 15:51:30 -04:00
|
|
|
|
|
|
|
|
|
2007-05-08 00:30:42 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-03-29 03:07:18 +00:00
|
|
|
|
2007-05-08 00:30:42 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2014-03-08 19:11:36 -05:00
|
|
|
|
2008-03-29 03:07:18 +00:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-07-13 17:55:35 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-08 10:53:10 -04:00
|
|
|
|
2010-07-27 11:56:05 -04:00
|
|
|
|
2009-07-13 17:55:35 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-25 23:14:31 +08:00
|
|
|
|
2008-09-11 15:35:47 -07:00
|
|
|
|
2010-07-14 07:56:33 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-11 15:35:47 -07:00
|
|
|
|
2010-07-14 07:56:33 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-11 15:35:47 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-25 23:14:31 +08:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-10-16 18:38:25 -04:00
|
|
|
|
2009-12-01 09:04:42 -05:00
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
2009-12-01 09:04:42 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2007-10-16 18:38:25 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-25 23:14:31 +08:00
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
2011-11-25 23:14:31 +08:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-11 15:35:47 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-25 23:14:31 +08:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-11-25 23:14:31 +08:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-06-04 12:08:56 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-04 12:01:45 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-07-13 17:55:35 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-04 12:08:56 -04:00
|
|
|
|
2009-07-13 17:55:35 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-02-12 08:18:24 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-01-30 00:39:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-05-01 18:16:26 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-05-01 18:16:26 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-10-16 15:19:14 +02:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2013-02-06 22:30:23 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2011-05-01 18:16:26 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2011-05-08 19:37:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-12 22:24:07 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-06-12 22:24:07 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-12 22:24:07 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2011-02-12 08:18:24 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-12 22:24:07 -04:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2013-06-12 22:24:07 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2011-02-12 08:18:24 -05:00
|
|
|
|
|
|
|
|
|
2013-06-12 22:24:07 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-02-10 11:27:46 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-02-10 11:27:46 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2009-02-10 11:27:46 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-07-25 18:12:07 +03:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2009-02-10 11:27:46 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-05-24 11:59:18 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2017-04-29 20:12:16 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-07-18 08:57:06 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-12-08 21:13:59 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-04-17 10:38:59 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2014-03-08 19:11:36 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2013-12-08 21:13:59 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ext4/jbd2: don't wait (forever) for stale tid caused by wraparound
In the case where an inode has a very stale transaction id (tid) in
i_datasync_tid or i_sync_tid, it's possible that after a very large
(2**31) number of transactions, that the tid number space might wrap,
causing tid_geq()'s calculations to fail.
Commit deeeaf13 "jbd2: fix fsync() tid wraparound bug", later modified
by commit e7b04ac0 "jbd2: don't wake kjournald unnecessarily",
attempted to fix this problem, but it only avoided kjournald spinning
forever by fixing the logic in jbd2_log_start_commit().
Unfortunately, in the codepaths in fs/ext4/fsync.c and fs/ext4/inode.c
that might call jbd2_log_start_commit() with a stale tid, those
functions will subsequently call jbd2_log_wait_commit() with the same
stale tid, and then wait for a very long time. To fix this, we
replace the calls to jbd2_log_start_commit() and
jbd2_log_wait_commit() with a call to a new function,
jbd2_complete_transaction(), which will correctly handle stale tid's.
As a bonus, jbd2_complete_transaction() will avoid locking
j_state_lock for writing unless a commit needs to be started. This
should have a small (but probably not measurable) improvement for
ext4's scalability.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reported-by: Ben Hutchings <ben@decadent.org.uk>
Reported-by: George Barnett <gbarnett@atlassian.com>
Cc: stable@vger.kernel.org
2013-04-03 22:02:52 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-16 14:36:17 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-02-22 23:17:15 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-02-22 23:17:15 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2016-02-22 23:17:15 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-01-06 14:53:35 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2016-02-22 23:17:15 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-04 12:06:01 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2016-02-22 23:19:09 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-04 11:01:31 -04:00
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
2012-03-13 22:45:38 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-10-28 12:58:12 -04:00
|
|
|
|
2012-03-13 22:45:38 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-02-06 22:30:23 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2013-02-06 22:30:23 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2009-01-11 22:34:01 -05:00
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-09-22 16:43:43 -07:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-03-31 18:16:14 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-10-01 15:43:56 -07:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-16 14:36:17 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2008-04-29 01:02:11 -07:00
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-16 14:36:17 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-06-30 11:39:38 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2009-12-23 08:05:15 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-12-18 13:39:38 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-06-04 12:35:11 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2007-10-16 18:38:25 -04:00
|
|
|
|
2009-01-03 20:27:38 -05:00
|
|
|
|
|
|
|
|
|
2013-06-04 12:35:11 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2017-03-15 15:08:48 -04:00
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2009-09-30 00:32:06 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2016-06-30 11:39:38 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-03-15 15:08:48 -04:00
|
|
|
|
|
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-03-15 15:08:48 -04:00
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2017-03-15 15:08:48 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-04-17 10:38:59 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-04-17 10:38:59 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-11-17 21:46:26 -05:00
|
|
|
|
2015-06-25 15:02:38 -07:00
|
|
|
|
2009-01-06 14:53:35 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
2008-09-16 14:36:17 -04:00
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-09-15 12:02:32 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-16 14:36:17 -04:00
|
|
|
|
2015-06-25 15:02:38 -07:00
|
|
|
|
2009-09-29 15:51:30 -04:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:21:13 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-07-17 10:40:01 -04:00
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2009-07-17 10:40:01 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
2016-10-28 12:58:12 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
2016-11-01 07:40:10 -06:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-04 11:01:31 -04:00
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2016-06-05 14:31:43 -05:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
2013-07-01 08:12:38 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2016-06-05 14:31:43 -05:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
2016-06-05 14:32:25 -05:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
2008-10-06 21:35:40 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-07-01 08:12:38 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
2016-06-05 14:31:43 -05:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2008-10-06 21:35:40 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-03-13 22:22:54 -04:00
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path
On umount path, jbd2_journal_destroy() writes latest transaction ID
(->j_tail_sequence) to be used at next mount.
The bug is that ->j_tail_sequence is not holding latest transaction ID
in some cases. So, at next mount, there is chance to conflict with
remaining (not overwritten yet) transactions.
mount (id=10)
write transaction (id=11)
write transaction (id=12)
umount (id=10) <= the bug doesn't write latest ID
mount (id=10)
write transaction (id=11)
crash
mount
[recovery process]
transaction (id=11)
transaction (id=12) <= valid transaction ID, but old commit
must not replay
Like above, this bug become the cause of recovery failure, or FS
corruption.
So why ->j_tail_sequence doesn't point latest ID?
Because if checkpoint transactions was reclaimed by memory pressure
(i.e. bdev_try_to_free_page()), then ->j_tail_sequence is not updated.
(And another case is, __jbd2_journal_clean_checkpoint_list() is called
with empty transaction.)
So in above cases, ->j_tail_sequence is not pointing latest
transaction ID at umount path. Plus, REQ_FLUSH for checkpoint is not
done too.
So, to fix this problem with minimum changes, this patch updates
->j_tail_sequence, and issue REQ_FLUSH. (With more complex changes,
some optimizations would be possible to avoid unnecessary REQ_FLUSH
for example though.)
BTW,
journal->j_tail_sequence =
++journal->j_transaction_sequence;
Increment of ->j_transaction_sequence seems to be unnecessary, but
ext3 does this.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-03-09 23:47:25 -05:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path
On umount path, jbd2_journal_destroy() writes latest transaction ID
(->j_tail_sequence) to be used at next mount.
The bug is that ->j_tail_sequence is not holding latest transaction ID
in some cases. So, at next mount, there is chance to conflict with
remaining (not overwritten yet) transactions.
mount (id=10)
write transaction (id=11)
write transaction (id=12)
umount (id=10) <= the bug doesn't write latest ID
mount (id=10)
write transaction (id=11)
crash
mount
[recovery process]
transaction (id=11)
transaction (id=12) <= valid transaction ID, but old commit
must not replay
Like above, this bug become the cause of recovery failure, or FS
corruption.
So why ->j_tail_sequence doesn't point latest ID?
Because if checkpoint transactions was reclaimed by memory pressure
(i.e. bdev_try_to_free_page()), then ->j_tail_sequence is not updated.
(And another case is, __jbd2_journal_clean_checkpoint_list() is called
with empty transaction.)
So in above cases, ->j_tail_sequence is not pointing latest
transaction ID at umount path. Plus, REQ_FLUSH for checkpoint is not
done too.
So, to fix this problem with minimum changes, this patch updates
->j_tail_sequence, and issue REQ_FLUSH. (With more complex changes,
some optimizations would be possible to avoid unnecessary REQ_FLUSH
for example though.)
BTW,
journal->j_tail_sequence =
++journal->j_transaction_sequence;
Increment of ->j_transaction_sequence seems to be unnecessary, but
ext3 does this.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-03-09 23:47:25 -05:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2012-08-18 22:29:40 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path
On umount path, jbd2_journal_destroy() writes latest transaction ID
(->j_tail_sequence) to be used at next mount.
The bug is that ->j_tail_sequence is not holding latest transaction ID
in some cases. So, at next mount, there is chance to conflict with
remaining (not overwritten yet) transactions.
mount (id=10)
write transaction (id=11)
write transaction (id=12)
umount (id=10) <= the bug doesn't write latest ID
mount (id=10)
write transaction (id=11)
crash
mount
[recovery process]
transaction (id=11)
transaction (id=12) <= valid transaction ID, but old commit
must not replay
Like above, this bug become the cause of recovery failure, or FS
corruption.
So why ->j_tail_sequence doesn't point latest ID?
Because if checkpoint transactions was reclaimed by memory pressure
(i.e. bdev_try_to_free_page()), then ->j_tail_sequence is not updated.
(And another case is, __jbd2_journal_clean_checkpoint_list() is called
with empty transaction.)
So in above cases, ->j_tail_sequence is not pointing latest
transaction ID at umount path. Plus, REQ_FLUSH for checkpoint is not
done too.
So, to fix this problem with minimum changes, this patch updates
->j_tail_sequence, and issue REQ_FLUSH. (With more complex changes,
some optimizations would be possible to avoid unnecessary REQ_FLUSH
for example though.)
BTW,
journal->j_tail_sequence =
++journal->j_transaction_sequence;
Increment of ->j_transaction_sequence seems to be unnecessary, but
ext3 does this.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-03-09 23:47:25 -05:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-08-05 19:04:57 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2017-05-04 11:01:31 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-08-05 19:04:57 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-06-05 14:31:44 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:04:59 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-10-17 16:18:45 -04:00
|
|
|
|
|
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-10-15 10:30:36 -04:00
|
|
|
|
2015-10-17 16:18:45 -04:00
|
|
|
|
2014-09-11 11:38:21 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
2013-12-08 21:14:59 -05:00
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:50:56 -04:00
|
|
|
|
2015-10-15 10:30:36 -04:00
|
|
|
|
2012-05-27 07:50:56 -04:00
|
|
|
|
|
|
|
|
|
2013-12-08 21:14:59 -05:00
|
|
|
|
2012-05-27 07:50:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
2013-12-08 21:14:59 -05:00
|
|
|
|
2015-10-17 16:16:04 -04:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2009-11-15 15:31:37 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-10-17 16:16:04 -04:00
|
|
|
|
2009-11-15 15:31:37 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-10-28 12:58:12 -04:00
|
|
|
|
2015-07-28 14:57:14 -04:00
|
|
|
|
2008-11-05 00:09:22 -05:00
|
|
|
|
2015-07-28 14:57:14 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
2016-10-28 12:58:12 -04:00
|
|
|
|
jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path
On umount path, jbd2_journal_destroy() writes latest transaction ID
(->j_tail_sequence) to be used at next mount.
The bug is that ->j_tail_sequence is not holding latest transaction ID
in some cases. So, at next mount, there is chance to conflict with
remaining (not overwritten yet) transactions.
mount (id=10)
write transaction (id=11)
write transaction (id=12)
umount (id=10) <= the bug doesn't write latest ID
mount (id=10)
write transaction (id=11)
crash
mount
[recovery process]
transaction (id=11)
transaction (id=12) <= valid transaction ID, but old commit
must not replay
Like above, this bug become the cause of recovery failure, or FS
corruption.
So why ->j_tail_sequence doesn't point latest ID?
Because if checkpoint transactions was reclaimed by memory pressure
(i.e. bdev_try_to_free_page()), then ->j_tail_sequence is not updated.
(And another case is, __jbd2_journal_clean_checkpoint_list() is called
with empty transaction.)
So in above cases, ->j_tail_sequence is not pointing latest
transaction ID at umount path. Plus, REQ_FLUSH for checkpoint is not
done too.
So, to fix this problem with minimum changes, this patch updates
->j_tail_sequence, and issue REQ_FLUSH. (With more complex changes,
some optimizations would be possible to avoid unnecessary REQ_FLUSH
for example though.)
BTW,
journal->j_tail_sequence =
++journal->j_transaction_sequence;
Increment of ->j_transaction_sequence seems to be unnecessary, but
ext3 does this.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
2016-03-09 23:47:25 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-11-01 07:40:10 -06:00
|
|
|
|
2017-05-04 11:01:31 -04:00
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
|
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
2014-11-25 20:02:37 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2012-05-27 07:50:56 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-07-22 15:04:16 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:50:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-12-08 21:14:59 -05:00
|
|
|
|
2012-05-27 07:50:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
2014-12-01 16:22:23 -08:00
|
|
|
|
2012-05-27 08:08:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-12-01 16:22:23 -08:00
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 07:48:56 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-10-28 12:58:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-10-10 20:29:13 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-10-28 12:58:12 -04:00
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-04 11:01:31 -04:00
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2015-06-15 14:36:01 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-04 11:01:31 -04:00
|
|
|
|
2012-03-13 15:43:04 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-06-09 00:06:20 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-09-16 14:36:17 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2015-10-18 17:02:56 -04:00
|
|
|
|
2012-03-13 15:41:04 -04:00
|
|
|
|
2015-10-18 17:02:56 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2009-06-09 00:06:20 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2009-06-09 00:06:20 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2009-06-09 00:06:20 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2010-08-03 21:35:12 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros
PAGE_CACHE_{SIZE,SHIFT,MASK,ALIGN} macros were introduced *long* time
ago with promise that one day it will be possible to implement page
cache with bigger chunks than PAGE_SIZE.
This promise never materialized. And unlikely will.
We have many places where PAGE_CACHE_SIZE assumed to be equal to
PAGE_SIZE. And it's constant source of confusion on whether
PAGE_CACHE_* or PAGE_* constant should be used in a particular case,
especially on the border between fs and mm.
Global switching to PAGE_CACHE_SIZE != PAGE_SIZE would cause to much
breakage to be doable.
Let's stop pretending that pages in page cache are special. They are
not.
The changes are pretty straight-forward:
- <foo> << (PAGE_CACHE_SHIFT - PAGE_SHIFT) -> <foo>;
- <foo> >> (PAGE_CACHE_SHIFT - PAGE_SHIFT) -> <foo>;
- PAGE_CACHE_{SIZE,SHIFT,MASK,ALIGN} -> PAGE_{SIZE,SHIFT,MASK,ALIGN};
- page_cache_get() -> get_page();
- page_cache_release() -> put_page();
This patch contains automated changes generated with coccinelle using
script below. For some reason, coccinelle doesn't patch header files.
I've called spatch for them manually.
The only adjustment after coccinelle is revert of changes to
PAGE_CAHCE_ALIGN definition: we are going to drop it later.
There are few places in the code where coccinelle didn't reach. I'll
fix them manually in a separate patch. Comments and documentation also
will be addressed with the separate patch.
virtual patch
@@
expression E;
@@
- E << (PAGE_CACHE_SHIFT - PAGE_SHIFT)
+ E
@@
expression E;
@@
- E >> (PAGE_CACHE_SHIFT - PAGE_SHIFT)
+ E
@@
@@
- PAGE_CACHE_SHIFT
+ PAGE_SHIFT
@@
@@
- PAGE_CACHE_SIZE
+ PAGE_SIZE
@@
@@
- PAGE_CACHE_MASK
+ PAGE_MASK
@@
expression E;
@@
- PAGE_CACHE_ALIGN(E)
+ PAGE_ALIGN(E)
@@
expression E;
@@
- page_cache_get(E)
+ get_page(E)
@@
expression E;
@@
- page_cache_release(E)
+ put_page(E)
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-04-01 15:29:47 +03:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:21:08 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
|
|
|
|
|
2015-10-17 16:18:45 -04:00
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-05-27 08:12:12 -04:00
|
|
|
|
2015-10-17 16:18:45 -04:00
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
2012-05-27 08:12:12 -04:00
|
|
|
|
2015-10-17 16:18:45 -04:00
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
2006-10-11 01:21:08 -07:00
|
|
|
|
2014-08-27 18:40:07 -04:00
|
|
|
|
2006-10-11 01:21:08 -07:00
|
|
|
|
|
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-10-16 22:34:39 +02:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-10-16 22:34:39 +02:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
2010-10-16 22:34:39 +02:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-10-16 22:34:39 +02:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-04-30 09:34:31 -04:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-06-24 14:49:28 -07:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
2016-06-24 14:49:28 -07:00
|
|
|
|
|
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-06-24 14:49:28 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-12-06 20:33:20 -08:00
|
|
|
|
2007-07-18 08:57:06 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-02-20 17:53:03 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-03-29 03:07:18 +00:00
|
|
|
|
2006-10-11 01:21:00 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2017-01-18 02:53:44 -08:00
|
|
|
|
2007-07-20 10:11:58 +09:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-03-29 03:07:18 +00:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-11-01 19:09:18 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-02-20 17:53:03 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-04-17 10:38:59 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-07-18 08:57:06 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2013-05-28 07:27:11 -04:00
|
|
|
|
2008-03-29 03:07:18 +00:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2010-12-17 10:44:16 -05:00
|
|
|
|
2015-06-15 15:45:58 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-07-18 08:57:06 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2007-10-16 18:38:25 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-05-28 07:27:11 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-06-13 15:38:22 -04:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2008-07-11 19:27:31 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-02-22 23:20:30 -05:00
|
|
|
|
2008-07-11 19:27:31 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-03-05 11:25:39 +01:00
|
|
|
|
2008-07-11 19:27:31 -04:00
|
|
|
|
|
|
|
|
|
2017-03-05 11:25:39 +01:00
|
|
|
|
2008-07-11 19:27:31 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-01-10 12:29:43 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-02-20 17:53:03 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2011-01-10 12:29:43 -05:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2011-01-10 12:29:43 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
|
|
|
|
|
2011-01-10 12:29:43 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-02-20 17:53:03 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2012-02-20 17:53:03 -05:00
|
|
|
|
2012-02-20 17:53:02 -05:00
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2012-02-20 17:53:03 -05:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2012-02-20 17:53:02 -05:00
|
|
|
|
2009-12-07 10:36:20 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-04-29 22:02:47 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2008-04-29 22:02:47 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-07-18 08:57:06 -04:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
2013-12-08 21:13:59 -05:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
2008-01-28 23:58:27 -05:00
|
|
|
|
2006-10-11 01:20:59 -07:00
|
|
|
|
2006-10-11 01:20:57 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|