m_getjcl and packet zone

Fabien Thomas fabien.thomas at netasq.com
Fri Apr 30 15:15:05 UTC 2010


	Hi all,

While doing some 10Gb benchmark i've found that m_getjcl does not benefit from the packet zone.
There is a ~ 80% increase in FPS when applying the following patch.

256B frame driver to driver / stable_8:
- 3 765 066 FPS
- 6 868 153 FPS with the patch applied.

Is there a good reason to not commit this ?

Fabien

diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h
index 158edb4..95a44a4 100644
--- a/sys/sys/mbuf.h
+++ b/sys/sys/mbuf.h
@@ -523,6 +523,9 @@ m_getjcl(int how, short type, int flags, int size)
        struct mbuf *m, *n;
        uma_zone_t zone;

+       if (size == MCLBYTES)
+               return m_getcl(how, type, flags);
+
        args.flags = flags;
        args.type = type;



More information about the freebsd-net mailing list