Whamcloud - gitweb
LU-957 lfsck: LFSCK main engine
authorFan Yong <yong.fan@whamcloud.com>
Sun, 1 Jul 2012 02:16:10 +0000 (10:16 +0800)
committerAndreas Dilger <adilger@whamcloud.com>
Tue, 3 Jul 2012 01:43:22 +0000 (21:43 -0400)
commitc356794cbe6c89281d1287da280d85301629ed9f
tree841b6ab676356a4e50aa499f2e75e541a24a2030
parentd01d4c697a3c4423587159d58da6e455a5a3551f
LU-957 lfsck: LFSCK main engine

Implement the main engine for Lustre online fsck. The kernel
thread "lfsck" scans the system object table by low layer DT
iteration APIs, and will drives registered scrub component(s)
to check/repair Lustre system.

It is the controller for the whole LFSCK, and controls the
speed, including the low layer OI scrub (for osd-ldiskfs).

For urgent mode, like MDT is restored from file-level backup
against ldiskfs, the OI files are invalided. Under such case,
we need to rebuild the OI files ASAP, then low layer OI scrub
inside osd-ldiskfs ignores the main engine speed control, and
runs with full speed.

Signed-off-by: Fan Yong <yong.fan@whamcloud.com>
Change-Id: If1bd3cfac1f299e964c029e5e9c4cce6432edfa5
Reviewed-on: http://review.whamcloud.com/3169
Tested-by: Hudson
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/include/lustre/Makefile.am
lustre/include/lustre/lustre_lfsck_user.h [new file with mode: 0644]
lustre/include/lustre_fid.h
lustre/mdd/Makefile.in
lustre/mdd/mdd_device.c
lustre/mdd/mdd_internal.h
lustre/mdd/mdd_lfsck.c [new file with mode: 0644]
lustre/mdd/mdd_lproc.c
lustre/osd-ldiskfs/osd_compat.c
lustre/osd-ldiskfs/osd_handler.c