UBIFS: mark unused key objects as invalid
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Sun, 22 Aug 2010 04:10:12 +0000 (07:10 +0300)
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Mon, 30 Aug 2010 07:19:08 +0000 (10:19 +0300)
commitba2f48f70efcf4d82deafb2be327ed64b1f043a5
treea05dd8287bb6588117f2a2a921b54f8ebf3425f4
parent5b7a3a2e1b0cbc7d5410a8da60dac266a3e19268
UBIFS: mark unused key objects as invalid

When scanning the flash, UBIFS builds a list of flash nodes of type
'struct ubifs_scan_node'. Each scanned node has a 'snod->key' field. This field
is valid for most of the nodes, but invalid for some node type, e.g., truncation
nodes. It is safer to explicitly initialize such keys to something invalid,
rather than leaving them initialized to all zeros, which has key type of
UBIFS_INO_KEY.

This patch introduces new "fake" key type UBIFS_INVALID_KEY and initializes
unused 'snod->key' objects to this type. It also adds debugging assertions in
the TNC code to make sure no one ever tries to look these nodes up in the TNC.

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
fs/ubifs/key.h
fs/ubifs/scan.c
fs/ubifs/tnc.c
fs/ubifs/ubifs.h