diff -ur reiserfsprogs-3.6.4/fsck/semantic_rebuild.c reiserfsprogs-3.6.4.suse/fsck/semantic_rebuild.c --- reiserfsprogs-3.6.4/fsck/semantic_rebuild.c 2002-09-13 05:41:41.000000000 -0400 +++ reiserfsprogs-3.6.4.suse/fsck/semantic_rebuild.c 2003-02-11 10:36:49.000000000 -0500 @@ -169,7 +169,8 @@ int ret = 0; if (S_ISREG (mode) || S_ISLNK (mode) || S_ISDIR (mode)) { - if (*blocks != sd_blocks) { + if ((!S_ISLNK(mode) && *blocks != sd_blocks) || + (S_ISLNK(mode) && *blocks != sd_blocks && (ROUND_UP(*blocks) != sd_blocks))) { fsck_log ("vpf-10680: The %s %K has the wrong block count in the StatData " "(%u)%s(%u)\n", S_ISDIR (mode) ? "directory" : "file", key, sd_blocks, fsck_mode(fs) == FSCK_CHECK ? ", should be " : " - corrected to ", *blocks);