Mark Fasheh 24c19ef404 ocfs2: Remove i_generation from inode lock names
OCFS2 puts inode meta data in the "lock value block" provided by the DLM.
Typically, i_generation is encoded in the lock name so that a deleted inode
on and a new one in the same block don't share the same lvb.

Unfortunately, that scheme means that the read in ocfs2_read_locked_inode()
is potentially thrown away as soon as the meta data lock is taken - we
cannot encode the lock name without first knowing i_generation, which
requires a disk read.

This patch encodes i_generation in the inode meta data lvb, and removes the
value from the inode meta data lock name. This way, the read can be covered
by a lock, and at the same time we can distinguish between an up to date and
a stale LVB.

This will help cold-cache stat(2) performance in particular.

Since this patch changes the protocol version, we take the opportunity to do
a minor re-organization of two of the LVB fields.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
2006-09-24 13:50:46 -07:00
..
2006-08-14 12:54:28 -07:00
2006-08-06 08:57:48 -07:00
2006-09-01 11:39:10 -07:00
2006-08-27 11:01:30 -07:00
2006-08-27 11:01:31 -07:00
2006-06-26 18:35:02 +02:00
2006-01-11 18:42:13 -08:00
2006-01-10 08:01:25 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-07-31 13:28:38 -07:00
2006-09-22 23:24:30 -04:00
2006-01-08 20:12:40 -08:00
2006-08-27 11:01:31 -07:00
2006-04-02 13:37:19 +02:00
2006-04-11 13:53:33 +02:00
2006-07-12 12:52:55 -07:00
2005-10-30 17:37:32 -08:00
2006-08-21 10:02:50 +02:00
2006-06-26 09:58:17 -07:00
2006-08-14 13:10:59 -07:00
2006-03-28 09:16:08 -08:00
2006-06-23 07:42:49 -07:00
2006-06-26 09:58:17 -07:00
2005-11-07 18:18:11 -08:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:11 -08:00
2006-03-23 07:38:11 -08:00
2006-03-23 07:38:12 -08:00
2006-06-23 07:42:49 -07:00
2005-04-16 15:20:36 -07:00