Date: Tue, 24 Mar 2015 10:26:48 +0100 (CET) From: Emeric POUPON <emeric.poupon@stormshield.eu> To: Adrian Chadd <adrian@freebsd.org> Cc: Hans Petter Selasky <hps@selasky.org>, freebsd-net <freebsd-net@freebsd.org> Subject: Re: Fragment questions Message-ID: <1776547746.25937476.1427189208729.JavaMail.zimbra@stormshield.eu> In-Reply-To: <CAJ-Vmo=a6nzfRFH1cu0VefGk1opJf4WAt6u7ugT0uRMbjWvA-A@mail.gmail.com> References: <522774578.25519037.1426765109046.JavaMail.zimbra@stormshield.eu> <550AC709.1050404@selasky.org> <2047974073.25663527.1426858267777.JavaMail.zimbra@stormshield.eu> <550C5FC6.6020401@selasky.org> <CAJ-Vmo=LkFc4sqbBSVeLE=7adV1nCuRDUO4ECUv8r6EYp=Oezw@mail.gmail.com> <550C6D65.6070409@selasky.org> <CAJ-Vmo=a6nzfRFH1cu0VefGk1opJf4WAt6u7ugT0uRMbjWvA-A@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_25937470_1392766137.1427189208673 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello, Please find attached a proposal using atomic_fetchadd. Best Regards, Emeric ----- Mail original ----- De: "Adrian Chadd" <adrian@freebsd.org> =C3=80: "Hans Petter Selasky" <hps@selasky.org> Cc: "Emeric POUPON" <emeric.poupon@stormshield.eu>, "freebsd-net" <freebsd-= net@freebsd.org> Envoy=C3=A9: Vendredi 20 Mars 2015 20:04:44 Objet: Re: Fragment questions On 20 March 2015 at 11:56, Hans Petter Selasky <hps@selasky.org> wrote: > On 03/20/15 19:02, Adrian Chadd wrote: >> >> On 20 March 2015 at 10:58, Hans Petter Selasky <hps@selasky.org> wrote: >>> >>> On 03/20/15 14:31, Emeric POUPON wrote: >>>> >>>> >>>> - in the ip_newid macro, we do "htons(V_ip_id++))" if we do not use >>>> randomized id. >>> >>> >>>> In multi core systems, we may emit successive packets with the same id= . >>> >>> >>> Will using a mutex or an atomic macro fix this issue when incrementing >>> the >>> V_ip_id ? >> >> >> It will, but it'll ping-pong between multiple cores and slow things >> down at high pps. >> > > Hi, > > Maybe we can have the V_ip_id per CPU and use the lower 8-bits as random = CPU > core number? Hm, someone with more cycles to spend on analysing the repercussions from this should investigate it. I think in the short term using an atomic is fine, as it's no worse than what is currently there. But as we get more PPS unlocked and happening we may need to fix it. -adrian ------=_Part_25937470_1392766137.1427189208673 Content-Type: text/x-patch; name=patch-ip_id-atomic-fetchadd Content-Disposition: attachment; filename=patch-ip_id-atomic-fetchadd Content-Transfer-Encoding: base64 LS0tIHN5cy9uZXRpbmV0L2lwX3Zhci5oLm9yaWcJMjAxNS0wMy0yMyAxNzo1Nzo0MC42MDEwNzIy MDAgKzAxMDAKKysrIHN5cy9uZXRpbmV0L2lwX3Zhci5oCTIwMTUtMDMtMjMgMTc6NTg6MzEuMDkz NzE1MTc3ICswMTAwCkBAIC0xNzQsNyArMTc0LDcgQEAgc3RydWN0IGlucGNiOwogc3RydWN0IHJv dXRlOwogc3RydWN0IHNvY2tvcHQ7CiAKLVZORVRfREVDTEFSRSh1X3Nob3J0LCBpcF9pZCk7CQkJ LyogaXAgcGFja2V0IGN0ciwgZm9yIGlkcyAqLworVk5FVF9ERUNMQVJFKHVfaW50MzJfdCwgaXBf aWQpOwkJCS8qIGlwIHBhY2tldCBjdHIsIGZvciBpZHMgKi8KIFZORVRfREVDTEFSRShpbnQsIGlw X2RlZnR0bCk7CQkJLyogZGVmYXVsdCBJUCB0dGwgKi8KIFZORVRfREVDTEFSRShpbnQsIGlwZm9y d2FyZGluZyk7CQkvKiBpcCBmb3J3YXJkaW5nICovCiAjaWZkZWYgSVBTVEVBTFRICkBAIC0zMDYs NyArMzA2LDcgQEAgZXh0ZXJuIGludAkoKmlwX2RuX2lvX3B0cikoc3RydWN0IG1idWYgKgogVk5F VF9ERUNMQVJFKGludCwgaXBfZG9fcmFuZG9taWQpOwogI2RlZmluZQlWX2lwX2RvX3JhbmRvbWlk CVZORVQoaXBfZG9fcmFuZG9taWQpCiAjZGVmaW5lCWlwX25ld2lkKCkJKChWX2lwX2RvX3JhbmRv bWlkICE9IDApID8gaXBfcmFuZG9taWQoKSA6IFwKLQkJCSAgICBodG9ucyhWX2lwX2lkKyspKQor CQkJICAgIGh0b25zKGF0b21pY19mZXRjaGFkZF8zMigmVl9pcF9pZCwgMSkgJiAweEZGRkYpKQog CiAjZW5kaWYgLyogX0tFUk5FTCAqLwogCi0tLSBzeXMvbmV0aW5ldC9pcF9vdXRwdXQuYy5vcmln CTIwMTUtMDMtMjMgMTc6NTc6NDYuNTE0NDk4ODQ2ICswMTAwCisrKyBzeXMvbmV0aW5ldC9pcF9v dXRwdXQuYwkyMDE1LTAzLTIzIDE3OjU4OjUyLjEyNDQyNjc2MCArMDEwMApAQCAtOTEsNyArOTEs NyBAQCBfX0ZCU0RJRCgiJEZyZWVCU0Q6IGhlYWQvc3lzL25ldGluZXQvaXBfCiAKICNpbmNsdWRl IDxzZWN1cml0eS9tYWMvbWFjX2ZyYW1ld29yay5oPgogCi1WTkVUX0RFRklORSh1X3Nob3J0LCBp cF9pZCk7CitWTkVUX0RFRklORSh1X2ludDMyX3QsIGlwX2lkKTsKIAogI2lmZGVmIE1CVUZfU1RS RVNTX1RFU1QKIHN0YXRpYyBpbnQgbWJ1Zl9mcmFnX3NpemUgPSAwOwo= ------=_Part_25937470_1392766137.1427189208673--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1776547746.25937476.1427189208729.JavaMail.zimbra>