Re: [PATCH 4/4] repair: get rid of BADFSINO

Arkadiusz Miśkiewicz
2014-07-01T13:44:02Z

On Tuesday 01 of July 2014, Dave Chinner wrote:
> From: Dave Chinner <dchinner@redhat.com>

> so get rid of BADFSINO and only use the name junking to mark
> dirents as bad. This prevents the directory data block verifier from
> triggering on bad inode numbers, and so the later reread of the
> block will find the junked entries correctly.
>
> Signed-off-by: Dave Chinner <dchinner@redhat.com>
> ---
> repair/dir2.c | 18 +++++-------------
> 1 file changed, 5 insertions(+), 13 deletions(-)

> @@ -1427,11 +1419,11 @@ _("entry at block %u offset %" PRIdPTR " in
> directory inode %" PRIu64 " has ille /*
> * Now we can mark entries with BADFSINO's bad.
> */

Comment above needs update.

> - if (!no_modify && ent_ino == BADFSINO) {
> - dep->name[0] = '/';
> + if (!no_modify && dep->name[0] == '/') {
> *dirty = 1;
> junkit = 0;
> }
> +
> /*
> * Special .. entry processing.
> */

--
Arkadiusz Miśkiewicz, arekm / maven.pl