Date: Wed, 8 May 2019 23:52:58 +0000 From: Rick Macklem <rmacklem@uoguelph.ca> To: Peter Eriksson <pen@lysator.liu.se> Cc: "freebsd-fs@freebsd.org" <freebsd-fs@FreeBSD.org> Subject: Re: test hash functions for fsid Message-ID: <YQBPR0101MB2260AA6B2642A5DDE49D4A35DD320@YQBPR0101MB2260.CANPRD01.PROD.OUTLOOK.COM> In-Reply-To: <D27D3F7A-22B3-4EDA-AD61-1B95366D1A2D@lysator.liu.se> References: <YQBPR0101MB2260D82BAE348FB82902508CDD320@YQBPR0101MB2260.CANPRD01.PROD.OUTLOOK.COM>, <D27D3F7A-22B3-4EDA-AD61-1B95366D1A2D@lysator.liu.se>
next in thread | previous in thread | raw e-mail | index | archive | help
--_002_YQBPR0101MB2260AA6B2642A5DDE49D4A35DD320YQBPR0101MB2260_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Peter wrote: >Here=92s the output from a couple of our servers (filur00 with around 2428= 9 zfs >filesystems, balur01 with about 72350 zfs filesystems, filur04 about= 7500 zfs >filesystems): > > >Lpeter86@filur00:~ % ./testhash >H1: max=3D24290 min=3D0 >H2: max=3D24290 min=3D0 >H3: max=3D24290 min=3D0 >H4: max=3D24290 min=3D0 > >Lpeter86@balur01:~ % /tmp/testhash >H1: max=3D73343 min=3D0 >H2: max=3D73343 min=3D0 >H3: max=3D73343 min=3D0 >H4: max=3D73343 min=3D0 > >Lpeter86@filur04:~ % /tmp/testhash >H1: max=3D7560 min=3D0 >H2: max=3D7560 min=3D0 >H3: max=3D7560 min=3D0 >H4: max=3D7560 min=3D0 > I'll admit when I first looked at this, I was baffled;-) Turns out the f_fsid field is just zeros when getmntinfo() is run by non-ro= ot. Please do this again as "root". I have attached a slightly modified version with an additional trivial hash and it calculates variance. Thanks for doing this, rick --_002_YQBPR0101MB2260AA6B2642A5DDE49D4A35DD320YQBPR0101MB2260_ Content-Type: text/plain; name="testhash.c" Content-Description: testhash.c Content-Disposition: attachment; filename="testhash.c"; size=2448; creation-date="Wed, 08 May 2019 23:52:45 GMT"; modification-date="Wed, 08 May 2019 23:52:45 GMT" Content-Transfer-Encoding: base64 I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxlcnIuaD4KI2luY2x1ZGUgPHN5cy9wYXJhbS5o PgojaW5jbHVkZSA8c3lzL2Zudl9oYXNoLmg+CiNpbmNsdWRlIDxzeXMvaGFzaC5oPgojaW5jbHVk ZSA8c3lzL21vdW50Lmg+CgppbnQKbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQp7CglpbnQg aDFbMjU2XSwgaDJbMjU2XSwgaDNbMjU2XSwgaDRbMjU2XSwgaDVbMjU2XSwgaSwgbWF4LCBtaW4s IG51bTsKCXN0cnVjdCBzdGF0ZnMgKm1udGJ1ZnA7CglmbG9hdCBhdmUsIHZhcmksIHRvdHZhcmk7 CgoJZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CgkJaDFbaV0gPSAwOwoJCWgyW2ldID0gMDsK CQloM1tpXSA9IDA7CgkJaDRbaV0gPSAwOwoJCWg1W2ldID0gMDsKCX0KCW51bSA9IGdldG1udGlu Zm8oJm1udGJ1ZnAsIE1OVF9OT1dBSVQpOwoJaWYgKG51bSA9PSAwKQoJCWVycngoMSwgIk11c3Qg YmUgcnVuIGFzIHJvb3QiKTsKCWZvciAoaSA9IDA7IGkgPCBudW07IGkrKykgewoJCWgxW2Zudl8z Ml9idWYoJm1udGJ1ZnBbaV0uZl9mc2lkLCBzaXplb2YoZnNpZF90KSwgMCkgJSAyNTZdKys7CgkJ aDJbZm52XzMyX2J1ZigmbW50YnVmcFtpXS5mX2ZzaWQsIHNpemVvZihmc2lkX3QpLCBGTlYxXzMy X0lOSVQpICUgMjU2XSsrOwoJCWgzW2hhc2gzMl9idWYoJm1udGJ1ZnBbaV0uZl9mc2lkLCBzaXpl b2YoZnNpZF90KSwgMCkgJSAyNTZdKys7CgkJaDRbaGFzaDMyX2J1ZigmbW50YnVmcFtpXS5mX2Zz aWQsIHNpemVvZihmc2lkX3QpLCBIQVNISU5JVCkgJSAyNTZdKys7CgkJaDVbbW50YnVmcFtpXS5m X2ZzaWQudmFsWzBdICUgMjU2XSsrOwoJfQoJYXZlID0gKGZsb2F0KW51bSAvIDI1Ni4wOwoJbWlu ID0gMTAwMDAwMDA7CgltYXggPSAwOwoJdG90dmFyaSA9IDAuMDsKCWZvciAoaSA9IDA7IGkgPCAy NTY7IGkrKykgewoJCWlmIChoMVtpXSA+IG1heCkKCQkJbWF4ID0gaDFbaV07CgkJaWYgKGgxW2ld IDwgbWluKQoJCQltaW4gPSBoMVtpXTsKCQlpZiAoKGZsb2F0KWgxW2ldID4gYXZlKQoJCQl2YXJp ID0gKGZsb2F0KWgxW2ldIC0gYXZlOwoJCWVsc2UKCQkJdmFyaSA9IGF2ZSAtIChmbG9hdCloMVtp XTsKCQl0b3R2YXJpICs9IHZhcmk7Cgl9CglwcmludGYoIkgxOiBtYXg9JWQgbWluPSVkIHRvdHZh cmk9JWZcbiIsIG1heCwgbWluLCB0b3R2YXJpKTsKCW1pbiA9IDEwMDAwMDAwOwoJbWF4ID0gMDsK CXRvdHZhcmkgPSAwLjA7Cglmb3IgKGkgPSAwOyBpIDwgMjU2OyBpKyspIHsKCQlpZiAoaDJbaV0g PiBtYXgpCgkJCW1heCA9IGgyW2ldOwoJCWlmIChoMltpXSA8IG1pbikKCQkJbWluID0gaDJbaV07 CgkJaWYgKChmbG9hdCloMltpXSA+IGF2ZSkKCQkJdmFyaSA9IChmbG9hdCloMltpXSAtIGF2ZTsK CQllbHNlCgkJCXZhcmkgPSBhdmUgLSAoZmxvYXQpaDJbaV07CgkJdG90dmFyaSArPSB2YXJpOwoJ fQoJcHJpbnRmKCJIMjogbWF4PSVkIG1pbj0lZCB0b3R2YXJpPSVmXG4iLCBtYXgsIG1pbiwgdG90 dmFyaSk7CgltaW4gPSAxMDAwMDAwMDsKCW1heCA9IDA7Cgl0b3R2YXJpID0gMC4wOwoJZm9yIChp ID0gMDsgaSA8IDI1NjsgaSsrKSB7CgkJaWYgKGgzW2ldID4gbWF4KQoJCQltYXggPSBoM1tpXTsK CQlpZiAoaDNbaV0gPCBtaW4pCgkJCW1pbiA9IGgzW2ldOwoJCWlmICgoZmxvYXQpaDNbaV0gPiBh dmUpCgkJCXZhcmkgPSAoZmxvYXQpaDNbaV0gLSBhdmU7CgkJZWxzZQoJCQl2YXJpID0gYXZlIC0g KGZsb2F0KWgzW2ldOwoJCXRvdHZhcmkgKz0gdmFyaTsKCX0KCXByaW50ZigiSDM6IG1heD0lZCBt aW49JWQgdG90dmFyaT0lZlxuIiwgbWF4LCBtaW4sIHRvdHZhcmkpOwoJbWluID0gMTAwMDAwMDA7 CgltYXggPSAwOwoJdG90dmFyaSA9IDAuMDsKCWZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykgewoJ CWlmIChoNFtpXSA+IG1heCkKCQkJbWF4ID0gaDRbaV07CgkJaWYgKGg0W2ldIDwgbWluKQoJCQlt aW4gPSBoNFtpXTsKCQlpZiAoKGZsb2F0KWg0W2ldID4gYXZlKQoJCQl2YXJpID0gKGZsb2F0KWg0 W2ldIC0gYXZlOwoJCWVsc2UKCQkJdmFyaSA9IGF2ZSAtIChmbG9hdCloNFtpXTsKCQl0b3R2YXJp ICs9IHZhcmk7Cgl9CglwcmludGYoIkg0OiBtYXg9JWQgbWluPSVkIHRvdHZhcmk9JWZcbiIsIG1h eCwgbWluLCB0b3R2YXJpKTsKCW1pbiA9IDEwMDAwMDAwOwoJbWF4ID0gMDsKCXRvdHZhcmkgPSAw LjA7Cglmb3IgKGkgPSAwOyBpIDwgMjU2OyBpKyspIHsKCQlpZiAoaDVbaV0gPiBtYXgpCgkJCW1h eCA9IGg1W2ldOwoJCWlmIChoNVtpXSA8IG1pbikKCQkJbWluID0gaDVbaV07CgkJaWYgKChmbG9h dCloNVtpXSA+IGF2ZSkKCQkJdmFyaSA9IChmbG9hdCloNVtpXSAtIGF2ZTsKCQllbHNlCgkJCXZh cmkgPSBhdmUgLSAoZmxvYXQpaDVbaV07CgkJdG90dmFyaSArPSB2YXJpOwoJfQoJcHJpbnRmKCJI NTogbWF4PSVkIG1pbj0lZCB0b3R2YXJpPSVmXG4iLCBtYXgsIG1pbiwgdG90dmFyaSk7Cn0K --_002_YQBPR0101MB2260AA6B2642A5DDE49D4A35DD320YQBPR0101MB2260_--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YQBPR0101MB2260AA6B2642A5DDE49D4A35DD320>