> -----Original Message----- > From: ceph-devel-owner@xxxxxxxxxxxxxxx [mailto:ceph-devel- > owner@xxxxxxxxxxxxxxx] On Behalf Of Dan van der Ster > > Hi all, > > We've recently experienced a broken router than was corrupting packets in > way that the tcp checksums were still valid. There has been some resulting > data corruption -- thus far the confirmed corruptions were outside of Ceph > communications -- but it has made us want to double check the Ceph > messenger crc32c code. > > We have crc32c enabled (as default), and I expected to find some "bad crc" > messages logged on the clients and/or osds, but thus far we haven't found > any. > > Is there a unit test which validates this mechanism, e.g. one which > intentionally corrupts a Message then confirms that the crc code drops it? I > didn't find anything relevant in src/test/, but I'm not too familiar with the > framework. Actually, all it takes is just to disable CRC in configuration on one node (or even daemon). It'll cause to put zeros in CRC fields in all messages sent, triggering CRC check failures cluster-wide (on remaining, unaffected nodes/daemons). There's also internal CRC32 calculator test in src/test/common/test_crc32c.cc. With best regards / Pozdrawiam Piotr Dałek ��.n��������+%������w��{.n����z��u���ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f