# What is this absurd error?

## mansonmuni

I'm using lvm2 on  my 2-120GB WD SATAS to create one large volume for multimedia storage.  I mount the drive manually, fscking each time before I mount.  At least once every 25 or so mounts, I get a filesystem with errors.  The filesystem is ext3.  Similar problems have persisted across several kernel upgrades within the 2.6.19 to 2.6.23 range.  With 2.6.19 my volumes would go read-only.  Currently with 2.65.23-r6 I get this rather bizrre (from my limited perspective, anyway) error during fsck:

```

e2fsck 1.40.4 (31-Dec-2007)

/dev/SATAS/lvBackup contains a file system with errors, check forced.

Pass 1: Checking inodes, blocks, and sizes

Running additional passes to resolve blocks claimed by more than one inode...

Pass 1B: Rescanning for multiply-claimed blocks

Multiply-claimed block(s) in inode 17924574: 46899439 46899440 46899441 46899442 46899443 46899439 46899440 46899441 46899442 46899443

Multiply-claimed block(s) in inode 22577165: 45921561 45921562 45921563 45921597 45921598 45921599 45921600 45921561 45921562 45921563 45921597 45921598 45921599 45921600

Pass 1C: Scanning directories for inodes with multiply-claimed blocks

Pass 1D: Reconciling multiply-claimed blocks

(There are 2 inodes containing multiply-claimed blocks.)

File /Flix/Harsh_Times/ha.tia-xvid-dvf.r34 (inode #17924574, mod time Wed Mar  5 23:32:42 2008)

  has 10 multiply-claimed block(s), shared with 0 file(s):

Clone multiply-claimed blocks<y>?

```

I know that error messages aren't always grammatically correct, but how can multiply shared blocks be shared with '0 files'.  e2fs wants me always to clone these, so then what happens?  Are there 2 copies of apparently lost blocks of information, because nothing is claiming them?

Does anyone know what this means and what I should do when asked to clone the blocks?

Thanks.

----------

## mansonmuni

Here is a copy of the rest of the e2fsck session I quoted in the original post, including what I did and the outcome:

```

File /Flix/Harsh_Times/ha.tia-xvid-dvf.r34 (inode #17924574, mod time Wed Mar  5 23:32:42 2008)

  has 10 multiply-claimed block(s), shared with 0 file(s):

Clone multiply-claimed blocks<y>? no

Delete file<y>? yes

File /Flix/In_the_Bedroom/ils-itb-cd1.r12.1 (inode #22577165, mod time Sun Feb 24 16:24:21 2008)

  has 14 multiply-claimed block(s), shared with 0 file(s):

Clone multiply-claimed blocks<y>? no

Delete file<y>? no

Pass 2: Checking directory structure

Entry 'ha.tia-xvid-dvf.r34' in /Flix/Harsh_Times (17907762) has deleted/unused inode 17924574.  Clear<y>? yes

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

Block bitmap differences:  -(45921566--45921572) -(46899434--46899438) -(52164980--52164984)

Fix<y>? yes

Free blocks count wrong for group #1401 (0, counted=7).

Fix<y>? yes

Free blocks count wrong for group #1431 (4884, counted=4889).

Fix<y>? yes

Free blocks count wrong for group #1591 (0, counted=5).

Fix<y>? yes

Free blocks count wrong (10945848, counted=10945865).

Fix<y>? yes

/dev/SATAS/lvBackup: ***** FILE SYSTEM WAS MODIFIED *****

/dev/SATAS/lvBackup: ********** WARNING: Filesystem still has errors **********

/dev/SATAS/lvBackup: 2861/29310976 files (28.2% non-contiguous), 47663799/58609664 blocks

```

----------

## mansonmuni

Now I did it differently, but don't understand the consequences of my actions:

```

localhost ~ # fsck /dev/SATAS/lvBackup && mount /lvBackup/

fsck 1.40.4 (31-Dec-2007)

e2fsck 1.40.4 (31-Dec-2007)

/dev/SATAS/lvBackup contains a file system with errors, check forced.

Pass 1: Checking inodes, blocks, and sizes

Running additional passes to resolve blocks claimed by more than one inode...

Pass 1B: Rescanning for multiply-claimed blocks

Multiply-claimed block(s) in inode 22577165: 45921561 45921562 45921563 45921597 45921598 45921599 45921600 45921561 45921562 45921563 45921597 45921598 45921599 45921600

Pass 1C: Scanning directories for inodes with multiply-claimed blocks

Pass 1D: Reconciling multiply-claimed blocks

(There are 1 inodes containing multiply-claimed blocks.)

File /Flix/In_the_Bedroom/ils-itb-cd1.r12.1 (inode #22577165, mod time Sun Feb 24 16:24:21 2008)

  has 14 multiply-claimed block(s), shared with 0 file(s):

Clone multiply-claimed blocks<y>? no

Delete file<y>? yes

Pass 2: Checking directory structure

Entry 'ils-itb-cd1.r12.1' in /Flix/In_the_Bedroom (22577154) has deleted/unused inode 22577165.  Clear<y>? yes

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

/dev/SATAS/lvBackup: ***** FILE SYSTEM WAS MODIFIED *****

/dev/SATAS/lvBackup: 2860/29310976 files (28.1% non-contiguous), 47660138/58609664 blocks

```

I've done this before and can usually go for a couple weeks without having the errors again, but eventually it crops up again.  Anyone know why?

----------

## Hu

As a general note, you should edit your post instead of replying.  Since you replied, you were removed from the list of unanswered posts.

I have not heard of such problems in the code, so I suspect you have a hardware problem.  Your drives should support S.M.A.R.T., so emerge -n sys-apps/smartmontools and run /usr/sbin/smartctl -d ata -t long /dev/sda ; /usr/sbin/smartctl -d ata -t long /dev/sdb.  When it starts, it will print an estimated time to completion.  This could take up to an hour to run all the disk checks.  After it completes, run /usr/sbin/smartctl -a /dev/sda ; /usr/sbin/smartctl -a /dev/sdb.  Post the output from all four smartctl commands.  I am assuming that your drives are sda and sdb, but they could have other names if you have renamed them or if other SCSI or SATA disks were named first.  You can find the names of the underlying physical volumes by running vgdisplay -v /dev/SATAS.  Look near the bottom for the lines labeled PV Name.

I do not experience filesystem corruption often enough to be an expert in this area, but I guess that the "0 file(s)" part means that the blocks were committed both to the file and to free space.

----------

## mansonmuni

Thanks for the tip on posting.  I ran smartctl as suggested, but cannot tell if the test completed or not.  I guess it runs as a background process.  In my case I gave it 3x the suggested time to complete, but could find no discernible output other than the initial acknowledgement that the process had indeed been started.  This is what happened:

Ok, first let me complete your instructions.  I left my machine for several hours and needed to review your post.  After I've completed them, I'll repost.

```

localhost ~ # /usr/sbin/smartctl -d ata -t long /dev/sda ; /usr/sbin/smartctl -d ata -t long /dev/sdb

smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen

Home page is http://smartmontools.sourceforge.net/

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===

Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".

Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.

Testing has begun.

Please wait 53 minutes for test to complete.

Test will complete after Sun Mar  9 12:25:57 2008

Use smartctl -X to abort test.

smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen

Home page is http://smartmontools.sourceforge.net/

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===

Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".

Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.

Testing has begun.

Please wait 53 minutes for test to complete.

Test will complete after Sun Mar  9 12:25:57 2008

Use smartctl -X to abort test.

```

I don't know how to interpret this, but I'm reading the man page and the faq.  Any help is appreciated.  Thanks for your help so far.

----------

## mansonmuni

Here are the results of the second step:

```

localhost ~ # /usr/sbin/smartctl -a /dev/sda ; /usr/sbin/smartctl -a /dev/sdb

smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen

Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===

Model Family:     Western Digital Caviar SE (Serial ATA) family

Device Model:     WDC WD1200JD-00FYB0

Serial Number:    WD-WMALC1320416

Firmware Version: 02.05D02

User Capacity:    120,034,123,776 bytes

Device is:        In smartctl database [for details use: -P show]

ATA Version is:   6

ATA Standard is:  Exact ATA specification draft version not indicated

Local Time is:    Sun Mar  9 15:35:22 2008 CDT

SMART support is: Available - device has SMART capability.

SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===

SMART overall-health self-assessment test result: PASSED

General SMART Values:

Offline data collection status:  (0x82) Offline data collection activity

                                        was completed without error.

                                        Auto Offline Data Collection: Enabled.

Self-test execution status:      (   0) The previous self-test routine completed

                                        without error or no self-test has ever

                                        been run.

Total time to complete Offline

data collection:                 (3796) seconds.

Offline data collection

capabilities:                    (0x79) SMART execute Offline immediate.

                                        No Auto Offline data collection support.

                                        Suspend Offline collection upon new

                                        command.

                                        Offline surface scan supported.

                                        Self-test supported.

                                        Conveyance Self-test supported.

                                        Selective Self-test supported.

SMART capabilities:            (0x0003) Saves SMART data before entering

                                        power-saving mode.

                                        Supports SMART auto save timer.

Error logging capability:        (0x01) Error logging supported.

                                        No General Purpose Logging support.

Short self-test routine

recommended polling time:        (   2) minutes.

Extended self-test routine

recommended polling time:        (  53) minutes.

Conveyance self-test routine

recommended polling time:        (   5) minutes.

SMART Attributes Data Structure revision number: 16

Vendor Specific SMART Attributes with Thresholds:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE

  1 Raw_Read_Error_Rate     0x000b   200   200   051    Pre-fail  Always       -       0

  3 Spin_Up_Time            0x0007   153   152   021    Pre-fail  Always       -       2850

  4 Start_Stop_Count        0x0032   099   099   040    Old_age   Always       -       1914

  5 Reallocated_Sector_Ct   0x0033   197   197   140    Pre-fail  Always       -       36

  7 Seek_Error_Rate         0x000b   200   200   051    Pre-fail  Always       -       0

  9 Power_On_Hours          0x0032   074   074   000    Old_age   Always       -       19283

 10 Spin_Retry_Count        0x0013   100   100   051    Pre-fail  Always       -       0

 11 Calibration_Retry_Count 0x0013   100   100   051    Pre-fail  Always       -       0

 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       1913

194 Temperature_Celsius     0x0022   117   253   000    Old_age   Always       -       33

196 Reallocated_Event_Count 0x0032   198   198   000    Old_age   Always       -       2

197 Current_Pending_Sector  0x0012   200   200   000    Old_age   Always       -       0

198 Offline_Uncorrectable   0x0012   200   200   000    Old_age   Always       -       0

199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0

200 Multi_Zone_Error_Rate   0x0009   200   155   051    Pre-fail  Offline      -       0

SMART Error Log Version: 1

No Errors Logged

SMART Self-test log structure revision number 1

Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error

# 1  Extended offline    Completed without error       00%       711         -

SMART Selective self-test log data structure revision number 1

 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS

    1        0        0  Not_testing

    2        0        0  Not_testing

    3        0        0  Not_testing

    4        0        0  Not_testing

    5        0        0  Not_testing

Selective self-test flags (0x0):

  After scanning selected spans, do NOT read-scan remainder of disk.

If Selective self-test is pending on power-up, resume after 0 minute delay.

smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen

Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===

Model Family:     Western Digital Caviar SE (Serial ATA) family

Device Model:     WDC WD1200JD-00FYB0

Serial Number:    WD-WMALC1305404

Firmware Version: 02.05D02

User Capacity:    120,034,123,776 bytes

Device is:        In smartctl database [for details use: -P show]

ATA Version is:   6

ATA Standard is:  Exact ATA specification draft version not indicated

Local Time is:    Sun Mar  9 15:35:22 2008 CDT

SMART support is: Available - device has SMART capability.

SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===

SMART overall-health self-assessment test result: PASSED

General SMART Values:

Offline data collection status:  (0x82) Offline data collection activity

                                        was completed without error.

                                        Auto Offline Data Collection: Enabled.

Self-test execution status:      (   0) The previous self-test routine completed

                                        without error or no self-test has ever

                                        been run.

Total time to complete Offline

data collection:                 (3796) seconds.

Offline data collection

capabilities:                    (0x79) SMART execute Offline immediate.

                                        No Auto Offline data collection support.

                                        Suspend Offline collection upon new

                                        command.

                                        Offline surface scan supported.

                                        Self-test supported.

                                        Conveyance Self-test supported.

                                        Selective Self-test supported.

SMART capabilities:            (0x0003) Saves SMART data before entering

                                        power-saving mode.

                                        Supports SMART auto save timer.

Error logging capability:        (0x01) Error logging supported.

                                        No General Purpose Logging support.

Short self-test routine

recommended polling time:        (   2) minutes.

Extended self-test routine

recommended polling time:        (  53) minutes.

Conveyance self-test routine

recommended polling time:        (   5) minutes.

SMART Attributes Data Structure revision number: 16

Vendor Specific SMART Attributes with Thresholds:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE

  1 Raw_Read_Error_Rate     0x000b   200   200   051    Pre-fail  Always       -       0

  3 Spin_Up_Time            0x0007   151   146   021    Pre-fail  Always       -       2950

  4 Start_Stop_Count        0x0032   099   099   040    Old_age   Always       -       1914

  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0

  7 Seek_Error_Rate         0x000b   200   200   051    Pre-fail  Always       -       0

  9 Power_On_Hours          0x0032   074   074   000    Old_age   Always       -       19216

 10 Spin_Retry_Count        0x0013   100   100   051    Pre-fail  Always       -       0

 11 Calibration_Retry_Count 0x0013   100   100   051    Pre-fail  Always       -       0

 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       1913

194 Temperature_Celsius     0x0022   117   253   000    Old_age   Always       -       33

196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0

197 Current_Pending_Sector  0x0012   200   200   000    Old_age   Always       -       0

198 Offline_Uncorrectable   0x0012   200   200   000    Old_age   Always       -       0

199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0

200 Multi_Zone_Error_Rate   0x0009   200   155   051    Pre-fail  Offline      -       0

SMART Error Log Version: 1

No Errors Logged

SMART Self-test log structure revision number 1

Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error

# 1  Extended offline    Completed without error       00%       644         -

SMART Selective self-test log data structure revision number 1

 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS

    1        0        0  Not_testing

    2        0        0  Not_testing

    3        0        0  Not_testing

    4        0        0  Not_testing

    5        0        0  Not_testing

Selective self-test flags (0x0):

  After scanning selected spans, do NOT read-scan remainder of disk.

If Selective self-test is pending on power-up, resume after 0 minute delay.

```

----------

## Monkeh

You might want to try the second step again now the tests will have actually completed.

----------

## Hu

Those results look normal to me.  Your problem seems to be somewhere else.  Do you have any other hardware that you can swap in to eliminate various components as potentially problematic?  My first guess would be the disk controller, but that is only a guess.  At this point, there are too many potential candidates to justify buying replacement parts until you find the right one.

----------

## mansonmuni

Thanks for your reply.  My SATA controller is sil3112A and is onboard.  I don't have any spare parts lying around right now.  Even if I did, it might be a little difficult nailing down the problem, given the relatively infrequent and sporadic nature of the symptoms.  I did update my bios, however.  That includes several updates to the SATA ROM.  If there was some bug in the original code, maybe it got changed in one of the updates.  I'll post back if I get through a month without anymore filesystem errors.  So far so good, and the volumes do get a good amount of use every day.

Thanks for your help and the intro to smartmontools.  It will come in handy in the future, I'm sure.

----------

## mansonmuni

One month has passed since my bios/SATA update without any more problems.  I've had fewer mounts but a lot more uptime with plenty of use--deleting and adding large files, large file transfers, streaming over the network, etc.  I'd say I've unmounted and mounted the volumes less than a dozen times in past month.  I've done a couple deep world updates. Everything's running smoothly so far.  I'll post back in another month and label this one solved if there are no more problems.  Thanks for your help.

----------

