svn commit: r289759 - in head/sys/arm: arm include

Jason Harmening jason.harmening at gmail.com
Sun Nov 1 13:01:19 UTC 2015


On Sat, Oct 31, 2015 at 4:55 AM, Jason Harmening <jason.harmening at gmail.com>
wrote:

>
>
> On 10/31/15 03:21, Ganbold Tsagaankhuu wrote:
> > On Fri, Oct 23, 2015 at 12:38 AM, Jason A. Harmening <jah at freebsd.org>
> > wrote:
> >
> >> Author: jah
> >> Date: Thu Oct 22 16:38:01 2015
> >> New Revision: 289759
> >> URL: https://svnweb.freebsd.org/changeset/base/289759
> >>
> >> Log:
> >>   Use pmap_quick* functions in armv6 busdma, for bounce buffers and
> cache
> >> maintenance.  This makes it safe to sync buffers that have no VA mapping
> >> associated with the busdma map, but may have other mappings, possibly on
> >> different CPUs.  This also makes it safe to sync unmapped bounce
> buffers in
> >> non-sleepable thread contexts.
> >>
> >>   Similar to r286787 for x86, this treats userspace buffers the same as
> >> unmapped buffers and no longer borrows the UVA for sync operations.
> >>
> >>   Submitted by:         Svatopluk Kraus <onwahe at gmail.com> (earlier
> >> revision)
> >>   Tested by:    Svatopluk Kraus
> >>   Differential Revision:        https://reviews.freebsd.org/D3869
> >
> >
> >
> > It seems I can't boot Odroid C1 with this change.
> >
> > http://pastebin.ca/3227678
> >
> > r289758 works for me.
> >
> > Am I missing something?
> >
> > thanks,
> >
> > Ganbold
> >
> >
>
> Hmmm, the fault address of 0x20 and the fact that this is happening
> during mi_startup() make me wonder if the per-cpu pageframes used by
> pmap_quick* haven't been initialized yet.
>
> I wonder if changing the order of qpages_init in
> sys/arm/arm/pmap-v6[-new].c to something other than SI_ORDER_ANY would
> help?
>
> It seems like we'd want SI_ORDER_FOURTH or SI_ORDER_MIDDLE, since
> mp_start() is SI_ORDER_THIRD.
>
> It would be nice to know what's calling bus_dmamap_sync() in this case.
>  I can't figure that out, but maybe that's because I haven't had coffee
> yet.
>
>
Can you build the kernel with 'options VERBOSE_SYSINIT' ?
That will add some spew to the boot log, but it should confirm whether this
is a sysinit ordering issue.


More information about the svn-src-all mailing list