Date: Fri, 25 Apr 2008 19:03:56 +0900 From: gnn@freebsd.org To: arch@freebsd.org Subject: Accounting for mbufs and clusters assigned to a socket buffer Message-ID: <m2bq3y6yk3.wl%gnn@neville-neil.com>
next in thread | raw e-mail | index | archive | help
--Multipart_Fri_Apr_25_19:03:56_2008-1 Content-Type: text/plain; charset=US-ASCII Howdy, The following patch updates the kernel (CURRENT as of 23 April or so) and netstat(1) to show not only the bytes in the receive and send queues but also the mbuf and cluster usage per socket buffer. I'd be interested in people's comments on this. I'd like to extend such counting to show more information, in particular how much of a cluster or mbuf is actually in use. Best, George --Multipart_Fri_Apr_25_19:03:56_2008-1 Content-Type: application/octet-stream; type=patch Content-Disposition: attachment; filename="mbuf_count.diff" Content-Transfer-Encoding: base64 SW5kZXg6IHN5cy9rZXJuL3VpcGNfc29ja2J1Zi5jCj09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21l L25jdnMvc3JjL3N5cy9rZXJuL3VpcGNfc29ja2J1Zi5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAx LjE3NgpkaWZmIC11IC1yMS4xNzYgdWlwY19zb2NrYnVmLmMKLS0tIHN5cy9rZXJuL3VpcGNfc29j a2J1Zi5jCTQgRmViIDIwMDggMTI6MjU6MTMgLTAwMDAJMS4xNzYKKysrIHN5cy9rZXJuL3VpcGNf c29ja2J1Zi5jCTI0IEFwciAyMDA4IDA3OjIwOjMzIC0wMDAwCkBAIC0xMDI3LDYgKzEwMjcsOCBA QAogCXhzYi0+c2JfY2MgPSBzYi0+c2JfY2M7CiAJeHNiLT5zYl9oaXdhdCA9IHNiLT5zYl9oaXdh dDsKIAl4c2ItPnNiX21iY250ID0gc2ItPnNiX21iY250OworCXhzYi0+c2JfbWNudCA9IHNiLT5z Yl9tY250OwkKKwl4c2ItPnNiX2NjbnQgPSBzYi0+c2JfY2NudDsKIAl4c2ItPnNiX21ibWF4ID0g c2ItPnNiX21ibWF4OwogCXhzYi0+c2JfbG93YXQgPSBzYi0+c2JfbG93YXQ7CiAJeHNiLT5zYl9m bGFncyA9IHNiLT5zYl9mbGFnczsKSW5kZXg6IHN5cy9zeXMvc29ja2V0dmFyLmgKPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQpSQ1MgZmlsZTogL2hvbWUvbmN2cy9zcmMvc3lzL3N5cy9zb2NrZXR2YXIuaCx2CnJldHJpZXZp bmcgcmV2aXNpb24gMS4xNjIKZGlmZiAtdSAtcjEuMTYyIHNvY2tldHZhci5oCi0tLSBzeXMvc3lz L3NvY2tldHZhci5oCTQgRmViIDIwMDggMTI6MjU6MTMgLTAwMDAJMS4xNjIKKysrIHN5cy9zeXMv c29ja2V0dmFyLmgJMjQgQXByIDIwMDggMDc6MjA6NDQgLTAwMDAKQEAgLTExMCw2ICsxMTAsOCBA QAogCQl1X2ludAlzYl9jYzsJCS8qIChjL2QpIGFjdHVhbCBjaGFycyBpbiBidWZmZXIgKi8KIAkJ dV9pbnQJc2JfaGl3YXQ7CS8qIChjL2QpIG1heCBhY3R1YWwgY2hhciBjb3VudCAqLwogCQl1X2lu dAlzYl9tYmNudDsJLyogKGMvZCkgY2hhcnMgb2YgbWJ1ZnMgdXNlZCAqLworCQl1X2ludCAgIHNi X21jbnQ7ICAgICAgICAvKiBudW1iZXIgb2YgbWJ1ZnMgaW4gYnVmZmVyICovCisJCXVfaW50ICAg c2JfY2NudDsgICAgICAgIC8qIG51bWJlciBvZiBjbHVzdGVycyBpbiBidWZmZXIgKi8KIAkJdV9p bnQJc2JfbWJtYXg7CS8qIChjL2QpIG1heCBjaGFycyBvZiBtYnVmcyB0byB1c2UgKi8KIAkJdV9p bnQJc2JfY3RsOwkJLyogKGMvZCkgbm9uLWRhdGEgY2hhcnMgaW4gYnVmZmVyICovCiAJCWludAlz Yl9sb3dhdDsJLyogKGMvZCkgbG93IHdhdGVyIG1hcmsgKi8KQEAgLTI1OCw2ICsyNjAsOCBAQAog CQl1X2ludAlzYl9jYzsKIAkJdV9pbnQJc2JfaGl3YXQ7CiAJCXVfaW50CXNiX21iY250OworCQl1 X2ludCAgIHNiX21jbnQ7CisJCXVfaW50ICAgc2JfY2NudDsKIAkJdV9pbnQJc2JfbWJtYXg7CiAJ CWludAlzYl9sb3dhdDsKIAkJaW50CXNiX3RpbWVvOwpAQCAtMzE5LDggKzMyMywxMSBAQAogCWlm ICgobSktPm1fdHlwZSAhPSBNVF9EQVRBICYmIChtKS0+bV90eXBlICE9IE1UX09PQkRBVEEpIFwK IAkJKHNiKS0+c2JfY3RsICs9IChtKS0+bV9sZW47IFwKIAkoc2IpLT5zYl9tYmNudCArPSBNU0la RTsgXAotCWlmICgobSktPm1fZmxhZ3MgJiBNX0VYVCkgXAorCShzYiktPnNiX21jbnQgKz0gMTsg XAorCWlmICgobSktPm1fZmxhZ3MgJiBNX0VYVCkgeyBcCiAJCShzYiktPnNiX21iY250ICs9ICht KS0+bV9leHQuZXh0X3NpemU7IFwKKwkJKHNiKS0+c2JfY2NudCArPSAxOyBcCisJfSBcCiB9CiAK IC8qIGFkanVzdCBjb3VudGVycyBpbiBzYiByZWZsZWN0aW5nIGZyZWVpbmcgb2YgbSAqLwpAQCAt MzI5LDggKzMzNiwxMSBAQAogCWlmICgobSktPm1fdHlwZSAhPSBNVF9EQVRBICYmIChtKS0+bV90 eXBlICE9IE1UX09PQkRBVEEpIFwKIAkJKHNiKS0+c2JfY3RsIC09IChtKS0+bV9sZW47IFwKIAko c2IpLT5zYl9tYmNudCAtPSBNU0laRTsgXAotCWlmICgobSktPm1fZmxhZ3MgJiBNX0VYVCkgXAor CShzYiktPnNiX21jbnQgLT0gMTsgXAorCWlmICgobSktPm1fZmxhZ3MgJiBNX0VYVCkgeyBcCiAJ CShzYiktPnNiX21iY250IC09IChtKS0+bV9leHQuZXh0X3NpemU7IFwKKwkJKHNiKS0+c2JfY2Nu dCAtPSAxOyBcCisJfSBcCiAJaWYgKChzYiktPnNiX3NuZHB0ciA9PSAobSkpIHsgXAogCQkoc2Ip LT5zYl9zbmRwdHIgPSBOVUxMOyBcCiAJCShzYiktPnNiX3NuZHB0cm9mZiA9IDA7IFwKSW5kZXg6 IHVzci5iaW4vbmV0c3RhdC9pbmV0LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUvbmN2cy9z cmMvdXNyLmJpbi9uZXRzdGF0L2luZXQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS44MgpkaWZm IC11IC1yMS44MiBpbmV0LmMKLS0tIHVzci5iaW4vbmV0c3RhdC9pbmV0LmMJNCBKYW4gMjAwOCAw MzowOToyOCAtMDAwMAkxLjgyCisrKyB1c3IuYmluL25ldHN0YXQvaW5ldC5jCTI0IEFwciAyMDA4 IDA3OjIwOjU3IC0wMDAwCkBAIC0xNDIsNiArMTQyLDggQEAKIAl4c2ItPnNiX2NjID0gc2ItPnNi X2NjOwogCXhzYi0+c2JfaGl3YXQgPSBzYi0+c2JfaGl3YXQ7CiAJeHNiLT5zYl9tYmNudCA9IHNi LT5zYl9tYmNudDsKKwl4c2ItPnNiX21jbnQgPSBzYi0+c2JfbWNudDsKKwl4c2ItPnNiX2NjbnQg PSBzYi0+c2JfY2NudDsKIAl4c2ItPnNiX21ibWF4ID0gc2ItPnNiX21ibWF4OwogCXhzYi0+c2Jf bG93YXQgPSBzYi0+c2JfbG93YXQ7CiAJeHNiLT5zYl9mbGFncyA9IHNiLT5zYl9mbGFnczsKQEAg LTQwNyw5ICs0MDksMTEgQEAKIAkJCQkgICAgIlByb3RvIiwgIkxpc3RlbiIsICJMb2NhbCBBZGRy ZXNzIik7CiAJCQllbHNlCiAJCQkJcHJpbnRmKChBZmxhZyAmJiAhV2ZsYWcpID8KLQkJIiUtNS41 cyAlLTYuNnMgJS02LjZzICAlLTE4LjE4cyAlLTE4LjE4cyAlc1xuIiA6Ci0JCSIlLTUuNXMgJS02 LjZzICUtNi42cyAgJS0yMi4yMnMgJS0yMi4yMnMgJXNcbiIsCisJCSIlLTUuNXMgJS02LjZzICUt Ni42cyAlLTYuNnMgJS02LjZzICUtNi42cyAlLTYuNnMgJS0xOC4xOHMgJS0xOC4xOHMgJXNcbiIg OgorCQkiJS01LjVzICUtNi42cyAlLTYuNnMgJS02LjZzICUtNi42cyAlLTYuNnMgJS02LjZzICAl LTIyLjIycyAlLTIyLjIycyAlc1xuIiwKIAkJCQkgICAgIlByb3RvIiwgIlJlY3YtUSIsICJTZW5k LVEiLAorCQkJCSAgICAiUmVjdi1NIiwgIlNlbmQtTSIsCisJCQkJICAgICJSZWN2LUMiLCAiU2Vu ZC1DIiwKIAkJCQkgICAgIkxvY2FsIEFkZHJlc3MiLCAiRm9yZWlnbiBBZGRyZXNzIiwKIAkJCQkg ICAgIihzdGF0ZSkiKTsKIAkJCWZpcnN0ID0gMDsKQEAgLTQzOCw3ICs0NDIsMTAgQEAKIAkJCSAg ICBzby0+c29faW5jcWxlbiwgc28tPnNvX3FsaW1pdCk7CiAJCQlwcmludGYoIiUtMTQuMTRzICIs IGJ1ZjEpOwogCQl9IGVsc2UgewotCQkJcHJpbnRmKCIlNnUgJTZ1ICAiLCBzby0+c29fcmN2LnNi X2NjLCBzby0+c29fc25kLnNiX2NjKTsKKwkJCXByaW50ZigiJTZ1ICU2dSAlNnUgJTZ1ICU2dSAl NnUgICIsIAorCQkJICAgICAgIHNvLT5zb19yY3Yuc2JfY2MsIHNvLT5zb19zbmQuc2JfY2MsIAor CQkJICAgICAgIHNvLT5zb19yY3Yuc2JfbWNudCwgc28tPnNvX3NuZC5zYl9tY250LAorCQkJICAg ICAgIHNvLT5zb19yY3Yuc2JfY2NudCwgc28tPnNvX3NuZC5zYl9jY250KTsKIAkJfQogCQlpZiAo bnVtZXJpY19wb3J0KSB7CiAJCQlpZiAoaW5wLT5pbnBfdmZsYWcgJiBJTlBfSVBWNCkgewo= --Multipart_Fri_Apr_25_19:03:56_2008-1--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?m2bq3y6yk3.wl%gnn>