Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-3243

sanity.sh test_77i: algo set to crc32 instead of adler

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.4.1, Lustre 2.5.0
    • None
    • None
    • 3
    • 7966

    Description

      I've just seen this test failure:

      'algo set to crc32 instead of adler'

      https://maloo.whamcloud.com/test_sets/eae87668-aee2-11e2-a8d0-52540035b04c

      against my patch:

      http://review.whamcloud.com/#change,3440

      Attachments

        Issue Links

          Activity

            [LU-3243] sanity.sh test_77i: algo set to crc32 instead of adler
            pjones Peter Jones added a comment -

            Landed for 2.4.1 and 2.5.0

            pjones Peter Jones added a comment - Landed for 2.4.1 and 2.5.0

            Richard,
            what CPU is being used in this testing? The output from /proc/cpuinfo would be useful.

            If there are CPUs that support the PCLMULQDQ instruction on both client and OSS, and the checksums are at least 2x faster using crc32 than adler, it makes sense to choose the crc32 checksum by default.

            IMHO, the test seems a bit broken in that it is expecting adler, when in fact crc32 has always been a supported algorithm. I guess the test was written this way because adler was hard-coded as the default (since it was always faster than crc32 in software) and has been around sufficiently long to be supported in all releases. However, the client is still at liberty to choose crc32 if it is faster...

            I also noticed in test_77c that there is an error being printed:

            error: set_param: writing to file /proc/fs/lustre/osc/lustre-OST0000-osc-ffff88007b2f9800/checksum_type: Invalid argument
            

            but is lacking information for the user about why it is failing (the test itself is trying to set the checksum type to crc32 at this point). I submitted http://review.whamcloud.com/6205 to improve the error message, but that is not fixing the bug here.

            adilger Andreas Dilger added a comment - Richard, what CPU is being used in this testing? The output from /proc/cpuinfo would be useful. If there are CPUs that support the PCLMULQDQ instruction on both client and OSS, and the checksums are at least 2x faster using crc32 than adler, it makes sense to choose the crc32 checksum by default. IMHO, the test seems a bit broken in that it is expecting adler, when in fact crc32 has always been a supported algorithm. I guess the test was written this way because adler was hard-coded as the default (since it was always faster than crc32 in software) and has been around sufficiently long to be supported in all releases. However, the client is still at liberty to choose crc32 if it is faster... I also noticed in test_77c that there is an error being printed: error: set_param: writing to file /proc/fs/lustre/osc/lustre-OST0000-osc-ffff88007b2f9800/checksum_type: Invalid argument but is lacking information for the user about why it is failing (the test itself is trying to set the checksum type to crc32 at this point). I submitted http://review.whamcloud.com/6205 to improve the error message, but that is not fixing the bug here.

            People

              wc-triage WC Triage
              rhenwood Richard Henwood (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: