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

Jason Harmening jason.harmening at gmail.com
Sat Oct 31 09:50:33 UTC 2015



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.

Unfortunately I'm going to have limited time to help debug this over the
next week, as I'm moving across the country starting (hopefully) today.

--Jason

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 603 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20151031/bf02aebd/attachment.bin>


More information about the svn-src-head mailing list