Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Sep 2011 23:29:02 +0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        Alexander Motin <mav@freebsd.org>
Cc:        freebsd-current@freebsd.org
Subject:   ath / 802.11n performance issues and timer code
Message-ID:  <CAJ-VmomZyDJV62yCQOvG=UB6H4wfz9=3_cWzEL7vWAA14TCyYA@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmomZyDJV62yCQOvG=UB6H4wfz9=3_cWzEL7vWAA14TCyYA>