ath / 802.11n performance issues and timer code

Adrian Chadd adrian at freebsd.org
Fri Sep 23 15:29:03 UTC 2011


Hi Alexander,

I've been looking at issues with 802.11n RX performance on these
MIPS24k based MIPS boards.
After doing a bit of digging, I discovered what looked like strange
scheduler issues where the RX and TX completion schedulers weren't
being invoked quickly.
The ath driver schedules these functions using taskqueues.

Here's the time keeper configuration for my mips24k board:

# sysctl kern.eventtimer
kern.eventtimer.choice: MIPS32(800)
kern.eventtimer.et.MIPS32.flags: 7
kern.eventtimer.et.MIPS32.frequency: 360000000
kern.eventtimer.et.MIPS32.quality: 800
kern.eventtimer.periodic: 1
kern.eventtimer.timer: MIPS32
kern.eventtimer.idletick: 0
kern.eventtimer.singlemul: 2

When I set kern.eventtimer.periodic=1, the 11n TX/RX performance
suddenly jumps to where it should be.

Would you mind helping me figure out what the problem is? I didn't
think kern.eventtimer.periodic was needed?

Thanks,


Adrian


More information about the freebsd-current mailing list