Messages in this thread |  | | Date | Fri, 16 Feb 2018 16:32:05 -0500 (EST) | | Subject | Re: [RFC PATCH] ptr_ring: linked list fallback | | From | David Miller <> |
| |
From: "Michael S. Tsirkin" <mst@redhat.com> Date: Fri, 16 Feb 2018 09:40:54 +0200
> So pointer rings work fine, but they have a problem: > make them too small and not enough entries fit. > Make them too large and you start flushing your cache > and running out of memory. > > This is a new idea of mine: a ring backed by a > linked list. Once you run out of rin entries, > instead of a drop you fall back on a list with > a common lock. > > Should work well for the case where the ring is typically sized > correctly, but will help address the fact that some user try to set e.g. > tx queue length to 1000000. > > My hope this will move us closer to direction where e.g. fw codel can > use ptr rings without locking at all. > The API is still very rough, and I really need to take a hard look > at lock nesting. > > Completely untested, sending for early feedback/flames. > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
So the idea is that if a user sets a really huge TX queue length, we allocate a ptr_ring which is smaller, and use the backup linked list when necessary to provide the requested TX queue length legitimately.
Right?
|  |