Date: Wed, 10 Dec 2014 10:01:22 +0100 (CET) From: Arnaud YSMAL <arnaud.ysmal@stormshield.eu> To: freebsd-hackers@FreeBSD.org, freebsd-net@FreeBSD.org Cc: damien.deville@stormshield.eu, andre@FreeBSD.org, Fabien THOMAS <fabien.thomas@stormshield.eu> Subject: Issue with the number of jumbo frames after tweaking Message-ID: <536944673.989749.1418202082741.JavaMail.zimbra@stormshield.eu> In-Reply-To: <940402442.797031.1418139811947.JavaMail.zimbra@stormshield.eu>
next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_989747_1238867947.1418202082738 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Hi, Using sysctl to set a new value to kern.ipc.nmbjumbo9 or kern.ipc.nmbjumbo16 leads to a wrong value. This appears in FreeBSD 9.3 with the revision 254515 (https://svnweb.freebsd.org/base?view=revision&revision=254515) which MFC the revision 243631. The values are respectively 3 and 4 times bigger than expected. Example on a FreeBSD 9.3 (amd64): # sysctl kern.ipc.nmbjumbo9=224000 kern.ipc.nmbjumbo9: 223263 -> 672000 The sysctls functions in sys/kern/kern_mbuf.c got the new value from the uma_zone_set_max (sys/vm/uma_core.c) function. It looks like the formula used in uma_core.c to compute the number of items based on the number of pages is not always the same (uk_ppera is sometimes missing). In the enclosed patch I assumed that the correct formula to compute the number of items is: (pages / uk_ppera) * uk_ipers Is it normal that in these sysctls the comparison between nmbufs and the sum of jumbos + clusters (added in the same revision) does not use the new value requested by the user? Arnaud ------=_Part_989747_1238867947.1418202082738 Content-Type: text/x-patch; name=uma_core.patch Content-Disposition: attachment; filename=uma_core.patch Content-Transfer-Encoding: base64 LS0tIHN5cy92bS91bWFfY29yZS5jLm9yaWcJMjAxNC0xMi0wOSAxNDoxODoyNy4wMDAwMDAwMDAg KzAwMDAKKysrIHN5cy92bS91bWFfY29yZS5jCTIwMTQtMTItMDkgMTQ6NDc6NTMuMDAwMDAwMDAw ICswMDAwCkBAIC0xNDE2LDcgKzE0MTYsNyBAQAogCXByaW50ZigiVU1BOiAlcyglcCkgc2l6ZSAl ZCglZCkgZmxhZ3MgJSN4IGlwZXJzICVkIHBwZXJhICVkIG91dCAlZCBmcmVlICVkXG4iLAogCSAg ICB6b25lLT51el9uYW1lLCB6b25lLCBrZWctPnVrX3NpemUsIGtlZy0+dWtfcnNpemUsIGtlZy0+ dWtfZmxhZ3MsCiAJICAgIGtlZy0+dWtfaXBlcnMsIGtlZy0+dWtfcHBlcmEsCi0JICAgIChrZWct PnVrX2lwZXJzICoga2VnLT51a19wYWdlcykgLSBrZWctPnVrX2ZyZWUsIGtlZy0+dWtfZnJlZSk7 CisJICAgIChrZWctPnVrX3BhZ2VzIC8ga2VnLT51a19wcGVyYSkgKiBrZWctPnVrX2lwZXJzICAt IGtlZy0+dWtfZnJlZSwga2VnLT51a19mcmVlKTsKICNlbmRpZgogCiAJTElTVF9JTlNFUlRfSEVB RCgma2VnLT51a196b25lcywgem9uZSwgdXpfbGluayk7CkBAIC0yODQ3LDE2ICsyODQ3LDE5IEBA CiB1bWFfem9uZV9zZXRfbWF4KHVtYV96b25lX3Qgem9uZSwgaW50IG5pdGVtcykKIHsKIAl1bWFf a2VnX3Qga2VnOworCWludCBybml0ZW1zOwogCiAJWk9ORV9MT0NLKHpvbmUpOwogCWtlZyA9IHpv bmVfZmlyc3Rfa2VnKHpvbmUpOwogCWtlZy0+dWtfbWF4cGFnZXMgPSAobml0ZW1zIC8ga2VnLT51 a19pcGVycykgKiBrZWctPnVrX3BwZXJhOwotCWlmIChrZWctPnVrX21heHBhZ2VzICoga2VnLT51 a19pcGVycyA8IG5pdGVtcykKKwlybml0ZW1zID0gKGtlZy0+dWtfbWF4cGFnZXMgLyBrZWctPnVr X3BwZXJhKSAqIGtlZy0+dWtfaXBlcnM7CisJaWYgKHJuaXRlbXMgPCBuaXRlbXMpIHsKIAkJa2Vn LT51a19tYXhwYWdlcyArPSBrZWctPnVrX3BwZXJhOwotCW5pdGVtcyA9IGtlZy0+dWtfbWF4cGFn ZXMgKiBrZWctPnVrX2lwZXJzOworCQlybml0ZW1zKys7CisJfQogCVpPTkVfVU5MT0NLKHpvbmUp OwogCi0JcmV0dXJuIChuaXRlbXMpOworCXJldHVybiAocm5pdGVtcyk7CiB9CiAKIC8qIFNlZSB1 bWEuaCAqLwpAQCAtMjg2OCw3ICsyODcxLDcgQEAKIAogCVpPTkVfTE9DSyh6b25lKTsKIAlrZWcg PSB6b25lX2ZpcnN0X2tlZyh6b25lKTsKLQluaXRlbXMgPSBrZWctPnVrX21heHBhZ2VzICoga2Vn LT51a19pcGVyczsKKwluaXRlbXMgPSAoa2VnLT51a19tYXhwYWdlcyAvIGtlZy0+dWtfcHBlcmEp ICoga2VnLT51a19pcGVyczsKIAlaT05FX1VOTE9DSyh6b25lKTsKIAogCXJldHVybiAobml0ZW1z KTsKQEAgLTMxNTYsNyArMzE1OSw3IEBACiAJICAgICJvdXQgJWQgZnJlZSAlZCBsaW1pdCAlZFxu IiwKIAkgICAga2VnLT51a19uYW1lLCBrZWcsIGtlZy0+dWtfc2l6ZSwga2VnLT51a19yc2l6ZSwg a2VnLT51a19mbGFncywKIAkgICAga2VnLT51a19pcGVycywga2VnLT51a19wcGVyYSwKLQkgICAg KGtlZy0+dWtfaXBlcnMgKiBrZWctPnVrX3BhZ2VzKSAtIGtlZy0+dWtfZnJlZSwga2VnLT51a19m cmVlLAorCSAgICAoa2VnLT51a19wYWdlcyAvIGtlZy0+dWtfcHBlcmEpICoga2VnLT51a19pcGVy cyAtIGtlZy0+dWtfZnJlZSwga2VnLT51a19mcmVlLAogCSAgICAoa2VnLT51a19tYXhwYWdlcyAv IGtlZy0+dWtfcHBlcmEpICoga2VnLT51a19pcGVycyk7CiAJcHJpbnRmKCJQYXJ0IHNsYWJzOlxu Iik7CiAJTElTVF9GT1JFQUNIKHNsYWIsICZrZWctPnVrX3BhcnRfc2xhYiwgdXNfbGluaykK ------=_Part_989747_1238867947.1418202082738--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?536944673.989749.1418202082741.JavaMail.zimbra>