bfifo-type queues unusable due to massive CPU load?

Has anyone used this type of queue? I had a simple queue entry to restrict customer speed, e.g.:

name="queue1" target=[customer's IP]/32 parent=none packet-marks="" priority=8/8 queue=byte-small/byte-small limit-at=0/0 max-limit=2M/20M burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s

and had the the “byte-small” queue defined as:

name="byte-small" kind=bfifo bfifo-limit=1048576

Turns out that the customer couldn’t get much more than 5Mbps downstream as the CPU couldn’t keep up with the queue processing!

I’ve since switched back to pfifo and that’s fine.

Just wondered if anyone else has seen this / used it without problems / a general “heads-up” in case someone else hits the same problem.