Heads up: AR7241 + PCIe and AR9287 on-board stuff works

Adrian Chadd adrian at freebsd.org
Tue Sep 4 23:20:11 UTC 2012


On 28 August 2012 21:00, Adrian Chadd <adrian at freebsd.org> wrote:

> The default (most things as modules) kernel build is still ~ 3.5mb.
> That's rather large for a board with 16MB of RAM.
>
> Additionally, I can't load the ath device after the system has come up
> single user - the driver fails to allocate descriptors/buffer entries.
> I'll do some digging about it in a couple of weeks. I'd like some
> pointers on how to dump the current state of memory so I can see
> exactly what's going on.
>
> For reference, 'sysctl vm.vmtotal' shows the total free RAM is around
> 1 to 1.5MB. I'm guessing some are allocated to buffers but I'd like to
> see what else is actually holding onto memory..

It turns out memory fragmentation due to a huge (for embedded)
userland are to blame.

I'll see if I can get ray@ to help me port phkmalloc to -HEAD again
and try to tweak the default allocator parameters to not pre-allocate
large pools for each process.

Seeing login, sh, etc have an RSS of 1MB is kind of scary.

I'll do some more digging with procstat (when I fit it into the
current image) and report back.

There's also the problem of a 3.5MB "stripped down nothing but what's
needed to boot and read the rootfs from SPI flash + FFS" kernel size
problem. That seems slightly(!) too big..



Adrian


More information about the freebsd-wireless mailing list