From owner-freebsd-arm@FreeBSD.ORG Sun Sep 9 00:01:29 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 300BB1065673 for ; Sun, 9 Sep 2012 00:01:29 +0000 (UTC) (envelope-from alc@rice.edu) Received: from mh10.mail.rice.edu (mh10.mail.rice.edu [128.42.201.30]) by mx1.freebsd.org (Postfix) with ESMTP id F3FB08FC0A for ; Sun, 9 Sep 2012 00:01:28 +0000 (UTC) Received: from mh10.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh10.mail.rice.edu (Postfix) with ESMTP id 80A60685C7 for ; Sat, 8 Sep 2012 19:01:27 -0500 (CDT) Received: from mh10.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh10.mail.rice.edu (Postfix) with ESMTP id 7F3F568522; Sat, 8 Sep 2012 19:01:27 -0500 (CDT) X-Virus-Scanned: by amavis-2.7.0 at mh10.mail.rice.edu, auth channel Received: from mh10.mail.rice.edu ([127.0.0.1]) by mh10.mail.rice.edu (mh10.mail.rice.edu [127.0.0.1]) (amavis, port 10026) with ESMTP id iRuS0pm0Ydad; Sat, 8 Sep 2012 19:01:27 -0500 (CDT) Received: from adsl-216-63-78-18.dsl.hstntx.swbell.net (adsl-216-63-78-18.dsl.hstntx.swbell.net [216.63.78.18]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) (Authenticated sender: alc) by mh10.mail.rice.edu (Postfix) with ESMTPSA id EBAE368293; Sat, 8 Sep 2012 19:01:26 -0500 (CDT) Message-ID: <504BDC56.3060607@rice.edu> Date: Sat, 08 Sep 2012 19:01:26 -0500 From: Alan Cox User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:8.0) Gecko/20111113 Thunderbird/8.0 MIME-Version: 1.0 To: "arm@freebsd.org" Content-Type: multipart/mixed; boundary="------------060005020600030203000200" Cc: Alan Cox Subject: armv6 pmap patch X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Sep 2012 00:01:29 -0000 This is a multi-part message in MIME format. --------------060005020600030203000200 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Can someone here please test this patch to the new armv6 pmap? It eliminates the use of the page queues lock and updates some comments. Similar changes were recently made to the original arm pmap. Thanks, Alan --------------060005020600030203000200 Content-Type: text/plain; name="armv6-pmap2.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="armv6-pmap2.patch" Index: arm/arm/pmap-v6.c =================================================================== --- arm/arm/pmap-v6.c (revision 240246) +++ arm/arm/pmap-v6.c (working copy) @@ -153,10 +153,12 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include +#include #include #include #include @@ -164,12 +166,10 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include #include -#include #include #include #include @@ -400,6 +400,7 @@ static vm_offset_t pmap_kernel_l2ptp_kva; static vm_paddr_t pmap_kernel_l2ptp_phys; static struct vm_object pvzone_obj; static int pv_entry_count=0, pv_entry_max=0, pv_entry_high_water=0; +static struct rwlock pvh_global_lock; int l1_mem_types[] = { ARM_L1S_STRONG_ORD, @@ -613,7 +614,7 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) l1idx = L1_IDX(va); PMAP_ASSERT_LOCKED(pm); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); if ((l2 = pm->pm_l2[L2_IDX(l1idx)]) == NULL) { /* * No mapping at this address, as there is @@ -622,19 +623,19 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) */ again_l2table: PMAP_UNLOCK(pm); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); if ((l2 = pmap_alloc_l2_dtable()) == NULL) { - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); return (NULL); } - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (pm->pm_l2[L2_IDX(l1idx)] != NULL) { PMAP_UNLOCK(pm); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); uma_zfree(l2table_zone, l2); - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); l2 = pm->pm_l2[L2_IDX(l1idx)]; if (l2 == NULL) @@ -666,16 +667,16 @@ again_l2table: */ again_ptep: PMAP_UNLOCK(pm); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { /* We lost the race. */ PMAP_UNLOCK(pm); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); uma_zfree(l2zone, ptep); - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (l2b->l2b_kva == 0) goto again_ptep; @@ -851,7 +852,7 @@ pmap_clearbit(struct vm_page *pg, u_int maskbits) u_int oflags; int count = 0; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); if (maskbits & PVF_WRITE) maskbits |= PVF_MOD; @@ -861,7 +862,7 @@ pmap_clearbit(struct vm_page *pg, u_int maskbits) pg->md.pvh_attrs &= ~(maskbits & (PVF_MOD | PVF_REF)); if (TAILQ_EMPTY(&pg->md.pv_list)) { - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); return (0); } @@ -917,7 +918,7 @@ pmap_clearbit(struct vm_page *pg, u_int maskbits) if (maskbits & PVF_WRITE) vm_page_aflag_clear(pg, PGA_WRITEABLE); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); return (count); } @@ -927,15 +928,15 @@ pmap_clearbit(struct vm_page *pg, u_int maskbits) * pmap_remove_pv: remove a mappiing from a vm_page list * * NOTE: pmap_enter_pv expects to lock the pvh itself - * pmap_remove_pv expects te caller to lock the pvh before calling + * pmap_remove_pv expects the caller to lock the pvh before calling */ /* - * pmap_enter_pv: enter a mapping onto a vm_page lst + * pmap_enter_pv: enter a mapping onto a vm_page's PV list * - * => caller should hold the proper lock on pmap_main_lock + * => caller should hold the proper lock on pvh_global_lock * => caller should have pmap locked - * => we will gain the lock on the vm_page and allocate the new pv_entry + * => we will (someday) gain the lock on the vm_page's PV list * => caller should adjust ptp's wire_count before calling * => caller should not adjust pmap's wire_count */ @@ -944,7 +945,7 @@ pmap_enter_pv(struct vm_page *pg, struct pv_entry vm_offset_t va, u_int flags) { - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); PMAP_ASSERT_LOCKED(pm); pve->pv_pmap = pm; @@ -970,7 +971,7 @@ pmap_find_pv(struct vm_page *pg, pmap_t pm, vm_off { struct pv_entry *pv; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); TAILQ_FOREACH(pv, &pg->md.pv_list, pv_list) if (pm == pv->pv_pmap && va == pv->pv_va) break; @@ -1031,7 +1032,7 @@ static void pmap_nuke_pv(struct vm_page *pg, pmap_t pm, struct pv_entry *pve) { - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); PMAP_ASSERT_LOCKED(pm); TAILQ_REMOVE(&pg->md.pv_list, pve, pv_list); @@ -1064,7 +1065,7 @@ pmap_remove_pv(struct vm_page *pg, pmap_t pm, vm_o { struct pv_entry *pve; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); pve = TAILQ_FIRST(&pg->md.pv_list); while (pve) { @@ -1096,7 +1097,7 @@ pmap_modify_pv(struct vm_page *pg, pmap_t pm, vm_o u_int flags, oflags; PMAP_ASSERT_LOCKED(pm); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); if ((npv = pmap_find_pv(pg, pm, va)) == NULL) return (0); @@ -1210,7 +1211,7 @@ pmap_fault_fixup(pmap_t pm, vm_offset_t va, vm_pro int rv = 0; l1idx = L1_IDX(va); - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); /* @@ -1374,7 +1375,7 @@ pmap_fault_fixup(pmap_t pm, vm_offset_t va, vm_pro rv = 1; out: - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); PMAP_UNLOCK(pm); return (rv); } @@ -1682,6 +1683,11 @@ pmap_bootstrap(vm_offset_t firstaddr, vm_offset_t TAILQ_INIT(&kernel_pmap->pm_pvlist); /* + * Initialize the global pv list lock. + */ + rw_init_flags(&pvh_global_lock, "pmap pv global", RW_RECURSE); + + /* * Reserve some special page table entries/VA space for temporary * mapping of pages. */ @@ -1946,7 +1952,7 @@ pmap_remove_pages(pmap_t pmap) vm_page_t m; pt_entry_t *pt; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pmap); for (pv = TAILQ_FIRST(&pmap->pm_pvlist); pv; pv = npv) { if (pv->pv_flags & PVF_WIRED) { @@ -1969,7 +1975,7 @@ pmap_remove_pages(pmap_t pmap) pmap_free_pv_entry(pv); pmap_free_l2_bucket(pmap, l2b, 1); } - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); cpu_tlb_flushID(); cpu_cpwait(); PMAP_UNLOCK(pmap); @@ -2326,7 +2332,7 @@ pmap_remove_all(vm_page_t m) if (TAILQ_EMPTY(&m->md.pv_list)) return; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); pmap_remove_write(m); curpm = vmspace_pmap(curproc->p_vmspace); while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { @@ -2356,7 +2362,7 @@ pmap_remove_all(vm_page_t m) cpu_tlb_flushD(); } vm_page_aflag_clear(m, PGA_WRITEABLE); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); } int @@ -2444,7 +2450,7 @@ pmap_protect(pmap_t pm, vm_offset_t sva, vm_offset return; } - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); /* @@ -2506,7 +2512,7 @@ pmap_protect(pmap_t pm, vm_offset_t sva, vm_offset if (PV_BEEN_REFD(flags)) cpu_tlb_flushD(); } - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); PMAP_UNLOCK(pm); } @@ -2530,11 +2536,11 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_prot_t vm_prot_t prot, boolean_t wired) { - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot, wired, M_WAITOK); PMAP_UNLOCK(pmap); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); } /* @@ -2554,7 +2560,7 @@ pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_ u_char user; PMAP_ASSERT_LOCKED(pmap); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); + rw_assert(&pvh_global_lock, RA_WLOCKED); if (va == vector_page) { pa = systempage.pv_pa; m = NULL; @@ -2594,9 +2600,9 @@ do_l2b_alloc: if (l2b == NULL) { if (flags & M_WAITOK) { PMAP_UNLOCK(pmap); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); VM_WAIT; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pmap); goto do_l2b_alloc; } @@ -2789,7 +2795,7 @@ pmap_enter_object(pmap_t pmap, vm_offset_t start, psize = atop(end - start); m = m_start; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pmap); while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { pmap_enter_locked(pmap, start + ptoa(diff), m, prot & @@ -2797,7 +2803,7 @@ pmap_enter_object(pmap_t pmap, vm_offset_t start, m = TAILQ_NEXT(m, listq); } PMAP_UNLOCK(pmap); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); } /* @@ -2813,12 +2819,12 @@ void pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) { - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot & (VM_PROT_READ | VM_PROT_EXECUTE), FALSE, M_NOWAIT); PMAP_UNLOCK(pmap); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); } /* @@ -2835,7 +2841,7 @@ pmap_change_wiring(pmap_t pmap, vm_offset_t va, bo pt_entry_t *ptep, pte; vm_page_t pg; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pmap); l2b = pmap_get_l2_bucket(pmap, va); KASSERT(l2b, ("No l2b bucket in pmap_change_wiring")); @@ -2844,7 +2850,7 @@ pmap_change_wiring(pmap_t pmap, vm_offset_t va, bo pg = PHYS_TO_VM_PAGE(l2pte_pa(pte)); if (pg) pmap_modify_pv(pg, pmap, va, PVF_WIRED, wired); - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); PMAP_UNLOCK(pmap); } @@ -3091,7 +3097,7 @@ pmap_remove(pmap_t pm, vm_offset_t sva, vm_offset_ * we lock in the pmap => pv_head direction */ - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); total = 0; while (sva < eva) { @@ -3170,7 +3176,7 @@ pmap_remove(pmap_t pm, vm_offset_t sva, vm_offset_ pmap_free_l2_bucket(pm, l2b, mappings); } - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); if (flushall) cpu_tlb_flushID(); PMAP_UNLOCK(pm); @@ -3323,7 +3329,7 @@ pmap_page_exists_quick(pmap_t pmap, vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_page_exists_quick: page %p is not managed", m)); rv = FALSE; - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { if (pv->pv_pmap == pmap) { rv = TRUE; @@ -3334,7 +3340,7 @@ pmap_page_exists_quick(pmap_t pmap, vm_page_t m) break; } - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); return (rv); } @@ -3353,11 +3359,11 @@ pmap_page_wired_mappings(vm_page_t m) count = 0; if ((m->flags & PG_FICTITIOUS) != 0) return (count); - vm_page_lock_queues(); + rw_wlock(&pvh_global_lock); TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) if ((pv->pv_flags & PVF_WIRED) != 0) count++; - vm_page_unlock_queues(); + rw_wunlock(&pvh_global_lock); return (count); } --------------060005020600030203000200-- From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 01:48:21 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 179C1106567C; Mon, 10 Sep 2012 01:48:21 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id E46F58FC14; Mon, 10 Sep 2012 01:48:20 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id q8A1mDfV031516 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 9 Sep 2012 18:48:14 -0700 (PDT) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id q8A1mDh1031515; Sun, 9 Sep 2012 18:48:13 -0700 (PDT) (envelope-from jmg) Date: Sun, 9 Sep 2012 18:48:13 -0700 From: John-Mark Gurney To: freebsd-arm@FreeBSD.org Message-ID: <20120910014813.GL58312@funkthat.com> Mail-Followup-To: freebsd-arm@FreeBSD.org, kientzle@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Sun, 09 Sep 2012 18:48:14 -0700 (PDT) Cc: kientzle@FreeBSD.org Subject: -current on BeableBone successful X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 01:48:21 -0000 Well, I have successfully booted FreeBSD-current on the BeagleBone: FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240251: Wed Nov 2 14:26:08 PDT 2011 jmg@pcbsd-779:/usr/obj/arm.armv6/usr/src.HEAD/sys/BEAGLEBONE arm Though there are a few issues... I'm using Kientzle's script to build the bootable image, so one is related to his script, and the others are more generic issues.. The first off is that for some reason, the uenv.txt file doesn't load.. I'm not sure what is wrong, but if I type in: fatload mmc 0:1 0x88000000 ubldr;bootelf 0x88000000 manually, it boots fine... The second is that it looks like we have some left over debugging in SIOC[SG]IFMEDIA that we need to remove, and a fall through comment that doesn't look like it is applicable any more... Should I just remove these? Third is that I get this error: ip length 328 disagrees with bytes received 330. accepting packet with data after udp payload. This appeard to be from sbin/dhclient/packet.c... Not sure exactly why we are returning a large packet to userland... Thanks for the work. In a couple days, I'll figure out how well the VLANs work on this system. Thanks to Tim for his script that made building the image really easy, and to the others for getting this working! Oh, and as a nice surprise, I got a 4GB MicroSD card instead of the 2GB I was expecting.. P.S. Warner, don't forget w/ VLANs you turn a single ethernet port into multiple! :) -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 03:16:17 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0D5191065670 for ; Mon, 10 Sep 2012 03:16:17 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Received: from monday.kientzle.com (99-115-135-74.uvs.sntcca.sbcglobal.net [99.115.135.74]) by mx1.freebsd.org (Postfix) with ESMTP id C1A508FC08 for ; Mon, 10 Sep 2012 03:16:16 +0000 (UTC) Received: (from root@localhost) by monday.kientzle.com (8.14.4/8.14.4) id q8A3G9Rw064864; Mon, 10 Sep 2012 03:16:09 GMT (envelope-from kientzle@FreeBSD.org) Received: from [192.168.2.143] (CiscoE3000 [192.168.1.65]) by kientzle.com with SMTP id ckf88fp4ve88gn5ckcpwajuhf2; Mon, 10 Sep 2012 03:16:08 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=windows-1252 From: Tim Kientzle In-Reply-To: <20120910014813.GL58312@funkthat.com> Date: Sun, 9 Sep 2012 20:16:08 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> References: <20120910014813.GL58312@funkthat.com> To: John-Mark Gurney X-Mailer: Apple Mail (2.1278) Cc: freebsd-arm@FreeBSD.org Subject: Re: -current on BeableBone successful X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 03:16:17 -0000 On Sep 9, 2012, at 6:48 PM, John-Mark Gurney wrote: > Well, I have successfully booted FreeBSD-current on the BeagleBone: > FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240251: Wed = Nov 2 14:26:08 PDT 2011 = jmg@pcbsd-779:/usr/obj/arm.armv6/usr/src.HEAD/sys/BEAGLEBONE arm >=20 > Though there are a few issues... I'm using Kientzle's script to build > the bootable image, so one is related to his script, and the others = are > more generic issues.. >=20 > The first off is that for some reason, the uenv.txt file doesn't = load.. > I'm not sure what is wrong, but if I type in: > fatload mmc 0:1 0x88000000 ubldr;bootelf 0x88000000 I just ran into this myself. I think the Arago sources broke environment loading. I started to debug the Arago U-Boot build this weekend but decided it would likely be more productive to switch to using the Denx sources. Denx publishes periodic snapshots which should make things a little more stable. > manually, it boots fine... >=20 > The second is that it looks like we have some left over debugging in > SIOC[SG]IFMEDIA that we need to remove, and a fall through comment = that > doesn't look like it is applicable any more... Should I just remove > these? The cpsw driver still needs work. I've fixed a couple of problems, but = there are some deeper issues: * Under memory pressure, the rx handler populates the receive buffer = list with NULLs then panics when it tries to process them. * I've seen the driver stall repeatedly; I'm not sure why yet but I = suspect the driver is mis-handling queue restarts. * The driver doesn't detach properly (which results in panics if you = build the driver as a module and try to unload it) > Third is that I get this error: > ip length 328 disagrees with bytes received 330. > accepting packet with data after udp payload. >=20 > This appeard to be from sbin/dhclient/packet.c... Not sure exactly = why > we are returning a large packet to userland=85 I haven't seen this one. > Thanks for the work. In a couple days, I'll figure out how well the > VLANs work on this system. >=20 > Thanks to Tim for his script that made building the image really easy, > and to the others for getting this working! Here are my priorities for the BeagleBone, in roughly this order: * Fix the cpsw Ethernet driver * Get buildworld/buildkernel working correctly natively. (30+ hour = builds make this tedious to test; last time I tested the builds = completed but installing world crashed things badly) * Work on performance for the MMC driver * USB host driver Apart from Ethernet-related panics, the system has been remarkably stable. I've been building ports and otherwise hammering the system for days on end without any apparent ill effects. Tim From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 06:13:40 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 844B41065670; Mon, 10 Sep 2012 06:13:40 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id 404D48FC0C; Mon, 10 Sep 2012 06:13:39 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id q8A6Dakm036575 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 9 Sep 2012 23:13:37 -0700 (PDT) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id q8A6DZfX036574; Sun, 9 Sep 2012 23:13:35 -0700 (PDT) (envelope-from jmg) Date: Sun, 9 Sep 2012 23:13:35 -0700 From: John-Mark Gurney To: Dave Cheney Message-ID: <20120910061335.GN58312@funkthat.com> Mail-Followup-To: Dave Cheney , Tim Kientzle , freebsd-arm@freebsd.org References: <20120910014813.GL58312@funkthat.com> <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="b5gNqxB1S1yM7hjW" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Sun, 09 Sep 2012 23:13:37 -0700 (PDT) Cc: freebsd-arm@freebsd.org Subject: Re: -current on BeableBone successful X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 06:13:40 -0000 --b5gNqxB1S1yM7hjW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Dave Cheney wrote this message on Mon, Sep 10, 2012 at 13:59 +1000: > That is fantastic. Do you think it would be possible to make an SD > card image available? Sure... I'll take it down after a while (probably weeks) since we want to encourage people to make sure they are using the latest code and have infastructure to build it themselves, but to help boot strap a few people, I've decided to make it a torrent available at: http://people.freebsd.org/~jmg/FreeBSD-BEAGLEBONE.img.bz2.torrent or: magnet:?xt=3Durn:btih:37e1bb8e88cb95dce662917b0d7150d58244b854&dn=3DFreeBSD= -BEAGLEBONE.img.bz2 SHA256 (FreeBSD-BEAGLEBONE.img.bz2) =3D f275f058d777397f5ed93ae2c86856ed97e= 3fcbac1778c47b91e4111bc777185 It's ~186MB, but sized for a 1GB SD card. After you fetch it, please keep seeding for others. Thanks. P.S. I've signed the message with a new key. The one I have in the handbook is very old and current gpg doesn't support signing with it. I'll get the handbook updated tomorrow. > On Mon, Sep 10, 2012 at 1:16 PM, Tim Kientzle wrot= e: > > > > On Sep 9, 2012, at 6:48 PM, John-Mark Gurney wrote: > > > >> Well, I have successfully booted FreeBSD-current on the BeagleBone: > >> FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240251: Wed N= ov 2 14:26:08 PDT 2011 jmg@pcbsd-779:/usr/obj/arm.armv6/usr/src.HEAD/s= ys/BEAGLEBONE arm > >> > >> Though there are a few issues... I'm using Kientzle's script to build > >> the bootable image, so one is related to his script, and the others are > >> more generic issues.. > >> > >> The first off is that for some reason, the uenv.txt file doesn't load.. > >> I'm not sure what is wrong, but if I type in: > >> fatload mmc 0:1 0x88000000 ubldr;bootelf 0x88000000 > > > > I just ran into this myself. I think the Arago sources > > broke environment loading. > > > > I started to debug the Arago U-Boot build this weekend > > but decided it would likely be more productive to switch > > to using the Denx sources. Denx publishes periodic > > snapshots which should make things a little more stable. > > > >> manually, it boots fine... > >> > >> The second is that it looks like we have some left over debugging in > >> SIOC[SG]IFMEDIA that we need to remove, and a fall through comment that > >> doesn't look like it is applicable any more... Should I just remove > >> these? > > > > The cpsw driver still needs work. I've fixed a couple of problems, bu= t there are some deeper issues: > > * Under memory pressure, the rx handler populates the receive buffer = list with NULLs then panics when it tries to process them. > > * I've seen the driver stall repeatedly; I'm not sure why yet but I s= uspect the driver is mis-handling queue restarts. > > * The driver doesn't detach properly (which results in panics if you = build the driver as a module and try to unload it) > > > >> Third is that I get this error: > >> ip length 328 disagrees with bytes received 330. > >> accepting packet with data after udp payload. > >> > >> This appeard to be from sbin/dhclient/packet.c... Not sure exactly why > >> we are returning a large packet to userland? > > > > I haven't seen this one. > > > >> Thanks for the work. In a couple days, I'll figure out how well the > >> VLANs work on this system. > >> > >> Thanks to Tim for his script that made building the image really easy, > >> and to the others for getting this working! > > > > Here are my priorities for the BeagleBone, in roughly this order: > > * Fix the cpsw Ethernet driver > > * Get buildworld/buildkernel working correctly natively. (30+ hour b= uilds make this tedious to test; last time I tested the builds completed bu= t installing world crashed things badly) > > * Work on performance for the MMC driver > > * USB host driver > > > > Apart from Ethernet-related panics, the system has > > been remarkably stable. I've been building ports and > > otherwise hammering the system for days on end without > > any apparent ill effects. --=20 John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." --b5gNqxB1S1yM7hjW Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.11 (FreeBSD) iEYEARECAAYFAlBNhQ0ACgkQnLGPdG0/o5ZiawCeOXnz8hTNNgXqL3YqtVr2tggg 1KAAn2XmzL//kY2vEv3ximKmlXql1nfk =3kdY -----END PGP SIGNATURE----- --b5gNqxB1S1yM7hjW-- From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 06:17:06 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 734DC106566B; Mon, 10 Sep 2012 06:17:06 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id 4D8568FC08; Mon, 10 Sep 2012 06:17:06 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id q8A6H64J036644 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 9 Sep 2012 23:17:06 -0700 (PDT) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id q8A6H63l036643; Sun, 9 Sep 2012 23:17:06 -0700 (PDT) (envelope-from jmg) Date: Sun, 9 Sep 2012 23:17:06 -0700 From: John-Mark Gurney To: Tim Kientzle Message-ID: <20120910061705.GO58312@funkthat.com> Mail-Followup-To: Tim Kientzle , freebsd-arm@FreeBSD.org References: <20120910014813.GL58312@funkthat.com> <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Sun, 09 Sep 2012 23:17:06 -0700 (PDT) Cc: freebsd-arm@FreeBSD.org Subject: Re: -current on BeableBone successful X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 06:17:06 -0000 Tim Kientzle wrote this message on Sun, Sep 09, 2012 at 20:16 -0700: > On Sep 9, 2012, at 6:48 PM, John-Mark Gurney wrote: > > > Well, I have successfully booted FreeBSD-current on the BeagleBone: > > FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240251: Wed Nov 2 14:26:08 PDT 2011 jmg@pcbsd-779:/usr/obj/arm.armv6/usr/src.HEAD/sys/BEAGLEBONE arm > > > > Though there are a few issues... I'm using Kientzle's script to build > > the bootable image, so one is related to his script, and the others are > > more generic issues.. > > > > The first off is that for some reason, the uenv.txt file doesn't load.. > > I'm not sure what is wrong, but if I type in: > > fatload mmc 0:1 0x88000000 ubldr;bootelf 0x88000000 > > I just ran into this myself. I think the Arago sources > broke environment loading. > > I started to debug the Arago U-Boot build this weekend > but decided it would likely be more productive to switch > to using the Denx sources. Denx publishes periodic > snapshots which should make things a little more stable. Sounds good... > > manually, it boots fine... > > > > The second is that it looks like we have some left over debugging in > > SIOC[SG]IFMEDIA that we need to remove, and a fall through comment that > > doesn't look like it is applicable any more... Should I just remove > > these? > > The cpsw driver still needs work. I've fixed a couple of problems, but there are some deeper issues: > * Under memory pressure, the rx handler populates the receive buffer list with NULLs then panics when it tries to process them. > * I've seen the driver stall repeatedly; I'm not sure why yet but I suspect the driver is mis-handling queue restarts. > * The driver doesn't detach properly (which results in panics if you build the driver as a module and try to unload it) > > > Third is that I get this error: > > ip length 328 disagrees with bytes received 330. > > accepting packet with data after udp payload. > > > > This appeard to be from sbin/dhclient/packet.c... Not sure exactly why > > we are returning a large packet to userland? > > I haven't seen this one. I'll try to get a tcpdump from both the server and the client side to see what comes up... > > Thanks for the work. In a couple days, I'll figure out how well the > > VLANs work on this system. > > > > Thanks to Tim for his script that made building the image really easy, > > and to the others for getting this working! > > Here are my priorities for the BeagleBone, in roughly this order: > * Fix the cpsw Ethernet driver > * Get buildworld/buildkernel working correctly natively. (30+ hour builds make this tedious to test; last time I tested the builds completed but installing world crashed things badly) > * Work on performance for the MMC driver > * USB host driver > > Apart from Ethernet-related panics, the system has > been remarkably stable. I've been building ports and > otherwise hammering the system for days on end without > any apparent ill effects. Cool... It's been a while, but I can look a bit at the ethernet driver if you'd like some help... Thanks again for your help. -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 06:45:33 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8C8A0106566C; Mon, 10 Sep 2012 06:45:33 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id 65EB08FC0A; Mon, 10 Sep 2012 06:45:33 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id q8A6jWT9037029 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 9 Sep 2012 23:45:33 -0700 (PDT) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id q8A6jWZL037028; Sun, 9 Sep 2012 23:45:32 -0700 (PDT) (envelope-from jmg) Date: Sun, 9 Sep 2012 23:45:32 -0700 From: John-Mark Gurney To: Tim Kientzle Message-ID: <20120910064532.GP58312@funkthat.com> Mail-Followup-To: Tim Kientzle , freebsd-arm@FreeBSD.org References: <20120910014813.GL58312@funkthat.com> <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Sun, 09 Sep 2012 23:45:33 -0700 (PDT) Cc: freebsd-arm@FreeBSD.org Subject: Re: -current on BeableBone successful X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 06:45:33 -0000 Tim Kientzle wrote this message on Sun, Sep 09, 2012 at 20:16 -0700: > > Third is that I get this error: > > ip length 328 disagrees with bytes received 330. > > accepting packet with data after udp payload. > > > > This appeard to be from sbin/dhclient/packet.c... Not sure exactly why > > we are returning a large packet to userland? > > I haven't seen this one. Looks like this is a BeagleBone issue. I haven't tracked it down, but I did a tcpdump on the server (my other arm board), and the packet has the correct length of 342 bytes to match the 328 ip length (plus 14 bytes of ethernet header)... tcpdump on the BeagleBone receives a 344 byte frame with a couple of stray bytes at the end of the frame... Could this be an miscalculation when we are copying around the frame to deal the fact our IP stack can't deal w/ misaligned headers? Just a thought.. Hmm... Just ran some experiments... ping -s sent received 1 0x2b 0x3e 10 0x34 0x3e 18 0x3c 0x3e 19 0x3d 0x3f 20 0x3e 0x40 21 0x3f 0x41 99 0x8d 0x8f 100 0x8e 0x90 101 0x8f 0x91 999 0x411 0x413 1000 0x412 0x414 1001 0x413 0x415 and 0x3e is 62, which is two short of the min frame length of 64... Hope this helps. -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 09:18:26 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CCE74106566C for ; Mon, 10 Sep 2012 09:18:26 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp3.clear.net.nz (smtp3.clear.net.nz [203.97.33.64]) by mx1.freebsd.org (Postfix) with ESMTP id 96EAD8FC1D for ; Mon, 10 Sep 2012 09:18:26 +0000 (UTC) Received: from mxin3-orange.clear.net.nz (lb2-srcnat.clear.net.nz [203.97.32.237]) by smtp3.clear.net.nz (CLEAR Net Mail) with ESMTP id <0MA400DJ8N6H5240@smtp3.clear.net.nz> for arm@freebsd.org; Mon, 10 Sep 2012 21:18:19 +1200 (NZST) Received: from 202-0-48-19.paradise.net.nz (HELO localhost) ([202.0.48.19]) by smtpin32.paradise.net.nz with ESMTP; Mon, 10 Sep 2012 21:18:19 +1200 Date: Mon, 10 Sep 2012 21:18:17 +1200 From: Andrew Turner In-reply-to: <504BDC56.3060607@rice.edu> To: Alan Cox Message-id: <20120910211817.2d8a340d@fubar.geek.nz> MIME-version: 1.0 X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; i386-portbld-freebsd8.1) Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit X-Pirate: Arrrr References: <504BDC56.3060607@rice.edu> Cc: "arm@freebsd.org" Subject: Re: armv6 pmap patch X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 09:18:26 -0000 On Sat, 08 Sep 2012 19:01:26 -0500 Alan Cox wrote: > Can someone here please test this patch to the new armv6 pmap? It > eliminates the use of the page queues lock and updates some > comments. Similar changes were recently made to the original arm pmap. > > Thanks, > Alan > I have booted FreeBSD with the patch on a Pandaboard and it appears to work. Are there any tests you would like me to run? Andrew From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 11:09:26 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7B2FA106564A for ; Mon, 10 Sep 2012 11:09:26 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 64DDA8FC12 for ; Mon, 10 Sep 2012 11:09:26 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q8AB9QGv063091 for ; Mon, 10 Sep 2012 11:09:26 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q8AB9O4G062777 for freebsd-arm@FreeBSD.org; Mon, 10 Sep 2012 11:09:24 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 10 Sep 2012 11:09:24 GMT Message-Id: <201209101109.q8AB9O4G062777@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-arm@FreeBSD.org Cc: Subject: Current problem reports assigned to freebsd-arm@FreeBSD.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 11:09:26 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/171096 arm [arm][xscale][ixp]Allow 16bit access on PCI bus o arm/166256 arm build fail in pmap.c o arm/162159 arm [panic] USB errors leading to panic on DockStar 9.0-RC o arm/161110 arm /usr/src/sys/arm/include/signal.h is bad o arm/161044 arm devel/icu does not build on arm o arm/158950 arm arm/sheevaplug fails fsx when mmap operations are enab o arm/155894 arm [patch] Enable at91 booting from SDHC (high capacity) p arm/155214 arm [patch] MMC/SD IO slow on Atmel ARM with modern large o arm/154227 arm [geli] using GELI leads to panic on ARM o arm/153380 arm Panic / translation fault with wlan on ARM o arm/150581 arm [irq] Unknown error generates IRQ address decoding err o arm/149288 arm mail/dovecot causes panic during configure on Sheevapl o arm/134368 arm [patch] nslu2_led driver for the LEDs on the NSLU2 p arm/134338 arm [patch] Lock GPIO accesses on ixp425 14 problems total. From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 16:49:33 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 61FE3106566C for ; Mon, 10 Sep 2012 16:49:33 +0000 (UTC) (envelope-from alc@rice.edu) Received: from mh10.mail.rice.edu (mh10.mail.rice.edu [128.42.201.30]) by mx1.freebsd.org (Postfix) with ESMTP id 347B68FC12 for ; Mon, 10 Sep 2012 16:49:33 +0000 (UTC) Received: from mh10.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh10.mail.rice.edu (Postfix) with ESMTP id B26A1604F5; Mon, 10 Sep 2012 11:49:32 -0500 (CDT) Received: from mh10.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh10.mail.rice.edu (Postfix) with ESMTP id B12BE604FA; Mon, 10 Sep 2012 11:49:32 -0500 (CDT) X-Virus-Scanned: by amavis-2.7.0 at mh10.mail.rice.edu, auth channel Received: from mh10.mail.rice.edu ([127.0.0.1]) by mh10.mail.rice.edu (mh10.mail.rice.edu [127.0.0.1]) (amavis, port 10026) with ESMTP id JcT5oDmdxb_j; Mon, 10 Sep 2012 11:49:32 -0500 (CDT) Received: from adsl-216-63-78-18.dsl.hstntx.swbell.net (adsl-216-63-78-18.dsl.hstntx.swbell.net [216.63.78.18]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) (Authenticated sender: alc) by mh10.mail.rice.edu (Postfix) with ESMTPSA id 556DF604F2; Mon, 10 Sep 2012 11:49:32 -0500 (CDT) Message-ID: <504E1A1B.90101@rice.edu> Date: Mon, 10 Sep 2012 11:49:31 -0500 From: Alan Cox User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:8.0) Gecko/20111113 Thunderbird/8.0 MIME-Version: 1.0 To: Andrew Turner References: <504BDC56.3060607@rice.edu> <20120910211817.2d8a340d@fubar.geek.nz> In-Reply-To: <20120910211817.2d8a340d@fubar.geek.nz> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "arm@freebsd.org" , Alan Cox Subject: Re: armv6 pmap patch X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 16:49:33 -0000 On 09/10/2012 04:18, Andrew Turner wrote: > On Sat, 08 Sep 2012 19:01:26 -0500 > Alan Cox wrote: > >> Can someone here please test this patch to the new armv6 pmap? It >> eliminates the use of the page queues lock and updates some >> comments. Similar changes were recently made to the original arm pmap. >> >> Thanks, >> Alan >> > I have booted FreeBSD with the patch on a Pandaboard and it appears to > work. Are there any tests you would like me to run? > Nothing in particular, since almost anything that you do on the machine will exercise the changed code. There appears to be a lot of unnecessary dropping and reacquiring of locks around UMA calls in both pmap.c and pmap-v6.c. I will try to generate a patch to eliminate this later in the week. Alan From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 17:04:00 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 81E0A106564A for ; Mon, 10 Sep 2012 17:04:00 +0000 (UTC) (envelope-from tennessee2@ups.com) Received: from mail.redsa.com.ar (mail.redsa.com.ar [200.89.184.26]) by mx1.freebsd.org (Postfix) with ESMTP id 9683C8FC15 for ; Mon, 10 Sep 2012 17:03:59 +0000 (UTC) Received: from [132.98.156.100] (account altersw314@ups.com HELO sxwschkekwy.zsycrvnnthcjerx.net) by mail.redsa.com.ar (CommuniGate Pro SMTP 5.2.3) with ESMTPA id 240127714 for freebsd-arm@freebsd.org; Mon, 10 Sep 2012 14:03:58 -0300 From: "UPS Quantum View" To: Date: Mon, 10 Sep 2012 14:03:58 -0300 MIME-Version: 1.0 X-Priority: 3 X-Mailer: boshozue_87 Message-ID: <6372191730.VH33XJJF395128@snrdiv.mgqbreiqukqu.tv> Content-Type: multipart/mixed; boundary="----=a__olft_18_62_98" X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Delivery Notification UPS Mon, 10 Sep 2012 14:03:58 -0300 X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 17:04:00 -0000 ------=a__olft_18_62_98 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable --> This message was sent to you at the request of Tumi Holdings Inc to not= ify you that the electronic shipment information below has been transmitt= ed to UPS. The physical package(s) may or may not have actually been tend= ered to UPS for shipment.Important Delivery InformationScheduled Delivery= : 12-September-2012Number of Packages:1 UPS Service:EXPEDITED Weight:8,5 LBS Tracking Number:0T60921U9681900763 Invoice Number:ORDER#5202 Purchase Order Number:SUPPLIES Please refer to attached file____25@2@@20orYbuh____ © 2012 United Parcel Service of America, Inc. UPS,=A0 Contact UPS ------=a__olft_18_62_98-- From owner-freebsd-arm@FreeBSD.ORG Mon Sep 10 22:34:22 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B8DB1106564A for ; Mon, 10 Sep 2012 22:34:22 +0000 (UTC) (envelope-from freebsd@damnhippie.dyndns.org) Received: from duck.symmetricom.us (duck.symmetricom.us [206.168.13.214]) by mx1.freebsd.org (Postfix) with ESMTP id 5F2768FC14 for ; Mon, 10 Sep 2012 22:34:21 +0000 (UTC) Received: from damnhippie.dyndns.org (daffy.symmetricom.us [206.168.13.218]) by duck.symmetricom.us (8.14.5/8.14.5) with ESMTP id q8AMYL1b089745 for ; Mon, 10 Sep 2012 16:34:21 -0600 (MDT) (envelope-from freebsd@damnhippie.dyndns.org) Received: from [172.22.42.240] (revolution.hippie.lan [172.22.42.240]) by damnhippie.dyndns.org (8.14.3/8.14.3) with ESMTP id q8AMYIc6048561; Mon, 10 Sep 2012 16:34:18 -0600 (MDT) (envelope-from freebsd@damnhippie.dyndns.org) From: Ian Lepore To: Alan Cox In-Reply-To: <504B85BE.3030101@rice.edu> References: <502FD67A.7030003@rice.edu> <1345315508.27688.260.camel@revolution.hippie.lan> <503D12AE.1050705@rice.edu> <1346350374.1140.525.camel@revolution.hippie.lan> <5045351F.6060201@rice.edu> <1346723041.1140.602.camel@revolution.hippie.lan> <504B85BE.3030101@rice.edu> Content-Type: text/plain; charset="us-ascii" Date: Mon, 10 Sep 2012 16:34:18 -0600 Message-ID: <1347316458.1137.41.camel@revolution.hippie.lan> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit Cc: "arm@freebsd.org" Subject: Re: arm pmap locking X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2012 22:34:22 -0000 On Sat, 2012-09-08 at 12:51 -0500, Alan Cox wrote: > > Here is another patch. This simplifies the kernel pmap locking in > pmap_enter_pv() and corrects some comments. > > Thanks in advance, > Alan > I'm afraid I'm not going to be able to do this any time soon. I bricked my DreamPlug last Friday (the bright side: the nandfs_newfs command in -current apparently works just fine when applied to real hardware rather than the simulator device). I haven't had any success in getting openocd to transfer a new uboot image to it. So I'm probably going to be without arm hardware that can run anything newer than 8.2 for a few weeks (until my new atmel eval board arrives). -- Ian From owner-freebsd-arm@FreeBSD.ORG Tue Sep 11 19:06:25 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EA866106566C for ; Tue, 11 Sep 2012 19:06:25 +0000 (UTC) (envelope-from alc@rice.edu) Received: from mh10.mail.rice.edu (mh10.mail.rice.edu [128.42.201.30]) by mx1.freebsd.org (Postfix) with ESMTP id AEFB88FC16 for ; Tue, 11 Sep 2012 19:06:25 +0000 (UTC) Received: from mh10.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh10.mail.rice.edu (Postfix) with ESMTP id C6BAB604FD; Tue, 11 Sep 2012 14:06:24 -0500 (CDT) Received: from mh10.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh10.mail.rice.edu (Postfix) with ESMTP id C513D60392; Tue, 11 Sep 2012 14:06:24 -0500 (CDT) X-Virus-Scanned: by amavis-2.7.0 at mh10.mail.rice.edu, auth channel Received: from mh10.mail.rice.edu ([127.0.0.1]) by mh10.mail.rice.edu (mh10.mail.rice.edu [127.0.0.1]) (amavis, port 10026) with ESMTP id p6UJToijRutb; Tue, 11 Sep 2012 14:06:24 -0500 (CDT) Received: from adsl-216-63-78-18.dsl.hstntx.swbell.net (adsl-216-63-78-18.dsl.hstntx.swbell.net [216.63.78.18]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) (Authenticated sender: alc) by mh10.mail.rice.edu (Postfix) with ESMTPSA id 53764604F7; Tue, 11 Sep 2012 14:06:24 -0500 (CDT) Message-ID: <504F8BAC.4040902@rice.edu> Date: Tue, 11 Sep 2012 14:06:20 -0500 From: Alan Cox User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:8.0) Gecko/20111113 Thunderbird/8.0 MIME-Version: 1.0 To: Ian Lepore References: <502FD67A.7030003@rice.edu> <1345315508.27688.260.camel@revolution.hippie.lan> <503D12AE.1050705@rice.edu> <1346350374.1140.525.camel@revolution.hippie.lan> <5045351F.6060201@rice.edu> <1346723041.1140.602.camel@revolution.hippie.lan> <504B85BE.3030101@rice.edu> <1347316458.1137.41.camel@revolution.hippie.lan> In-Reply-To: <1347316458.1137.41.camel@revolution.hippie.lan> Content-Type: multipart/mixed; boundary="------------050804070501010509010903" Cc: "arm@freebsd.org" , Alan Cox Subject: Re: arm pmap locking X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Sep 2012 19:06:26 -0000 This is a multi-part message in MIME format. --------------050804070501010509010903 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 09/10/2012 17:34, Ian Lepore wrote: > On Sat, 2012-09-08 at 12:51 -0500, Alan Cox wrote: >> Here is another patch. This simplifies the kernel pmap locking in >> pmap_enter_pv() and corrects some comments. >> >> Thanks in advance, >> Alan >> > I'm afraid I'm not going to be able to do this any time soon. I bricked > my DreamPlug last Friday (the bright side: the nandfs_newfs command in > -current apparently works just fine when applied to real hardware rather > than the simulator device). I haven't had any success in getting > openocd to transfer a new uboot image to it. So I'm probably going to > be without arm hardware that can run anything newer than 8.2 for a few > weeks (until my new atmel eval board arrives). > Thanks for letting me know. Could someone else here please test the attached patch? --------------050804070501010509010903 Content-Type: text/plain; name="arm_pmap13.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="arm_pmap13.patch" Index: arm/arm/pmap.c =================================================================== --- arm/arm/pmap.c (revision 240166) +++ arm/arm/pmap.c (working copy) @@ -1588,11 +1588,11 @@ pmap_clearbit(struct vm_page *pg, u_int maskbits) */ /* - * pmap_enter_pv: enter a mapping onto a vm_page lst + * pmap_enter_pv: enter a mapping onto a vm_page's PV list * * => caller should hold the proper lock on pvh_global_lock * => caller should have pmap locked - * => we will gain the lock on the vm_page and allocate the new pv_entry + * => we will (someday) gain the lock on the vm_page's PV list * => caller should adjust ptp's wire_count before calling * => caller should not adjust pmap's wire_count */ @@ -1600,33 +1600,26 @@ static void pmap_enter_pv(struct vm_page *pg, struct pv_entry *pve, pmap_t pm, vm_offset_t va, u_int flags) { - int km; rw_assert(&pvh_global_lock, RA_WLOCKED); - + PMAP_ASSERT_LOCKED(pm); if (pg->md.pv_kva != 0) { - /* PMAP_ASSERT_LOCKED(pmap_kernel()); */ - pve->pv_pmap = pmap_kernel(); + pve->pv_pmap = kernel_pmap; pve->pv_va = pg->md.pv_kva; pve->pv_flags = PVF_WRITE | PVF_UNMAN; + if (pm != kernel_pmap) + PMAP_LOCK(kernel_pmap); + TAILQ_INSERT_HEAD(&pg->md.pv_list, pve, pv_list); + TAILQ_INSERT_HEAD(&kernel_pmap->pm_pvlist, pve, pv_plist); + if (pm != kernel_pmap) + PMAP_UNLOCK(kernel_pmap); pg->md.pv_kva = 0; - - if (!(km = PMAP_OWNED(pmap_kernel()))) - PMAP_LOCK(pmap_kernel()); - TAILQ_INSERT_HEAD(&pg->md.pv_list, pve, pv_list); - TAILQ_INSERT_HEAD(&pve->pv_pmap->pm_pvlist, pve, pv_plist); - PMAP_UNLOCK(pmap_kernel()); if ((pve = pmap_get_pv_entry()) == NULL) panic("pmap_kenter_pv: no pv entries"); - if (km) - PMAP_LOCK(pmap_kernel()); } - - PMAP_ASSERT_LOCKED(pm); pve->pv_pmap = pm; pve->pv_va = va; pve->pv_flags = flags; - TAILQ_INSERT_HEAD(&pg->md.pv_list, pve, pv_list); TAILQ_INSERT_HEAD(&pm->pm_pvlist, pve, pv_plist); pg->md.pvh_attrs |= flags & (PVF_REF | PVF_MOD); --------------050804070501010509010903-- From owner-freebsd-arm@FreeBSD.ORG Tue Sep 11 22:03:29 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id BB1C6106566C for ; Tue, 11 Sep 2012 22:03:29 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-oa0-f54.google.com (mail-oa0-f54.google.com [209.85.219.54]) by mx1.freebsd.org (Postfix) with ESMTP id 798378FC0C for ; Tue, 11 Sep 2012 22:03:29 +0000 (UTC) Received: by oagm1 with SMTP id m1so724356oag.13 for ; Tue, 11 Sep 2012 15:03:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=QMXSlO4Lo88GBMrBU7Km+A4TPrvYGXDbckfvYGpyLkw=; b=sNcgJ4ymYxaf/SHmW4ysHRrJ0c12cJm+mUs5XZ95PmtW2l4M9zl41NTuG7lBx8juXj CbcFL9BgGy58BSLEDKlnsWPFqKYKKpjaHmHyRn1/S1mazMzRXMSMq7RJ7BqJpoBmUXAW Y40YIcMM6u+sslgQO/CfMfbcE3zsvUrJ8vLZB148zRDLVflE7FLc5zu0sYRUBIbsHUY+ NzGE6CMM8XYJZqWmq7l6+mUKnWEUVJu+XCneeANF8uvQoAGnEsI0fOyeHmreEMb0wQYb gI6QGKXjcBEJYIXSx1RrQy1JoAacHdnJ1fOf4HcKnSWtf/5b3Wq7y2Jfh3D8quJ0xqAm xsCQ== MIME-Version: 1.0 Received: by 10.182.139.2 with SMTP id qu2mr6031743obb.35.1347401008799; Tue, 11 Sep 2012 15:03:28 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.76.8.98 with HTTP; Tue, 11 Sep 2012 15:03:28 -0700 (PDT) In-Reply-To: References: Date: Tue, 11 Sep 2012 15:03:28 -0700 X-Google-Sender-Auth: u9RgFQ0YzvCWtbSPOsmyNi7gzhw Message-ID: From: Adrian Chadd To: Michael Reifenberger Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-arm@freebsd.org Subject: Re: FreeBSD on Odroid-X X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Sep 2012 22:03:29 -0000 That looks pretty cool! Offer to buy one of the arm developers one? Adrian On 3 September 2012 09:06, Michael Reifenberger wrote: > Hi, > is someone already working on a Odroid-X Port? > > ODROID-X is a $129 ARMv7 development board that packs four Cortex-A9 cores > (Samsung Exynos 4412) along with Mali-400 graphics. > > Currently it runs linaro (Ubuntu) and Android 4.0.4 quite fastly. > > Further Infos: > http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G133999328931 > http://dev.odroid.com/projects/odroid-xq > http://com.odroid.com/sigong/nf_file_board/nfile_board_view.php?keyword=&tag=&bid=64 > > Bye/2 > --- > Michael Reifenberger > Michael@Reifenberger.com > http://www.Reifenberger.com > > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" From owner-freebsd-arm@FreeBSD.ORG Wed Sep 12 02:13:55 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 87894106566C; Wed, 12 Sep 2012 02:13:55 +0000 (UTC) (envelope-from gnn@neville-neil.com) Received: from vps.hungerhost.com (vps.hungerhost.com [216.38.53.176]) by mx1.freebsd.org (Postfix) with ESMTP id 40E2F8FC14; Wed, 12 Sep 2012 02:13:55 +0000 (UTC) Received: from pool-96-250-5-62.nycmny.fios.verizon.net ([96.250.5.62]:58300 helo=new-host-3.home) by vps.hungerhost.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.77) (envelope-from ) id 1TBcSg-00056r-Dv; Tue, 11 Sep 2012 22:13:54 -0400 Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.0 \(1486\)) From: George Neville-Neil In-Reply-To: <20120910064532.GP58312@funkthat.com> Date: Tue, 11 Sep 2012 22:13:53 -0400 Content-Transfer-Encoding: 7bit Message-Id: References: <20120910014813.GL58312@funkthat.com> <4448530B-7916-4642-BD32-6A96AD5DB22B@FreeBSD.org> <20120910064532.GP58312@funkthat.com> To: John-Mark Gurney X-Mailer: Apple Mail (2.1486) X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vps.hungerhost.com X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - neville-neil.com Cc: freebsd-arm@FreeBSD.org, Tim Kientzle Subject: Re: -current on BeableBone successful X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Sep 2012 02:13:55 -0000 On Sep 10, 2012, at 02:45 , John-Mark Gurney wrote: > Tim Kientzle wrote this message on Sun, Sep 09, 2012 at 20:16 -0700: >>> Third is that I get this error: >>> ip length 328 disagrees with bytes received 330. >>> accepting packet with data after udp payload. >>> >>> This appeard to be from sbin/dhclient/packet.c... Not sure exactly why >>> we are returning a large packet to userland? >> >> I haven't seen this one. > > Looks like this is a BeagleBone issue. I haven't tracked it down, but > I did a tcpdump on the server (my other arm board), and the packet has > the correct length of 342 bytes to match the 328 ip length (plus 14 > bytes of ethernet header)... tcpdump on the BeagleBone receives a > 344 byte frame with a couple of stray bytes at the end of the frame... > > Could this be an miscalculation when we are copying around the frame > to deal the fact our IP stack can't deal w/ misaligned headers? Just > a thought.. > > Hmm... Just ran some experiments... > > ping -s sent received > 1 0x2b 0x3e > 10 0x34 0x3e > 18 0x3c 0x3e > 19 0x3d 0x3f > 20 0x3e 0x40 > 21 0x3f 0x41 > 99 0x8d 0x8f > 100 0x8e 0x90 > 101 0x8f 0x91 > 999 0x411 0x413 > 1000 0x412 0x414 > 1001 0x413 0x415 > > and 0x3e is 62, which is two short of the min frame length of 64... > > Hope this helps. My take is the following. The minimum packet is 60, not including the preamble or the CRC, so with a CRC it's 64. It might be that there is some alignment issue as well. The difference between all the sent/received is 2 bytes and that's consistent so either something isn't being stripped or there is an alignment issue all the way round. Best, George From owner-freebsd-arm@FreeBSD.ORG Wed Sep 12 06:16:33 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3EA92106564A; Wed, 12 Sep 2012 06:16:33 +0000 (UTC) (envelope-from tinderbox@freebsd.org) Received: from freebsd-stable.sentex.ca (freebsd-stable.sentex.ca [IPv6:2607:f3e0:0:3::6502:9b]) by mx1.freebsd.org (Postfix) with ESMTP id F2E818FC17; Wed, 12 Sep 2012 06:16:32 +0000 (UTC) Received: from freebsd-stable.sentex.ca (localhost [127.0.0.1]) by freebsd-stable.sentex.ca (8.14.5/8.14.5) with ESMTP id q8C6GW8P033200; Wed, 12 Sep 2012 06:16:32 GMT (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by freebsd-stable.sentex.ca (8.14.5/8.14.5/Submit) id q8C6GWqw033162; Wed, 12 Sep 2012 06:16:32 GMT (envelope-from tinderbox@freebsd.org) Date: Wed, 12 Sep 2012 06:16:32 GMT Message-Id: <201209120616.q8C6GWqw033162@freebsd-stable.sentex.ca> X-Authentication-Warning: freebsd-stable.sentex.ca: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Precedence: bulk Cc: Subject: [releng_9_1 tinderbox] failure on arm/arm X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Sep 2012 06:16:33 -0000 TB --- 2012-09-12 06:10:00 - tinderbox 2.9 running on freebsd-stable.sentex.ca TB --- 2012-09-12 06:10:00 - FreeBSD freebsd-stable.sentex.ca 8.2-STABLE FreeBSD 8.2-STABLE #4: Wed Sep 28 13:48:49 UTC 2011 mdtancsa@freebsd-stable.sentex.ca:/usr/obj/usr/src/sys/server amd64 TB --- 2012-09-12 06:10:00 - starting RELENG_9_1 tinderbox run for arm/arm TB --- 2012-09-12 06:10:00 - cleaning the object tree TB --- 2012-09-12 06:10:00 - checking out /src from svn://svn.freebsd.org/base/releng/9.1 TB --- 2012-09-12 06:10:00 - cd /tinderbox/RELENG_9_1/arm/arm TB --- 2012-09-12 06:10:00 - /usr/local/bin/svn cleanup /src TB --- 2012-09-12 06:11:43 - /usr/local/bin/svn update /src TB --- 2012-09-12 06:16:32 - WARNING: /usr/local/bin/svn returned exit code 1 TB --- 2012-09-12 06:16:32 - ERROR: unable to check out the source tree TB --- 2012-09-12 06:16:32 - 3.31 user 4.05 system 391.70 real http://tinderbox.freebsd.org/tinderbox-releng_9-RELENG_9_1-arm-arm.full From owner-freebsd-arm@FreeBSD.ORG Wed Sep 12 23:40:16 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 09EA71065680 for ; Wed, 12 Sep 2012 23:40:16 +0000 (UTC) (envelope-from mlfbsd@kanar.ci0.org) Received: from kanar.ci0.org (unknown [IPv6:2a01:e0b:1:150:ca0a:a9ff:fef1:a4c9]) by mx1.freebsd.org (Postfix) with ESMTP id 8FBBE8FC15 for ; Wed, 12 Sep 2012 23:40:15 +0000 (UTC) Received: from kanar.ci0.org (pluxor@localhost [127.0.0.1]) by kanar.ci0.org (8.14.5/8.14.5) with ESMTP id q8CNdmsw000195; Thu, 13 Sep 2012 01:39:48 +0200 (CEST) (envelope-from mlfbsd@kanar.ci0.org) Received: (from mlfbsd@localhost) by kanar.ci0.org (8.14.5/8.14.5/Submit) id q8CNdlUc000194; Thu, 13 Sep 2012 01:39:47 +0200 (CEST) (envelope-from mlfbsd) Date: Thu, 13 Sep 2012 01:39:47 +0200 From: Olivier Houchard To: Alan Cox Message-ID: <20120912233947.GA181@ci0.org> References: <502FD67A.7030003@rice.edu> <1345315508.27688.260.camel@revolution.hippie.lan> <503D12AE.1050705@rice.edu> <1346350374.1140.525.camel@revolution.hippie.lan> <5045351F.6060201@rice.edu> <1346723041.1140.602.camel@revolution.hippie.lan> <504B85BE.3030101@rice.edu> <1347316458.1137.41.camel@revolution.hippie.lan> <504F8BAC.4040902@rice.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <504F8BAC.4040902@rice.edu> User-Agent: Mutt/1.4.2.3i Cc: "arm@freebsd.org" Subject: Re: arm pmap locking X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Sep 2012 23:40:16 -0000 On Tue, Sep 11, 2012 at 02:06:20PM -0500, Alan Cox wrote: > Thanks for letting me know. > > Could someone else here please test the attached patch? > Hi Alan, I tested it, and it seems to boot and run fine. Thanks a lot ! Olivier From owner-freebsd-arm@FreeBSD.ORG Fri Sep 14 05:33:08 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AF22F1065782 for ; Fri, 14 Sep 2012 05:33:08 +0000 (UTC) (envelope-from alie@affle.com) Received: from mail-vc0-f182.google.com (mail-vc0-f182.google.com [209.85.220.182]) by mx1.freebsd.org (Postfix) with ESMTP id 6260C8FC08 for ; Fri, 14 Sep 2012 05:33:08 +0000 (UTC) Received: by vcbfw7 with SMTP id fw7so5739366vcb.13 for ; Thu, 13 Sep 2012 22:33:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type :x-gm-message-state; bh=8MCewIH+TtLAoSeYwdnpe1QM2Nj5/Olm9BcHYo3O8Kc=; b=eTp1GxdTGG6eF78kh9vVJFdH03qtRMe744wjhz683KgMwa8oHptvSXZXJh0sz+8PfY QEZPwkXDS3G29/N95VpiT2XjuDrjQyELlwXgbNLrF58QX7VZL6Zt7x9DLiEJc6K70nB4 pcgLA/De4bdZxdyjNlRrupsZix6NAabzgFxVTyYQx9vCdbccC3qOs0XeHhm7/UrFUr1v EgnVeO9awDXaSeGX/NLkIQ4CZhj5KXhja46v4eBgBEp2vzDgBheSCN0ELhKFQy32Z4hd izELUv/V5hykRFqNDEGIe2Mrh82QRTlvDQnfkzktExm1u9UoWuMyGnwfn+GGTdZ8LViG tVvg== MIME-Version: 1.0 Received: by 10.58.201.195 with SMTP id kc3mr369132vec.12.1347600787497; Thu, 13 Sep 2012 22:33:07 -0700 (PDT) Received: by 10.58.221.193 with HTTP; Thu, 13 Sep 2012 22:33:07 -0700 (PDT) Date: Fri, 14 Sep 2012 13:33:07 +0800 Message-ID: From: Alie Tan To: freebsd-arm@freebsd.org X-Gm-Message-State: ALoCoQmVqJlf2jBe2nLjtlUMvvpGN0LGnSloG3/VxNX1JQgGdFhRC0ioVtiBUk0NTiHh19F80icX Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Unable to build FreeBSD xdev tools for ARM on FreeBSD 9-PRERELEASE X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Sep 2012 05:33:08 -0000 Hi, I got this compilation error while trying to build xdev on FreeBSD 9-STABLE # cd /usr/src && make xdev XDEV=arm XDEV_ARCH=arm . . . clang -O -pipe -fpic -fvisibility=hidden -DVISIBILITY_HIDDEN -std=gnu99 -Qunused-arguments -c /usr/src/lib/libcompiler_rt/../../contrib/compiler-rt/lib/umodti3.c -o umodti3.o clang -O -pipe -fpic -fvisibility=hidden -DVISIBILITY_HIDDEN -std=gnu99 -Qunused-arguments -c /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c -o __sync_fetch_and_add_4.o In file included from /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: conflicting types for '__sync_fetch_and_add_4' NAME(volatile TYPE *ptr, TYPE value) ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: expanded from macro 'NAME' #define NAME __sync_fetch_and_add_4 ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: note: '__sync_fetch_and_add_4' is a builtin with type 'int (volatile int *, int, ...)' NAME(volatile TYPE *ptr, TYPE value) ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: expanded from macro 'NAME' #define NAME __sync_fetch_and_add_4 ^ In file included from /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: definition of builtin function '__sync_fetch_and_add_4' NAME(volatile TYPE *ptr, TYPE value) ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: expanded from macro 'NAME' #define NAME __sync_fetch_and_add_4 ^ 2 errors generated. *** [__sync_fetch_and_add_4.o] Error code 1 Stop in /usr/src/lib/libcompiler_rt. *** [lib/libcompiler_rt__PL] Error code 1 Stop in /usr/src. *** [libraries] Error code 1 Stop in /usr/src. *** [_xi-libraries] Error code 1 Stop in /usr/src. *** [xdev] Error code 1 Stop in /usr/src. Thanks, Alie Tan From owner-freebsd-arm@FreeBSD.ORG Fri Sep 14 18:03:24 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D7103106566B for ; Fri, 14 Sep 2012 18:03:24 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id 7B9AB8FC08 for ; Fri, 14 Sep 2012 18:03:24 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id q8EI3IC9033337 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 14 Sep 2012 11:03:18 -0700 (PDT) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id q8EI3IaC033336 for freebsd-arm@FreeBSD.org; Fri, 14 Sep 2012 11:03:18 -0700 (PDT) (envelope-from jmg) Date: Fri, 14 Sep 2012 11:03:18 -0700 From: John-Mark Gurney To: freebsd-arm@FreeBSD.org Message-ID: <20120914180318.GX58312@funkthat.com> Mail-Followup-To: freebsd-arm@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-PGP-Fingerprint: 54BA 873B 6515 3F10 9E88 9322 9CB1 8F74 6D3F A396 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-to-the-FBI-CIA-and-NSA: HI! HOW YA DOIN? can i haz chizburger? X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Fri, 14 Sep 2012 11:03:18 -0700 (PDT) Cc: Subject: minor patches to cpsw and arm conf files X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Sep 2012 18:03:24 -0000 The first patch removes some dead code, an incorrect comment, and some anoying printf's from TI's cpsw driver. I left the other printf's in the same function since they are clearly there to denote unimplemented functionality. The second patch fixes up the conf files such that they follow the proper format of options... This applied for both commented out options and uncommented options... I also fixes a few that had "#options" and the like to make it more standard... for people who care, part of it was automated with: for i in `grep -l '^#options' *'; do sed -e 's/^#options/options /' < $i > tmp && mv tmp $i; done for i in `grep -l '^options' *'; do sed -e 's/^options/options /' < $i > tmp && mv tmp $i; done Anyone have any objections to me committing these? Thanks. Index: ti/cpsw/if_cpsw.c =================================================================== --- ti/cpsw/if_cpsw.c (revision 240480) +++ ti/cpsw/if_cpsw.c (working copy) @@ -713,8 +713,6 @@ sc->cpsw_if_flags = ifp->if_flags; CPSW_GLOBAL_UNLOCK(sc); break; - printf("%s: SIOCSIFFLAGS\n",__func__); - break; case SIOCADDMULTI: printf("%s: SIOCADDMULTI\n",__func__); break; @@ -724,12 +722,10 @@ case SIOCSIFCAP: printf("%s: SIOCSIFCAP\n",__func__); break; - case SIOCGIFMEDIA: /* fall through */ - printf("%s: SIOCGIFMEDIA\n",__func__); + case SIOCGIFMEDIA: error = ifmedia_ioctl(ifp, ifr, &sc->mii->mii_media, command); break; case SIOCSIFMEDIA: - printf("%s: SIOCSIFMEDIA\n",__func__); error = ifmedia_ioctl(ifp, ifr, &sc->mii->mii_media, command); break; default: Index: conf/KB920X =================================================================== --- conf/KB920X (revision 240480) +++ conf/KB920X (working copy) @@ -144,6 +144,6 @@ device cdce # emulate an ethernet device usb_template # Control of the gadget -options IEEE80211_SUPPORT_MESH +options IEEE80211_SUPPORT_MESH -options AH_SUPPORT_AR5416 +options AH_SUPPORT_AR5416 Index: conf/QILA9G20 =================================================================== --- conf/QILA9G20 (revision 240480) +++ conf/QILA9G20 (working copy) @@ -51,7 +51,7 @@ options ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\" -options ALT_BREAK_TO_DEBUGGER +options ALT_BREAK_TO_DEBUGGER #options MSDOSFS #MSDOS Filesystem #options CD9660 #ISO 9660 Filesystem Index: conf/SAM9X25EK =================================================================== --- conf/SAM9X25EK (revision 240480) +++ conf/SAM9X25EK (working copy) @@ -51,7 +51,7 @@ options ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\" -options ALT_BREAK_TO_DEBUGGER +options ALT_BREAK_TO_DEBUGGER #options MSDOSFS #MSDOS Filesystem #options CD9660 #ISO 9660 Filesystem Index: conf/SN9G45 =================================================================== --- conf/SN9G45 (revision 240480) +++ conf/SN9G45 (working copy) @@ -50,7 +50,7 @@ options ROOTDEVNAME=\"ufs:/dev/da0s1\" -options ALT_BREAK_TO_DEBUGGER +options ALT_BREAK_TO_DEBUGGER #options MSDOSFS #MSDOS Filesystem #options CD9660 #ISO 9660 Filesystem Index: conf/PANDABOARD =================================================================== --- conf/PANDABOARD (revision 240480) +++ conf/PANDABOARD (working copy) @@ -46,15 +46,15 @@ options UFS_DIRHASH #Improve performance on big directories options NFSCLIENT #Network Filesystem Client device snp -#options NFSCL +#options NFSCL #options NFSSERVER #Network Filesystem Server options NFS_ROOT #NFS usable as /, requires NFSCLIENT -options BREAK_TO_DEBUGGER -options BOOTP_NFSROOT -options BOOTP_COMPAT -options BOOTP -options BOOTP_NFSV3 -options BOOTP_WIRED_TO=ue0 +options BREAK_TO_DEBUGGER +options BOOTP_NFSROOT +options BOOTP_COMPAT +options BOOTP +options BOOTP_NFSV3 +options BOOTP_WIRED_TO=ue0 options MSDOSFS #MSDOS Filesystem #options CD9660 #ISO 9660 Filesystem #options PROCFS #Process filesystem (requires PSEUDOFS) @@ -93,7 +93,7 @@ device pl310 # PL310 L2 cache controller # Debugging for use in -current -#options VERBOSE_SYSINIT #Enable verbose sysinit messages +#options VERBOSE_SYSINIT #Enable verbose sysinit messages options KDB options DDB #Enable the kernel debugger #options INVARIANTS #Enable calls of extra sanity checking @@ -106,16 +106,16 @@ # The following enables MFS as root, this seems similar to an initramfs or initrd # as used in Linux. -# options MD_ROOT -# options MD_ROOT_SIZE=7560 +#options MD_ROOT +#options MD_ROOT_SIZE=7560 device random # Entropy device # USB support device usb options USB_DEBUG -#options USB_REQ_DEBUG -#options USB_VERBOSE +#options USB_REQ_DEBUG +#options USB_VERBOSE device ohci device ehci device umass @@ -125,7 +125,7 @@ # USB Ethernet support, requires miibus device miibus -# device axe # ASIX Electronics USB Ethernet +#device axe # ASIX Electronics USB Ethernet device smsc # SMSC LAN95xx USB Ethernet @@ -140,5 +140,5 @@ options FDT_DTB_STATIC makeoptions FDT_DTS_FILE=pandaboard.dts -# device vfp # vfp/neon -# options ARM_VFP_SUPPORT # vfp/neon +#device vfp # vfp/neon +#options ARM_VFP_SUPPORT # vfp/neon Index: conf/ARMADAXP =================================================================== --- conf/ARMADAXP (revision 240480) +++ conf/ARMADAXP (working copy) @@ -92,8 +92,8 @@ device mii device e1000phy device bpf -options HZ=1000 -options DEVICE_POLLING +options HZ=1000 +options DEVICE_POLLING device vlan #FDT Index: conf/SHEEVAPLUG =================================================================== --- conf/SHEEVAPLUG (revision 240480) +++ conf/SHEEVAPLUG (working copy) @@ -56,8 +56,8 @@ device mii device e1000phy device bpf -options HZ=1000 -options DEVICE_POLLING +options HZ=1000 +options DEVICE_POLLING device vlan device cesa # Marvell security engine @@ -78,5 +78,5 @@ # Flattened Device Tree options FDT -options FDT_DTB_STATIC +options FDT_DTB_STATIC makeoptions FDT_DTS_FILE=sheevaplug.dts Index: conf/TS7800 =================================================================== --- conf/TS7800 (revision 240480) +++ conf/TS7800 (working copy) @@ -74,6 +74,6 @@ # Flattened Device Tree options FDT -options FDT_DTB_STATIC +options FDT_DTB_STATIC makeoptions FDT_DTS_FILE=ts7800.dts Index: conf/GUMSTIX-QEMU =================================================================== --- conf/GUMSTIX-QEMU (revision 240480) +++ conf/GUMSTIX-QEMU (working copy) @@ -21,5 +21,5 @@ ident GUMSTIX-QEMU -options QEMU_WORKAROUNDS +options QEMU_WORKAROUNDS nooptions ARM_CACHE_LOCK_ENABLE # QEMU does not implement this Index: conf/CNS11XXNAS =================================================================== --- conf/CNS11XXNAS (revision 240480) +++ conf/CNS11XXNAS (working copy) @@ -47,9 +47,9 @@ #options DIAGNOSTIC -#options COMPAT_FREEBSD5 -#options COMPAT_FREEBSD6 -#options COMPAT_FREEBSD7 +#options COMPAT_FREEBSD5 +#options COMPAT_FREEBSD6 +#options COMPAT_FREEBSD7 options SCHED_ULE #ULE scheduler @@ -121,4 +121,4 @@ device geom_journal device geom_part_bsd -options ROOTDEVNAME=\"ufs:da0s1a\" +options ROOTDEVNAME=\"ufs:da0s1a\" Index: conf/BEAGLEBONE =================================================================== --- conf/BEAGLEBONE (revision 240480) +++ conf/BEAGLEBONE (working copy) @@ -25,52 +25,52 @@ makeoptions MODULES_OVERRIDE="" makeoptions WITHOUT_MODULES="ahc" -options HZ=100 -options SCHED_4BSD #4BSD scheduler -options INET #InterNETworking -options INET6 #IPv6 communications protocols -options FFS #Berkeley Fast Filesystem -options SOFTUPDATES #Enable FFS soft updates support -options UFS_ACL #Support for access control lists -options UFS_DIRHASH #Improve performance on big directories -options MSDOSFS #MSDOS Filesystem -options CD9660 #ISO 9660 Filesystem -options PROCFS #Process filesystem (requires PSEUDOFS) -options PSEUDOFS #Pseudo-filesystem framework -options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] -options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI -options KTRACE #ktrace(1) support -options SYSVSHM #SYSV-style shared memory -options SYSVMSG #SYSV-style message queues -options SYSVSEM #SYSV-style semaphores -options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions -options KBD_INSTALL_CDEV # install a CDEV entry in /dev -options PREEMPTION +options HZ=100 +options SCHED_4BSD #4BSD scheduler +options INET #InterNETworking +options INET6 #IPv6 communications protocols +options FFS #Berkeley Fast Filesystem +options SOFTUPDATES #Enable FFS soft updates support +options UFS_ACL #Support for access control lists +options UFS_DIRHASH #Improve performance on big directories +options MSDOSFS #MSDOS Filesystem +options CD9660 #ISO 9660 Filesystem +options PROCFS #Process filesystem (requires PSEUDOFS) +options PSEUDOFS #Pseudo-filesystem framework +options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] +options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI +options KTRACE #ktrace(1) support +options SYSVSHM #SYSV-style shared memory +options SYSVMSG #SYSV-style message queues +options SYSVSEM #SYSV-style semaphores +options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions +options KBD_INSTALL_CDEV # install a CDEV entry in /dev +options PREEMPTION # Debugging makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols -options BREAK_TO_DEBUGGER -#options VERBOSE_SYSINIT #Enable verbose sysinit messages -options KDB -options DDB #Enable the kernel debugger -options INVARIANTS #Enable calls of extra sanity checking -options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS -options WITNESS #Enable checks to detect deadlocks and cycles -options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed -#options DIAGNOSTIC +options BREAK_TO_DEBUGGER +#options VERBOSE_SYSINIT #Enable verbose sysinit messages +options KDB +options DDB #Enable the kernel debugger +options INVARIANTS #Enable calls of extra sanity checking +options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS +options WITNESS #Enable checks to detect deadlocks and cycles +options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed +#options DIAGNOSTIC # NFS support -#options NFSCL -#options NFSSERVER #Network Filesystem Server -#options NFSCLIENT #Network Filesystem Client +#options NFSCL +#options NFSSERVER #Network Filesystem Server +#options NFSCLIENT #Network Filesystem Client # Uncomment this for NFS root -#options NFS_ROOT #NFS usable as /, requires NFSCLIENT -#options BOOTP_NFSROOT -#options BOOTP_COMPAT -#options BOOTP -#options BOOTP_NFSV3 -#options BOOTP_WIRED_TO=cpsw0 +#options NFS_ROOT #NFS usable as /, requires NFSCLIENT +#options BOOTP_NFSROOT +#options BOOTP_COMPAT +#options BOOTP +#options BOOTP_NFSV3 +#options BOOTP_WIRED_TO=cpsw0 # MMC/SD/SDIO card slot support @@ -78,7 +78,7 @@ device mmcsd # mmc/sd flash cards # Boot device is 2nd slice on MMC/SD card -options ROOTDEVNAME=\"ufs:mmcsd0s2\" +options ROOTDEVNAME=\"ufs:mmcsd0s2\" # Console and misc device uart @@ -99,9 +99,9 @@ # USB support device usb -options USB_DEBUG -#options USB_REQ_DEBUG -#options USB_VERBOSE +options USB_DEBUG +#options USB_REQ_DEBUG +#options USB_VERBOSE device musb device umass device scbus # SCSI bus (required for SCSI) Index: conf/HL201 =================================================================== --- conf/HL201 (revision 240480) +++ conf/HL201 (working copy) @@ -49,7 +49,7 @@ #options BOOTP_WIRED_TO=ate0 options BOOTP_COMPAT -options ALT_BREAK_TO_DEBUGGER +options ALT_BREAK_TO_DEBUGGER #options MSDOSFS #MSDOS Filesystem #options CD9660 #ISO 9660 Filesystem @@ -128,5 +128,5 @@ #device wlan_ccmp # 802.11 CCMP support #device wlan_tkip # 802.11 TKIP support #device wlan_amrr # AMRR transmit rate control algorithm -options ROOTDEVNAME=\"ufs:da0s1a\" +options ROOTDEVNAME=\"ufs:da0s1a\" Index: conf/EA3250 =================================================================== --- conf/EA3250 (revision 240480) +++ conf/EA3250 (working copy) @@ -65,7 +65,7 @@ device lpe # USB -options USB_DEBUG +options USB_DEBUG device usb device ohci device umass Index: conf/SAM9G20EK =================================================================== --- conf/SAM9G20EK (revision 240480) +++ conf/SAM9G20EK (working copy) @@ -50,7 +50,7 @@ options ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\" -options ALT_BREAK_TO_DEBUGGER +options ALT_BREAK_TO_DEBUGGER #options MSDOSFS #MSDOS Filesystem #options CD9660 #ISO 9660 Filesystem Index: conf/LN2410SBC =================================================================== --- conf/LN2410SBC (revision 240480) +++ conf/LN2410SBC (working copy) @@ -40,7 +40,7 @@ #options UFS_DIRHASH #Improve performance on big directories #options MD_ROOT #MD is a potential root device #options MD_ROOT_SIZE=4096 # 4MB ram disk -options ROOTDEVNAME=\"ufs:da0s1\" +options ROOTDEVNAME=\"ufs:da0s1\" #options BOOTP #options BOOTP_NFSROOT # NFS mount root filesystem using BOOTP info Index: conf/RPI-B =================================================================== --- conf/RPI-B (revision 240480) +++ conf/RPI-B (working copy) @@ -24,12 +24,12 @@ files "../broadcom/bcm2835/files.bcm2835" makeoptions MODULES_OVERRIDE="" -options KERNVIRTADDR=0xc0100000 +options KERNVIRTADDR=0xc0100000 makeoptions KERNVIRTADDR=0xc0100000 -options KERNPHYSADDR=0x00100000 +options KERNPHYSADDR=0x00100000 makeoptions KERNPHYSADDR=0x00100000 -options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x01000000 +options PHYSADDR=0x00000000 +options STARTUP_PAGETABLE_ADDR=0x01000000 makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols options HZ=100 @@ -42,13 +42,13 @@ options UFS_DIRHASH #Improve performance on big directories device snp -# options NFSCL #Network Filesystem Client -# options NFS_ROOT #NFS usable as /, requires NFSCLIENT -# options BOOTP_NFSROOT -# options BOOTP_COMPAT -# options BOOTP -# options BOOTP_NFSV3 -# options BOOTP_WIRED_TO=ue0 +#options NFSCL #Network Filesystem Client +#options NFS_ROOT #NFS usable as /, requires NFSCLIENT +#options BOOTP_NFSROOT +#options BOOTP_COMPAT +#options BOOTP +#options BOOTP_NFSV3 +#options BOOTP_WIRED_TO=ue0 options PSEUDOFS #Pseudo-filesystem framework options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] Index: conf/DOCKSTAR =================================================================== --- conf/DOCKSTAR (revision 240480) +++ conf/DOCKSTAR (working copy) @@ -56,8 +56,8 @@ device mge # Marvell Gigabit Ethernet controller device mii device bpf -options HZ=1000 -options DEVICE_POLLING +options HZ=1000 +options DEVICE_POLLING device vlan # USB @@ -71,5 +71,5 @@ # Flattened Device Tree options FDT -options FDT_DTB_STATIC +options FDT_DTB_STATIC makeoptions FDT_DTS_FILE=dockstar.dts -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-freebsd-arm@FreeBSD.ORG Fri Sep 14 18:21:44 2012 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E6021106566B for ; Fri, 14 Sep 2012 18:21:44 +0000 (UTC) (envelope-from gnn@neville-neil.com) Received: from vps.hungerhost.com (vps.hungerhost.com [216.38.53.176]) by mx1.freebsd.org (Postfix) with ESMTP id B6A958FC0C for ; Fri, 14 Sep 2012 18:21:44 +0000 (UTC) Received: from [209.249.190.124] (port=58450 helo=gnnmac.hudson-trading.com) by vps.hungerhost.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.77) (envelope-from ) id 1TCaVq-0004aF-2e; Fri, 14 Sep 2012 14:21:15 -0400 Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.0 \(1486\)) From: George Neville-Neil In-Reply-To: <20120914180318.GX58312@funkthat.com> Date: Fri, 14 Sep 2012 14:21:10 -0400 Content-Transfer-Encoding: quoted-printable Message-Id: References: <20120914180318.GX58312@funkthat.com> To: John-Mark Gurney X-Mailer: Apple Mail (2.1486) X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vps.hungerhost.com X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - neville-neil.com Cc: freebsd-arm@FreeBSD.org Subject: Re: minor patches to cpsw and arm conf files X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Sep 2012 18:21:45 -0000 On Sep 14, 2012, at 14:03 , John-Mark Gurney wrote: > The first patch removes some dead code, an incorrect comment, and some > anoying printf's from TI's cpsw driver. I left the other printf's in > the same function since they are clearly there to denote unimplemented > functionality. >=20 > The second patch fixes up the conf files such that they follow the > proper format of options... This applied for both > commented out options and uncommented options... I also fixes a few > that had "#options" and the like to make it more standard... >=20 > for people who care, part of it was automated with: > for i in `grep -l '^#options' *'; do sed -e = 's/^#options/options /' < $i > tmp && mv tmp $i; done > for i in `grep -l '^options' *'; do sed -e = 's/^options/options /' < $i > tmp && mv tmp $i; done >=20 > Anyone have any objections to me committing these? >=20 This all looks fine to me. Thanks! Best, George From owner-freebsd-arm@FreeBSD.ORG Sat Sep 15 00:12:10 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F1348106564A for ; Sat, 15 Sep 2012 00:12:09 +0000 (UTC) (envelope-from kcasey42@gmail.com) Received: from mail-pb0-f54.google.com (mail-pb0-f54.google.com [209.85.160.54]) by mx1.freebsd.org (Postfix) with ESMTP id C3F928FC08 for ; Sat, 15 Sep 2012 00:12:09 +0000 (UTC) Received: by pbbrp2 with SMTP id rp2so6946625pbb.13 for ; Fri, 14 Sep 2012 17:12:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=Cjf5idJI0EJRBzbarcLhoVoNY7mZkv/4zvLySLsyI1M=; b=zGs/Fkrnu9wA3Pi0xtQ+j+11CHWtSnH0EQmYupSFmuHnex636MbJxZXISSkOS6FWtL kwS53xcxik9gALg5wXP5h8D/FzqCJIQQM0G0GJ47MJj2bR8JgdzzKxs5eWUdZVTeLrc4 SWSi0fsN/v8X847+m+CEjJqwSVNgFDiY5kb4AWV1nVK8BRLqhesuMEyU8cXMjillr8Ks 7vulHsz7nbaGPaFIZERgtyPWSWiiPdMv78wvmKDUDqBpDSyZHbBitIZBXCRBb7jY0OyI Zt3BDPLxWqZhf+SceHyZZGQ2BFopsgVbIQZLqI+QYmThGTVb607VpO7dReW5Tpe9yHgU aGFg== Received: by 10.68.130.131 with SMTP id oe3mr7263003pbb.102.1347667929376; Fri, 14 Sep 2012 17:12:09 -0700 (PDT) Received: from silver.attuverse.com (99-21-194-223.lightspeed.sndgca.sbcglobal.net. [99.21.194.223]) by mx.google.com with ESMTPS id hc10sm1837084pbc.21.2012.09.14.17.12.07 (version=SSLv3 cipher=OTHER); Fri, 14 Sep 2012 17:12:08 -0700 (PDT) Message-ID: <5053C7D1.2080308@gmail.com> Date: Fri, 14 Sep 2012 17:12:01 -0700 From: KCasey42 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:14.0) Gecko/20120729 Thunderbird/14.0 MIME-Version: 1.0 To: freebsd-arm@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Unable to build FreeBSD xdev tools for ARM on FreeBSD 10.0-CURRENT X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Sep 2012 00:12:10 -0000 Attempting to build the cross tools # cd /usr/src # make xdev XDEV=arm XDEV_ARCH=arm on the following system # uname -a FreeBSD xxx.xxx.xxx 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240450: Thu Sep 13 05:49:13 PDT 2012 root@xxx.xxx.xxx:/usr/src/sys/amd64/compile/silver amd64 using # clang --version FreeBSD clang version 3.2 (trunk 162107) 20120817 Target: x86_64-unknown-freebsd10.0 Thread model: posix produces the following error clang -O -pipe -fpic -fvisibility=hidden -DVISIBILITY_HIDDEN -std=gnu99 -Qunused-arguments -c /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c -o __sync_fetch_and_add_4.o In file included from /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: conflicting types for '__sync_fetch_and_add_4' NAME(volatile TYPE *ptr, TYPE value) ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: expanded from macro 'NAME' #define NAME __sync_fetch_and_add_4# clang --version FreeBSD clang version 3.2 (trunk 162107) 20120817 Target: x86_64-unknown-freebsd10.0 Thread model: posix ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: note: '__sync_fetch_and_add_4' is a builtin with type 'int (volatile int *, int, ...)' NAME(volatile TYPE *ptr, TYPE value) ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: expanded from macro 'NAME' #define NAME __sync_fetch_and_add_4 ^ In file included from /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: definition of builtin function '__sync_fetch_and_add_4' NAME(volatile TYPE *ptr, TYPE value) ^ /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: expanded from macro 'NAME' #define NAME __sync_fetch_and_add_4 ^ 2 errors generated. *** [__sync_fetch_and_add_4.o] Error code 1 Stop in /usr/src/lib/libcompiler_rt. *** [lib/libcompiler_rt__PL] Error code 1 Stop in /usr/src. *** [libraries] Error code 1 Stop in /usr/src. *** [_xi-libraries] Error code 1 Stop in /usr/src. *** [xdev] Error code 1 Stop in /usr/src. From owner-freebsd-arm@FreeBSD.ORG Sat Sep 15 04:50:41 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D1AAB106566B for ; Sat, 15 Sep 2012 04:50:41 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id A217B8FC08 for ; Sat, 15 Sep 2012 04:50:41 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id q8F4oeaD042581 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 14 Sep 2012 21:50:40 -0700 (PDT) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id q8F4oev0042580; Fri, 14 Sep 2012 21:50:40 -0700 (PDT) (envelope-from jmg) Date: Fri, 14 Sep 2012 21:50:40 -0700 From: John-Mark Gurney To: Alan Cox Message-ID: <20120915045040.GZ58312@funkthat.com> Mail-Followup-To: Alan Cox , "arm@freebsd.org" References: <502FD67A.7030003@rice.edu> <1345315508.27688.260.camel@revolution.hippie.lan> <503D12AE.1050705@rice.edu> <1346350374.1140.525.camel@revolution.hippie.lan> <5045351F.6060201@rice.edu> <1346723041.1140.602.camel@revolution.hippie.lan> <504B85BE.3030101@rice.edu> <1347316458.1137.41.camel@revolution.hippie.lan> <504F8BAC.4040902@rice.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <504F8BAC.4040902@rice.edu> User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-PGP-Fingerprint: 54BA 873B 6515 3F10 9E88 9322 9CB1 8F74 6D3F A396 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-to-the-FBI-CIA-and-NSA: HI! HOW YA DOIN? can i haz chizburger? X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Fri, 14 Sep 2012 21:50:40 -0700 (PDT) Cc: "arm@freebsd.org" Subject: Re: arm pmap locking X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Sep 2012 04:50:41 -0000 Alan Cox wrote this message on Tue, Sep 11, 2012 at 14:06 -0500: > On 09/10/2012 17:34, Ian Lepore wrote: > >On Sat, 2012-09-08 at 12:51 -0500, Alan Cox wrote: > >>Here is another patch. This simplifies the kernel pmap locking in > >>pmap_enter_pv() and corrects some comments. > >> > >>Thanks in advance, > >>Alan > >> > >I'm afraid I'm not going to be able to do this any time soon. I bricked > >my DreamPlug last Friday (the bright side: the nandfs_newfs command in > >-current apparently works just fine when applied to real hardware rather > >than the simulator device). I haven't had any success in getting > >openocd to transfer a new uboot image to it. So I'm probably going to > >be without arm hardware that can run anything newer than 8.2 for a few > >weeks (until my new atmel eval board arrives). > > > > Thanks for letting me know. > > Could someone else here please test the attached patch? I figure since you've been looking at arm's pmap, that I should report to you a LOR that I observered recently on my armv6 board: lock order reversal: 1st 0xc1cf70b0 pmap (pmap) @ /usr/src.HEAD/sys/arm/arm/pmap-v6.c:673 2nd 0xc091e608 PV ENTRY (UMA zone) @ /usr/src.HEAD/sys/vm/uma_core.c:2084 KDB: stack backtrace: db_trace_self() at db_trace_self+0xc scp=0xc05a294c rlv=0xc025b298 (X_db_sym_numargs+0x1bc) rsp=0xc9d1a8fc rfp=0xc9d1aa18 X_db_sym_numargs() at X_db_sym_numargs+0x194 scp=0xc025b270 rlv=0xc0398340 (kdb_backtrace+0x3c) rsp=0xc9d1aa1c rfp=0xc9d1aa2c r4=0xc06bda44 kdb_backtrace() at kdb_backtrace+0xc scp=0xc0398310 rlv=0xc03ad3f8 (witness_display_spinlock+0x80) rsp=0xc9d1aa30 rfp=0xc9d1aa44 r4=0x00000001 witness_display_spinlock() at witness_display_spinlock+0x5c scp=0xc03ad3d4 rlv=0xc03ae6d8 (witness_checkorder+0x884) rsp=0xc9d1aa48 rfp=0xc9d1aa98 r5=0xc1cf70b0 r4=0xc06263d4 witness_checkorder() at witness_checkorder+0xc scp=0xc03ade60 rlv=0xc0355b9c (_mtx_lock_flags+0xcc) rsp=0xc9d1aa9c rfp=0xc9d1aabc r10=0xc1cf70b0 r9=0x00000000 r8=0xc091d6e0 r7=0xc0620730 r6=0x00000824 r5=0x00000000 r4=0xc091e608 _mtx_lock_flags() at _mtx_lock_flags+0xc scp=0xc0355adc rlv=0xc057d290 (uma_zalloc_arg+0x1a8) rsp=0xc9d1aac0 rfp=0xc9d1aafc r7=0xc091d748 r6=0x00000000 r5=0xc08fc0b8 r4=0xc0620730 uma_zalloc_arg() at uma_zalloc_arg+0xc scp=0xc057d0f4 rlv=0xc05abb04 (pmap_growkernel+0xf20) rsp=0xc9d1ab00 rfp=0xc9d1ab70 r10=0xc1cf70b0 r9=0x00000000 r8=0x00000000 r7=0x8122e032 r6=0x00000000 r5=0xc08fc0b8 r4=0x00000001 pmap_growkernel() at pmap_growkernel+0x3fc scp=0xc05aafe0 rlv=0xc05ac14c (pmap_enter+0x70) rsp=0xc9d1ab74 rfp=0xc9d1aba0 r10=0x00000007 r9=0x00000000 r8=0xc09885a8 r7=0xbffff000 r6=0xc08278c0 r5=0xc1cf70b0 r4=0xc06261e0 pmap_enter() at pmap_enter+0xc scp=0xc05ac0e8 rlv=0xc057ff44 (vm_fault_hold+0x1638) rsp=0xc9d1aba4 rfp=0xc9d1ad14 r10=0xc9d1ade4 r8=0x00000000 r7=0x00000002 r6=0x00000000 r5=0xc1cf7000 r4=0xc09885a8 vm_fault_hold() at vm_fault_hold+0xc scp=0xc057e918 rlv=0xc058054c (vm_fault+0x8c) rsp=0xc9d1ad18 rfp=0xc9d1ad3c r10=0xc9d1ade4 r9=0x00000002 r8=0x00000000 r7=0x00000002 r6=0xbffff000 r5=0xc1cf7000 r4=0xc1cf5000 vm_fault() at vm_fault+0xc scp=0xc05804cc rlv=0xc05b0ac8 (data_abort_handler+0x35c) rsp=0xc9d1ad40 rfp=0xc9d1ade0 r8=0xbffff000 r7=0xc1cf5000 r6=0x00000000 r5=0xc0626844 r4=0xc1cf3088 data_abort_handler() at data_abort_handler+0xc scp=0xc05b0778 rlv=0xc05a4150 (address_exception_entry+0x50) rsp=0xc9d1ade4 rfp=0xc9d1ae84 r10=0xc0682bde r9=0xc1cf3000 r8=0xc9d1aeac r7=0xc0682bde r6=0xc0682bd4 r5=0xc05f1648 r4=0xbfffffff exec_shell_imgact() at exec_shell_imgact+0x75c scp=0xc031d348 rlv=0xc033b68c (fork_exit+0x94) rsp=0xc9d1ae88 rfp=0xc9d1aea8 r10=0x00000000 r9=0x00000000 r8=0xc9d1aeac r7=0x00000000 r6=0xc031d33c r5=0xc1cf3000 r4=0xc1cf5000 fork_exit() at fork_exit+0xc scp=0xc033b604 rlv=0xc05afe44 (fork_trampoline+0x14) rsp=0xc9d1aeac rfp=0x00000000 r8=0x00000000 r7=0x8ffbf8ef r6=0xf5f7f4a9 r5=0x00000000 r4=0xc031d33c FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #1 r240480: Thu Nov 3 14:57:01 PDT 2011 jmg@pcbsd-779:/usr/obj/arm.armv6/usr/src.HEAD/sys/helium arm Do you need any more information? -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-freebsd-arm@FreeBSD.ORG Sat Sep 15 16:00:29 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 130E31065677 for ; Sat, 15 Sep 2012 16:00:28 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-iy0-f182.google.com (mail-iy0-f182.google.com [209.85.210.182]) by mx1.freebsd.org (Postfix) with ESMTP id A7BE88FC12 for ; Sat, 15 Sep 2012 16:00:27 +0000 (UTC) Received: by iayy25 with SMTP id y25so5438329iay.13 for ; Sat, 15 Sep 2012 09:00:26 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=raw0lt+qD8CmElaY9eNZgldKEP4sF9+tu1Qn41xW9xU=; b=DYd/6Ys9a0f4YVAEtCVlzh/1KWxpDtQ1xR4MAnEGLKJSYoMN4BG6YBe7CIDgUdnvBZ L8dYBlJrYmrWwHcDdH+IwLLn6lWrw1cZepUWHQNGZUogGADWY66XaPBPzjEUt8xwFoK7 /D2oqmLrykMA2L9A4g36/pF2Mjd26z/jFfBLPBRBASVCzh2OwcROJv4FLzSrSGYZc69D ab1K6+eXtLllpokUn0eIBuIgZ5+19qe8liED4DwGarrWdeYxjv0xGayfY9HfXgaKXiCn bff0Gi2fbxHz8Jh/MvfrEmu5GT7/ohGLMEkjM3WB1TrnZ8/3gJGmsZyjazOIYjmLU0oN DHLg== Received: by 10.50.5.180 with SMTP id t20mr2409938igt.31.1347724826780; Sat, 15 Sep 2012 09:00:26 -0700 (PDT) Received: from 63.imp.bsdimp.com (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPS id ch4sm1493988igb.2.2012.09.15.09.00.23 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 15 Sep 2012 09:00:26 -0700 (PDT) Sender: Warner Losh Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <5053C7D1.2080308@gmail.com> Date: Sat, 15 Sep 2012 10:00:22 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: References: <5053C7D1.2080308@gmail.com> To: KCasey42 X-Mailer: Apple Mail (2.1084) X-Gm-Message-State: ALoCoQmxaQqSV4f5FK8gA161HlWZqDAAmM+UeR+QSSRktYItjJ2sctHzs2xONdjDGz9LoDhn0/tp Cc: freebsd-arm@freebsd.org Subject: Re: Unable to build FreeBSD xdev tools for ARM on FreeBSD 10.0-CURRENT X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Sep 2012 16:00:29 -0000 I've never had this working for clang, only gcc. I've never had cross = building working for ARM. Perhaps we should fix this to force gcc until = the underlying issues can be fixed. Check to see that you don't have = WITH_CLANG_AS_CC defined, or CC=3Dclang. Warner On Sep 14, 2012, at 6:12 PM, KCasey42 wrote: > Attempting to build the cross tools > # cd /usr/src > # make xdev XDEV=3Darm XDEV_ARCH=3Darm >=20 > on the following system >=20 > # uname -a > FreeBSD xxx.xxx.xxx 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240450: Thu = Sep 13 05:49:13 PDT 2012 = root@xxx.xxx.xxx:/usr/src/sys/amd64/compile/silver amd64 >=20 > using >=20 > # clang --version > FreeBSD clang version 3.2 (trunk 162107) 20120817 > Target: x86_64-unknown-freebsd10.0 > Thread model: posix >=20 > produces the following error >=20 > clang -O -pipe -fpic -fvisibility=3Dhidden -DVISIBILITY_HIDDEN = -std=3Dgnu99 -Qunused-arguments -c = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c -o = __sync_fetch_and_add_4.o > In file included from = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: > /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: = conflicting > types for '__sync_fetch_and_add_4' > NAME(volatile TYPE *ptr, TYPE value) > ^ > /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: = expanded from > macro 'NAME' > #define NAME __sync_fetch_and_add_4# clang --version > FreeBSD clang version 3.2 (trunk 162107) 20120817 > Target: x86_64-unknown-freebsd10.0 > Thread model: posix >=20 > ^ > /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: note: > '__sync_fetch_and_add_4' is a builtin with type 'int (volatile = int *, int, > ...)' > NAME(volatile TYPE *ptr, TYPE value) > ^ > /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: = expanded from > macro 'NAME' > #define NAME __sync_fetch_and_add_4 > ^ > In file included from = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: > /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: = definition of > builtin function '__sync_fetch_and_add_4' > NAME(volatile TYPE *ptr, TYPE value) > ^ > /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: = expanded from > macro 'NAME' > #define NAME __sync_fetch_and_add_4 > ^ > 2 errors generated. > *** [__sync_fetch_and_add_4.o] Error code 1 >=20 > Stop in /usr/src/lib/libcompiler_rt. > *** [lib/libcompiler_rt__PL] Error code 1 >=20 > Stop in /usr/src. > *** [libraries] Error code 1 >=20 > Stop in /usr/src. > *** [_xi-libraries] Error code 1 >=20 > Stop in /usr/src. > *** [xdev] Error code 1 >=20 > Stop in /usr/src. > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" From owner-freebsd-arm@FreeBSD.ORG Sat Sep 15 18:25:06 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B1D07106566C for ; Sat, 15 Sep 2012 18:25:06 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-ie0-f182.google.com (mail-ie0-f182.google.com [209.85.223.182]) by mx1.freebsd.org (Postfix) with ESMTP id 6B64B8FC1A for ; Sat, 15 Sep 2012 18:25:06 +0000 (UTC) Received: by iea17 with SMTP id 17so4825961iea.13 for ; Sat, 15 Sep 2012 11:25:05 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=EOwT+26pPd2Ix9VXGUzWtHfz6HvAK8WR3Rah8Yaxx2o=; b=JsVRmEObIe6oezFxEilTyjkhhdmo1eiD5zBiSNsBGK6MPN18VFWg43tO8LDWFsn+nQ 7to2lMOgodKVvd9lsFeQuK/gLubxrc5wEHrccBEVKBgZce27LHzD1mFnyBKb+H4GcKqP fSgvXltpAi4IMhtfqw+kf1P6dzTm6FmwMolX6pyH/r8hJT20j+tUavogqFiSOvsGkNeg /ppW8uHHi623VhRlRFY9azKGPMBG+c/RM8xftUYsl7kS2dEwYWvRjNAbJoqBRyY6uPMD bvY90cR4H/Z8OGdWGvEet2zNzBAr89JeZWXu+hqVIB6q7ZCMRQoeifZBZ5AKwxZG6eSj KQTA== Received: by 10.42.39.197 with SMTP id i5mr5465286ice.27.1347733505768; Sat, 15 Sep 2012 11:25:05 -0700 (PDT) Received: from 63.imp.bsdimp.com (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPS id ua2sm6021423igb.7.2012.09.15.11.25.03 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 15 Sep 2012 11:25:04 -0700 (PDT) Sender: Warner Losh Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <20120914180318.GX58312@funkthat.com> Date: Sat, 15 Sep 2012 12:25:02 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: References: <20120914180318.GX58312@funkthat.com> To: John-Mark Gurney X-Mailer: Apple Mail (2.1084) X-Gm-Message-State: ALoCoQlY76RbW23oLHzDz5bzh9E3rTuCqibNbnwNyVpzMaFJtX8vQWDL948lXlPl23OoT+mKgR7s Cc: freebsd-arm@FreeBSD.org Subject: Re: minor patches to cpsw and arm conf files X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Sep 2012 18:25:06 -0000 These look good. Please commit, if you haven't already done so. Warner On Sep 14, 2012, at 12:03 PM, John-Mark Gurney wrote: > The first patch removes some dead code, an incorrect comment, and some > anoying printf's from TI's cpsw driver. I left the other printf's in > the same function since they are clearly there to denote unimplemented > functionality. >=20 > The second patch fixes up the conf files such that they follow the > proper format of options... This applied for both > commented out options and uncommented options... I also fixes a few > that had "#options" and the like to make it more standard... >=20 > for people who care, part of it was automated with: > for i in `grep -l '^#options' *'; do sed -e = 's/^#options/options /' < $i > tmp && mv tmp $i; done > for i in `grep -l '^options' *'; do sed -e = 's/^options/options /' < $i > tmp && mv tmp $i; done >=20 > Anyone have any objections to me committing these? >=20 > Thanks. >=20 > Index: ti/cpsw/if_cpsw.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- ti/cpsw/if_cpsw.c (revision 240480) > +++ ti/cpsw/if_cpsw.c (working copy) > @@ -713,8 +713,6 @@ > sc->cpsw_if_flags =3D ifp->if_flags; > CPSW_GLOBAL_UNLOCK(sc); > break; > - printf("%s: SIOCSIFFLAGS\n",__func__); > - break; > case SIOCADDMULTI: > printf("%s: SIOCADDMULTI\n",__func__); > break; > @@ -724,12 +722,10 @@ > case SIOCSIFCAP: > printf("%s: SIOCSIFCAP\n",__func__); > break; > - case SIOCGIFMEDIA: /* fall through */ > - printf("%s: SIOCGIFMEDIA\n",__func__); > + case SIOCGIFMEDIA: > error =3D ifmedia_ioctl(ifp, ifr, &sc->mii->mii_media, = command); > break; > case SIOCSIFMEDIA: > - printf("%s: SIOCSIFMEDIA\n",__func__); > error =3D ifmedia_ioctl(ifp, ifr, &sc->mii->mii_media, = command); > break; > default: >=20 > Index: conf/KB920X > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/KB920X (revision 240480) > +++ conf/KB920X (working copy) > @@ -144,6 +144,6 @@ > device cdce # emulate an ethernet > device usb_template # Control of the gadget >=20 > -options IEEE80211_SUPPORT_MESH > +options IEEE80211_SUPPORT_MESH >=20 > -options AH_SUPPORT_AR5416 > +options AH_SUPPORT_AR5416 > Index: conf/QILA9G20 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/QILA9G20 (revision 240480) > +++ conf/QILA9G20 (working copy) > @@ -51,7 +51,7 @@ >=20 > options ROOTDEVNAME=3D\"ufs:/dev/mmcsd0s1a\" >=20 > -options ALT_BREAK_TO_DEBUGGER > +options ALT_BREAK_TO_DEBUGGER >=20 > #options MSDOSFS #MSDOS Filesystem > #options CD9660 #ISO 9660 Filesystem > Index: conf/SAM9X25EK > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/SAM9X25EK (revision 240480) > +++ conf/SAM9X25EK (working copy) > @@ -51,7 +51,7 @@ >=20 > options ROOTDEVNAME=3D\"ufs:/dev/mmcsd0s1a\" >=20 > -options ALT_BREAK_TO_DEBUGGER > +options ALT_BREAK_TO_DEBUGGER >=20 > #options MSDOSFS #MSDOS Filesystem > #options CD9660 #ISO 9660 Filesystem > Index: conf/SN9G45 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/SN9G45 (revision 240480) > +++ conf/SN9G45 (working copy) > @@ -50,7 +50,7 @@ >=20 > options ROOTDEVNAME=3D\"ufs:/dev/da0s1\" >=20 > -options ALT_BREAK_TO_DEBUGGER > +options ALT_BREAK_TO_DEBUGGER >=20 > #options MSDOSFS #MSDOS Filesystem > #options CD9660 #ISO 9660 Filesystem > Index: conf/PANDABOARD > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/PANDABOARD (revision 240480) > +++ conf/PANDABOARD (working copy) > @@ -46,15 +46,15 @@ > options UFS_DIRHASH #Improve performance on big = directories > options NFSCLIENT #Network Filesystem Client > device snp > -#options NFSCL > +#options NFSCL > #options NFSSERVER #Network Filesystem Server > options NFS_ROOT #NFS usable as /, requires = NFSCLIENT > -options BREAK_TO_DEBUGGER > -options BOOTP_NFSROOT > -options BOOTP_COMPAT > -options BOOTP > -options BOOTP_NFSV3 > -options BOOTP_WIRED_TO=3Due0 > +options BREAK_TO_DEBUGGER > +options BOOTP_NFSROOT > +options BOOTP_COMPAT > +options BOOTP > +options BOOTP_NFSV3 > +options BOOTP_WIRED_TO=3Due0 > options MSDOSFS #MSDOS Filesystem > #options CD9660 #ISO 9660 Filesystem > #options PROCFS #Process filesystem (requires = PSEUDOFS) > @@ -93,7 +93,7 @@ >=20 > device pl310 # PL310 L2 cache = controller > # Debugging for use in -current > -#options VERBOSE_SYSINIT #Enable verbose sysinit = messages > +#options VERBOSE_SYSINIT #Enable verbose sysinit messages > options KDB > options DDB #Enable the kernel debugger > #options INVARIANTS #Enable calls of extra sanity = checking > @@ -106,16 +106,16 @@ >=20 > # The following enables MFS as root, this seems similar to an = initramfs or initrd > # as used in Linux. > -# options MD_ROOT > -# options MD_ROOT_SIZE=3D7560 > +#options MD_ROOT > +#options MD_ROOT_SIZE=3D7560 >=20 > device random # Entropy device >=20 > # USB support > device usb > options USB_DEBUG > -#options USB_REQ_DEBUG > -#options USB_VERBOSE > +#options USB_REQ_DEBUG > +#options USB_VERBOSE > device ohci > device ehci > device umass > @@ -125,7 +125,7 @@ >=20 > # USB Ethernet support, requires miibus > device miibus > -# device axe # ASIX Electronics USB = Ethernet > +#device axe # ASIX Electronics USB = Ethernet > device smsc # SMSC LAN95xx USB Ethernet >=20 >=20 > @@ -140,5 +140,5 @@ > options FDT_DTB_STATIC > makeoptions FDT_DTS_FILE=3Dpandaboard.dts >=20 > -# device vfp # vfp/neon > -# options ARM_VFP_SUPPORT # vfp/neon > +#device vfp # vfp/neon > +#options ARM_VFP_SUPPORT # vfp/neon > Index: conf/ARMADAXP > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/ARMADAXP (revision 240480) > +++ conf/ARMADAXP (working copy) > @@ -92,8 +92,8 @@ > device mii > device e1000phy > device bpf > -options HZ=3D1000 > -options DEVICE_POLLING > +options HZ=3D1000 > +options DEVICE_POLLING > device vlan >=20 > #FDT > Index: conf/SHEEVAPLUG > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/SHEEVAPLUG (revision 240480) > +++ conf/SHEEVAPLUG (working copy) > @@ -56,8 +56,8 @@ > device mii > device e1000phy > device bpf > -options HZ=3D1000 > -options DEVICE_POLLING > +options HZ=3D1000 > +options DEVICE_POLLING > device vlan >=20 > device cesa # Marvell security = engine > @@ -78,5 +78,5 @@ >=20 > # Flattened Device Tree > options FDT > -options FDT_DTB_STATIC > +options FDT_DTB_STATIC > makeoptions FDT_DTS_FILE=3Dsheevaplug.dts > Index: conf/TS7800 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/TS7800 (revision 240480) > +++ conf/TS7800 (working copy) > @@ -74,6 +74,6 @@ >=20 > # Flattened Device Tree > options FDT > -options FDT_DTB_STATIC > +options FDT_DTB_STATIC > makeoptions FDT_DTS_FILE=3Dts7800.dts >=20 > Index: conf/GUMSTIX-QEMU > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/GUMSTIX-QEMU (revision 240480) > +++ conf/GUMSTIX-QEMU (working copy) > @@ -21,5 +21,5 @@ >=20 > ident GUMSTIX-QEMU >=20 > -options QEMU_WORKAROUNDS > +options QEMU_WORKAROUNDS > nooptions ARM_CACHE_LOCK_ENABLE # QEMU does not implement this > Index: conf/CNS11XXNAS > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/CNS11XXNAS (revision 240480) > +++ conf/CNS11XXNAS (working copy) > @@ -47,9 +47,9 @@ > #options DIAGNOSTIC >=20 >=20 > -#options COMPAT_FREEBSD5 > -#options COMPAT_FREEBSD6 > -#options COMPAT_FREEBSD7 > +#options COMPAT_FREEBSD5 > +#options COMPAT_FREEBSD6 > +#options COMPAT_FREEBSD7 >=20 >=20 > options SCHED_ULE #ULE scheduler > @@ -121,4 +121,4 @@ > device geom_journal > device geom_part_bsd >=20 > -options ROOTDEVNAME=3D\"ufs:da0s1a\" > +options ROOTDEVNAME=3D\"ufs:da0s1a\" > Index: conf/BEAGLEBONE > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/BEAGLEBONE (revision 240480) > +++ conf/BEAGLEBONE (working copy) > @@ -25,52 +25,52 @@ > makeoptions MODULES_OVERRIDE=3D"" > makeoptions WITHOUT_MODULES=3D"ahc" >=20 > -options HZ=3D100 > -options SCHED_4BSD #4BSD scheduler > -options INET #InterNETworking > -options INET6 #IPv6 communications = protocols > -options FFS #Berkeley Fast = Filesystem > -options SOFTUPDATES #Enable FFS soft updates = support > -options UFS_ACL #Support for access = control lists > -options UFS_DIRHASH #Improve performance on = big directories > -options MSDOSFS #MSDOS Filesystem > -options CD9660 #ISO 9660 Filesystem > -options PROCFS #Process filesystem = (requires PSEUDOFS) > -options PSEUDOFS #Pseudo-filesystem = framework > -options COMPAT_43 #Compatible with BSD 4.3 = [KEEP THIS!] > -options SCSI_DELAY=3D5000 #Delay (in ms) = before probing SCSI > -options KTRACE #ktrace(1) support > -options SYSVSHM #SYSV-style shared = memory > -options SYSVMSG #SYSV-style message = queues > -options SYSVSEM #SYSV-style semaphores > -options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B = real-time extensions > -options KBD_INSTALL_CDEV # install a CDEV entry = in /dev > -options PREEMPTION > +options HZ=3D100 > +options SCHED_4BSD #4BSD scheduler > +options INET #InterNETworking > +options INET6 #IPv6 communications protocols > +options FFS #Berkeley Fast Filesystem > +options SOFTUPDATES #Enable FFS soft updates support > +options UFS_ACL #Support for access control = lists > +options UFS_DIRHASH #Improve performance on big = directories > +options MSDOSFS #MSDOS Filesystem > +options CD9660 #ISO 9660 Filesystem > +options PROCFS #Process filesystem (requires = PSEUDOFS) > +options PSEUDOFS #Pseudo-filesystem framework > +options COMPAT_43 #Compatible with BSD 4.3 [KEEP = THIS!] > +options SCSI_DELAY=3D5000 #Delay (in ms) before = probing SCSI > +options KTRACE #ktrace(1) support > +options SYSVSHM #SYSV-style shared memory > +options SYSVMSG #SYSV-style message queues > +options SYSVSEM #SYSV-style semaphores > +options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time = extensions > +options KBD_INSTALL_CDEV # install a CDEV entry in /dev > +options PREEMPTION >=20 > # Debugging > makeoptions DEBUG=3D-g #Build kernel with gdb(1) debug = symbols > -options BREAK_TO_DEBUGGER > -#options VERBOSE_SYSINIT #Enable verbose sysinit messages > -options KDB > -options DDB #Enable the kernel = debugger > -options INVARIANTS #Enable calls of extra = sanity checking > -options INVARIANT_SUPPORT #Extra sanity checks of = internal structures, required by INVARIANTS > -options WITNESS #Enable checks to detect = deadlocks and cycles > -options WITNESS_SKIPSPIN #Don't run witness on = spinlocks for speed > -#options DIAGNOSTIC > +options BREAK_TO_DEBUGGER > +#options VERBOSE_SYSINIT #Enable verbose sysinit messages > +options KDB > +options DDB #Enable the kernel debugger > +options INVARIANTS #Enable calls of extra sanity = checking > +options INVARIANT_SUPPORT #Extra sanity checks of internal = structures, required by INVARIANTS > +options WITNESS #Enable checks to detect = deadlocks and cycles > +options WITNESS_SKIPSPIN #Don't run witness on spinlocks = for speed > +#options DIAGNOSTIC >=20 > # NFS support > -#options NFSCL > -#options NFSSERVER #Network Filesystem Server > -#options NFSCLIENT #Network Filesystem Client > +#options NFSCL > +#options NFSSERVER #Network Filesystem Server > +#options NFSCLIENT #Network Filesystem Client >=20 > # Uncomment this for NFS root > -#options NFS_ROOT #NFS usable as /, requires = NFSCLIENT > -#options BOOTP_NFSROOT > -#options BOOTP_COMPAT > -#options BOOTP > -#options BOOTP_NFSV3 > -#options BOOTP_WIRED_TO=3Dcpsw0 > +#options NFS_ROOT #NFS usable as /, requires = NFSCLIENT > +#options BOOTP_NFSROOT > +#options BOOTP_COMPAT > +#options BOOTP > +#options BOOTP_NFSV3 > +#options BOOTP_WIRED_TO=3Dcpsw0 >=20 >=20 > # MMC/SD/SDIO card slot support > @@ -78,7 +78,7 @@ > device mmcsd # mmc/sd flash cards >=20 > # Boot device is 2nd slice on MMC/SD card > -options ROOTDEVNAME=3D\"ufs:mmcsd0s2\" > +options ROOTDEVNAME=3D\"ufs:mmcsd0s2\" >=20 > # Console and misc > device uart > @@ -99,9 +99,9 @@ >=20 > # USB support > device usb > -options USB_DEBUG > -#options USB_REQ_DEBUG > -#options USB_VERBOSE > +options USB_DEBUG > +#options USB_REQ_DEBUG > +#options USB_VERBOSE > device musb > device umass > device scbus # SCSI bus (required for = SCSI) > Index: conf/HL201 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/HL201 (revision 240480) > +++ conf/HL201 (working copy) > @@ -49,7 +49,7 @@ > #options BOOTP_WIRED_TO=3Date0 > options BOOTP_COMPAT >=20 > -options ALT_BREAK_TO_DEBUGGER > +options ALT_BREAK_TO_DEBUGGER >=20 > #options MSDOSFS #MSDOS Filesystem > #options CD9660 #ISO 9660 Filesystem > @@ -128,5 +128,5 @@ > #device wlan_ccmp # 802.11 CCMP support > #device wlan_tkip # 802.11 TKIP support > #device wlan_amrr # AMRR transmit rate control = algorithm > -options ROOTDEVNAME=3D\"ufs:da0s1a\" > +options ROOTDEVNAME=3D\"ufs:da0s1a\" >=20 > Index: conf/EA3250 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/EA3250 (revision 240480) > +++ conf/EA3250 (working copy) > @@ -65,7 +65,7 @@ > device lpe >=20 > # USB > -options USB_DEBUG > +options USB_DEBUG > device usb > device ohci > device umass > Index: conf/SAM9G20EK > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/SAM9G20EK (revision 240480) > +++ conf/SAM9G20EK (working copy) > @@ -50,7 +50,7 @@ >=20 > options ROOTDEVNAME=3D\"ufs:/dev/mmcsd0s1a\" >=20 > -options ALT_BREAK_TO_DEBUGGER > +options ALT_BREAK_TO_DEBUGGER >=20 > #options MSDOSFS #MSDOS Filesystem > #options CD9660 #ISO 9660 Filesystem > Index: conf/LN2410SBC > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/LN2410SBC (revision 240480) > +++ conf/LN2410SBC (working copy) > @@ -40,7 +40,7 @@ > #options UFS_DIRHASH #Improve performance on big = directories > #options MD_ROOT #MD is a potential root device > #options MD_ROOT_SIZE=3D4096 # 4MB ram disk > -options ROOTDEVNAME=3D\"ufs:da0s1\" > +options ROOTDEVNAME=3D\"ufs:da0s1\" >=20 > #options BOOTP > #options BOOTP_NFSROOT # NFS mount root filesystem using BOOTP = info > Index: conf/RPI-B > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/RPI-B (revision 240480) > +++ conf/RPI-B (working copy) > @@ -24,12 +24,12 @@ > files "../broadcom/bcm2835/files.bcm2835" > makeoptions MODULES_OVERRIDE=3D"" >=20 > -options KERNVIRTADDR=3D0xc0100000 > +options KERNVIRTADDR=3D0xc0100000 > makeoptions KERNVIRTADDR=3D0xc0100000 > -options KERNPHYSADDR=3D0x00100000 > +options KERNPHYSADDR=3D0x00100000 > makeoptions KERNPHYSADDR=3D0x00100000 > -options PHYSADDR=3D0x00000000 > -options STARTUP_PAGETABLE_ADDR=3D0x01000000 > +options PHYSADDR=3D0x00000000 > +options STARTUP_PAGETABLE_ADDR=3D0x01000000 >=20 > makeoptions DEBUG=3D-g #Build kernel with gdb(1) debug = symbols > options HZ=3D100 > @@ -42,13 +42,13 @@ > options UFS_DIRHASH #Improve performance on big = directories > device snp >=20 > -# options NFSCL #Network Filesystem Client > -# options NFS_ROOT #NFS usable as /, requires = NFSCLIENT > -# options BOOTP_NFSROOT > -# options BOOTP_COMPAT > -# options BOOTP > -# options BOOTP_NFSV3 > -# options BOOTP_WIRED_TO=3Due0 > +#options NFSCL #Network Filesystem Client > +#options NFS_ROOT #NFS usable as /, requires = NFSCLIENT > +#options BOOTP_NFSROOT > +#options BOOTP_COMPAT > +#options BOOTP > +#options BOOTP_NFSV3 > +#options BOOTP_WIRED_TO=3Due0 >=20 > options PSEUDOFS #Pseudo-filesystem framework > options COMPAT_43 #Compatible with BSD 4.3 [KEEP = THIS!] > Index: conf/DOCKSTAR > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- conf/DOCKSTAR (revision 240480) > +++ conf/DOCKSTAR (working copy) > @@ -56,8 +56,8 @@ > device mge # Marvell Gigabit = Ethernet controller > device mii > device bpf > -options HZ=3D1000 > -options DEVICE_POLLING > +options HZ=3D1000 > +options DEVICE_POLLING > device vlan >=20 > # USB > @@ -71,5 +71,5 @@ >=20 > # Flattened Device Tree > options FDT > -options FDT_DTB_STATIC > +options FDT_DTB_STATIC > makeoptions FDT_DTS_FILE=3Ddockstar.dts >=20 > --=20 > John-Mark Gurney Voice: +1 415 225 5579 >=20 > "All that I will do, has been done, All that I have, has not." > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" From owner-freebsd-arm@FreeBSD.ORG Sat Sep 15 19:27:26 2012 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 555BA1065670 for ; Sat, 15 Sep 2012 19:27:26 +0000 (UTC) (envelope-from alc@rice.edu) Received: from mh11.mail.rice.edu (mh11.mail.rice.edu [128.42.199.30]) by mx1.freebsd.org (Postfix) with ESMTP id 1C8E58FC0C for ; Sat, 15 Sep 2012 19:27:25 +0000 (UTC) Received: from mh11.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh11.mail.rice.edu (Postfix) with ESMTP id 956864C0372 for ; Sat, 15 Sep 2012 14:27:25 -0500 (CDT) Received: from mh11.mail.rice.edu (localhost.localdomain [127.0.0.1]) by mh11.mail.rice.edu (Postfix) with ESMTP id 7CC904C03A0; Sat, 15 Sep 2012 14:27:25 -0500 (CDT) X-Virus-Scanned: by amavis-2.7.0 at mh11.mail.rice.edu, auth channel Received: from mh11.mail.rice.edu ([127.0.0.1]) by mh11.mail.rice.edu (mh11.mail.rice.edu [127.0.0.1]) (amavis, port 10026) with ESMTP id 5Rz2o5PEMfSQ; Sat, 15 Sep 2012 14:27:25 -0500 (CDT) Received: from adsl-216-63-78-18.dsl.hstntx.swbell.net (adsl-216-63-78-18.dsl.hstntx.swbell.net [216.63.78.18]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) (Authenticated sender: alc) by mh11.mail.rice.edu (Postfix) with ESMTPSA id D10034C0372; Sat, 15 Sep 2012 14:27:24 -0500 (CDT) Message-ID: <5054D69B.40209@rice.edu> Date: Sat, 15 Sep 2012 14:27:23 -0500 From: Alan Cox User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:8.0) Gecko/20111113 Thunderbird/8.0 MIME-Version: 1.0 To: "arm@freebsd.org" References: <502FD67A.7030003@rice.edu> <1345315508.27688.260.camel@revolution.hippie.lan> <503D12AE.1050705@rice.edu> <1346350374.1140.525.camel@revolution.hippie.lan> <5045351F.6060201@rice.edu> <1346723041.1140.602.camel@revolution.hippie.lan> <504B85BE.3030101@rice.edu> <1347316458.1137.41.camel@revolution.hippie.lan> <504F8BAC.4040902@rice.edu> <20120915045040.GZ58312@funkthat.com> In-Reply-To: <20120915045040.GZ58312@funkthat.com> Content-Type: multipart/mixed; boundary="------------060701070903070900000909" Cc: Alan Cox Subject: Re: arm pmap locking X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Sep 2012 19:27:26 -0000 This is a multi-part message in MIME format. --------------060701070903070900000909 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 09/14/2012 23:50, John-Mark Gurney wrote: > Alan Cox wrote this message on Tue, Sep 11, 2012 at 14:06 -0500: >> On 09/10/2012 17:34, Ian Lepore wrote: >>> On Sat, 2012-09-08 at 12:51 -0500, Alan Cox wrote: >>>> Here is another patch. This simplifies the kernel pmap locking in >>>> pmap_enter_pv() and corrects some comments. >>>> >>>> Thanks in advance, >>>> Alan >>>> >>> I'm afraid I'm not going to be able to do this any time soon. I bricked >>> my DreamPlug last Friday (the bright side: the nandfs_newfs command in >>> -current apparently works just fine when applied to real hardware rather >>> than the simulator device). I haven't had any success in getting >>> openocd to transfer a new uboot image to it. So I'm probably going to >>> be without arm hardware that can run anything newer than 8.2 for a few >>> weeks (until my new atmel eval board arrives). >>> >> Thanks for letting me know. >> >> Could someone else here please test the attached patch? > I figure since you've been looking at arm's pmap, that I should report > to you a LOR that I observered recently on my armv6 board: > lock order reversal: > 1st 0xc1cf70b0 pmap (pmap) @ /usr/src.HEAD/sys/arm/arm/pmap-v6.c:673 > 2nd 0xc091e608 PV ENTRY (UMA zone) @ /usr/src.HEAD/sys/vm/uma_core.c:2084 > KDB: stack backtrace: > db_trace_self() at db_trace_self+0xc > scp=0xc05a294c rlv=0xc025b298 (X_db_sym_numargs+0x1bc) > rsp=0xc9d1a8fc rfp=0xc9d1aa18 > X_db_sym_numargs() at X_db_sym_numargs+0x194 > scp=0xc025b270 rlv=0xc0398340 (kdb_backtrace+0x3c) > rsp=0xc9d1aa1c rfp=0xc9d1aa2c > r4=0xc06bda44 > kdb_backtrace() at kdb_backtrace+0xc > scp=0xc0398310 rlv=0xc03ad3f8 (witness_display_spinlock+0x80) > rsp=0xc9d1aa30 rfp=0xc9d1aa44 > r4=0x00000001 > witness_display_spinlock() at witness_display_spinlock+0x5c > scp=0xc03ad3d4 rlv=0xc03ae6d8 (witness_checkorder+0x884) > rsp=0xc9d1aa48 rfp=0xc9d1aa98 > r5=0xc1cf70b0 r4=0xc06263d4 > witness_checkorder() at witness_checkorder+0xc > scp=0xc03ade60 rlv=0xc0355b9c (_mtx_lock_flags+0xcc) > rsp=0xc9d1aa9c rfp=0xc9d1aabc > r10=0xc1cf70b0 r9=0x00000000 > r8=0xc091d6e0 r7=0xc0620730 r6=0x00000824 r5=0x00000000 > r4=0xc091e608 > _mtx_lock_flags() at _mtx_lock_flags+0xc > scp=0xc0355adc rlv=0xc057d290 (uma_zalloc_arg+0x1a8) > rsp=0xc9d1aac0 rfp=0xc9d1aafc > r7=0xc091d748 r6=0x00000000 > r5=0xc08fc0b8 r4=0xc0620730 > uma_zalloc_arg() at uma_zalloc_arg+0xc > scp=0xc057d0f4 rlv=0xc05abb04 (pmap_growkernel+0xf20) > rsp=0xc9d1ab00 rfp=0xc9d1ab70 > r10=0xc1cf70b0 r9=0x00000000 > r8=0x00000000 r7=0x8122e032 r6=0x00000000 r5=0xc08fc0b8 > r4=0x00000001 > pmap_growkernel() at pmap_growkernel+0x3fc > scp=0xc05aafe0 rlv=0xc05ac14c (pmap_enter+0x70) > rsp=0xc9d1ab74 rfp=0xc9d1aba0 > r10=0x00000007 r9=0x00000000 > r8=0xc09885a8 r7=0xbffff000 r6=0xc08278c0 r5=0xc1cf70b0 > r4=0xc06261e0 > pmap_enter() at pmap_enter+0xc > scp=0xc05ac0e8 rlv=0xc057ff44 (vm_fault_hold+0x1638) > rsp=0xc9d1aba4 rfp=0xc9d1ad14 > r10=0xc9d1ade4 r8=0x00000000 > r7=0x00000002 r6=0x00000000 r5=0xc1cf7000 r4=0xc09885a8 > vm_fault_hold() at vm_fault_hold+0xc > scp=0xc057e918 rlv=0xc058054c (vm_fault+0x8c) > rsp=0xc9d1ad18 rfp=0xc9d1ad3c > r10=0xc9d1ade4 r9=0x00000002 > r8=0x00000000 r7=0x00000002 r6=0xbffff000 r5=0xc1cf7000 > r4=0xc1cf5000 > vm_fault() at vm_fault+0xc > scp=0xc05804cc rlv=0xc05b0ac8 (data_abort_handler+0x35c) > rsp=0xc9d1ad40 rfp=0xc9d1ade0 > r8=0xbffff000 r7=0xc1cf5000 > r6=0x00000000 r5=0xc0626844 r4=0xc1cf3088 > data_abort_handler() at data_abort_handler+0xc > scp=0xc05b0778 rlv=0xc05a4150 (address_exception_entry+0x50) > rsp=0xc9d1ade4 rfp=0xc9d1ae84 > r10=0xc0682bde r9=0xc1cf3000 > r8=0xc9d1aeac r7=0xc0682bde r6=0xc0682bd4 r5=0xc05f1648 > r4=0xbfffffff > exec_shell_imgact() at exec_shell_imgact+0x75c > scp=0xc031d348 rlv=0xc033b68c (fork_exit+0x94) > rsp=0xc9d1ae88 rfp=0xc9d1aea8 > r10=0x00000000 r9=0x00000000 > r8=0xc9d1aeac r7=0x00000000 r6=0xc031d33c r5=0xc1cf3000 > r4=0xc1cf5000 > fork_exit() at fork_exit+0xc > scp=0xc033b604 rlv=0xc05afe44 (fork_trampoline+0x14) > rsp=0xc9d1aeac rfp=0x00000000 > r8=0x00000000 r7=0x8ffbf8ef > r6=0xf5f7f4a9 r5=0x00000000 r4=0xc031d33c > > FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #1 r240480: Thu Nov 3 14:57:01 PDT 2011 jmg@pcbsd-779:/usr/obj/arm.armv6/usr/src.HEAD/sys/helium arm > > Do you need any more information? > I'm not sure what to make of this stack trace. In particular, pmap_enter() does not directly call pmap_growkernel(). In fact, the only caller to pmap_growkernel() in the entire kernel is vm_map_insert(), which doesn't appear in this stack trace. Moreover, this appears to be a legitimate page fault within the kernel address space. (The image activator touches pageable kernel memory.) However, such page faults should never need to grow the kernel page table. The necessary page table pages should have been allocated during initialization when the various kernel map submaps were created. The bottom line is that I don't have an immediate answer. I'm going to need to think about this. In general, I'm a bit uncomfortable with the way that the l2 and l2 table zones are created. In the meantime, my next patch is attached. This applies to both the original pmap and the new v6 pmap. Can some folks here please test this? Here is the description: Since UMA_ZONE_NOFREE is specified when l2zone and l2table_zone are created, there is no need to release and reacquire the pmap and pvh global locks around calls to uma_zfree(). Recursion into the pmap simply won't occur. Eliminate the use of M_USE_RESERVE. It is deprecated and, in fact, counter- productive, meaning that it actually makes the memory allocation request more likely to fail. Eliminate the macros pmap_{alloc,free}_l2_dtable(). They are of limited utility, and pmap_free_l2_dtable() was inconsistently used. Tidy up pmap_init(). In particular, change the initialization of the PV zone so that it doesn't span the initialization of the l2 and l2table zones. Alan --------------060701070903070900000909 Content-Type: text/plain; name="arm_pmap15.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="arm_pmap15.patch" Index: arm/arm/pmap-v6.c =================================================================== --- arm/arm/pmap-v6.c (revision 240321) +++ arm/arm/pmap-v6.c (working copy) @@ -357,14 +357,6 @@ struct l2_dtable { #define L2_NEXT_BUCKET(va) (((va) & L1_S_FRAME) + L1_S_SIZE) /* - * L2 allocation. - */ -#define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) -#define pmap_free_l2_dtable(l2) \ - uma_zfree(l2table_zone, l2) - -/* * We try to map the page tables write-through, if possible. However, not * all CPUs have a write-through cache mode, so on those we have to sync * the cache when we frob page tables. @@ -621,10 +613,9 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) * no entry in the L1 table. * Need to allocate a new l2_dtable. */ -again_l2table: PMAP_UNLOCK(pm); rw_wunlock(&pvh_global_lock); - if ((l2 = pmap_alloc_l2_dtable()) == NULL) { + if ((l2 = uma_zalloc(l2table_zone, M_NOWAIT)) == NULL) { rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); return (NULL); @@ -632,18 +623,12 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (pm->pm_l2[L2_IDX(l1idx)] != NULL) { - PMAP_UNLOCK(pm); - rw_wunlock(&pvh_global_lock); - uma_zfree(l2table_zone, l2); - rw_wlock(&pvh_global_lock); - PMAP_LOCK(pm); - l2 = pm->pm_l2[L2_IDX(l1idx)]; - if (l2 == NULL) - goto again_l2table; /* * Someone already allocated the l2_dtable while * we were doing the same. */ + uma_zfree(l2table_zone, l2); + l2 = pm->pm_l2[L2_IDX(l1idx)]; } else { bzero(l2, sizeof(*l2)); /* @@ -665,21 +650,14 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) * No L2 page table has been allocated. Chances are, this * is because we just allocated the l2_dtable, above. */ -again_ptep: PMAP_UNLOCK(pm); rw_wunlock(&pvh_global_lock); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); + ptep = uma_zalloc(l2zone, M_NOWAIT); rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { /* We lost the race. */ - PMAP_UNLOCK(pm); - rw_wunlock(&pvh_global_lock); uma_zfree(l2zone, ptep); - rw_wlock(&pvh_global_lock); - PMAP_LOCK(pm); - if (l2b->l2b_kva == 0) - goto again_ptep; return (l2b); } l2b->l2b_phys = vtophys(ptep); @@ -691,7 +669,7 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) */ if (l2->l2_occupancy == 0) { pm->pm_l2[L2_IDX(l1idx)] = NULL; - pmap_free_l2_dtable(l2); + uma_zfree(l2table_zone, l2); } return (NULL); } @@ -789,7 +767,7 @@ pmap_free_l2_bucket(pmap_t pm, struct l2_bucket *l * the pointer in the parent pmap and free the l2_dtable. */ pm->pm_l2[L2_IDX(l1idx)] = NULL; - pmap_free_l2_dtable(l2); + uma_zfree(l2table_zone, l2); } /* @@ -1175,28 +1153,25 @@ pmap_init(void) PDEBUG(1, printf("pmap_init: phys_start = %08x\n", PHYSADDR)); + l2zone = uma_zcreate("L2 Table", L2_TABLE_SIZE_REAL, pmap_l2ptp_ctor, + NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); + l2table_zone = uma_zcreate("L2 Table", sizeof(struct l2_dtable), NULL, + NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); + /* - * init the pv free list + * Initialize the PV entry allocator. */ pvzone = uma_zcreate("PV ENTRY", sizeof (struct pv_entry), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); + TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); + pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; + uma_zone_set_obj(pvzone, &pvzone_obj, pv_entry_max); + pv_entry_high_water = 9 * (pv_entry_max / 10); + /* * Now it is safe to enable pv_table recording. */ PDEBUG(1, printf("pmap_init: done!\n")); - - TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); - - pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; - pv_entry_high_water = 9 * (pv_entry_max / 10); - l2zone = uma_zcreate("L2 Table", L2_TABLE_SIZE_REAL, pmap_l2ptp_ctor, - NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); - l2table_zone = uma_zcreate("L2 Table", sizeof(struct l2_dtable), - NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, - UMA_ZONE_VM | UMA_ZONE_NOFREE); - - uma_zone_set_obj(pvzone, &pvzone_obj, pv_entry_max); - } int @@ -2544,7 +2519,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_prot_t } /* - * The page queues and pmap must be locked. + * The pvh global and pmap locks must be held. */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, Index: arm/arm/pmap.c =================================================================== --- arm/arm/pmap.c (revision 240442) +++ arm/arm/pmap.c (working copy) @@ -366,14 +366,6 @@ struct l2_dtable { #define L2_NEXT_BUCKET(va) (((va) & L1_S_FRAME) + L1_S_SIZE) /* - * L2 allocation. - */ -#define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) -#define pmap_free_l2_dtable(l2) \ - uma_zfree(l2table_zone, l2) - -/* * We try to map the page tables write-through, if possible. However, not * all CPUs have a write-through cache mode, so on those we have to sync * the cache when we frob page tables. @@ -875,10 +867,9 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) * no entry in the L1 table. * Need to allocate a new l2_dtable. */ -again_l2table: PMAP_UNLOCK(pm); rw_wunlock(&pvh_global_lock); - if ((l2 = pmap_alloc_l2_dtable()) == NULL) { + if ((l2 = uma_zalloc(l2table_zone, M_NOWAIT)) == NULL) { rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); return (NULL); @@ -886,18 +877,12 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (pm->pm_l2[L2_IDX(l1idx)] != NULL) { - PMAP_UNLOCK(pm); - rw_wunlock(&pvh_global_lock); - uma_zfree(l2table_zone, l2); - rw_wlock(&pvh_global_lock); - PMAP_LOCK(pm); - l2 = pm->pm_l2[L2_IDX(l1idx)]; - if (l2 == NULL) - goto again_l2table; /* * Someone already allocated the l2_dtable while * we were doing the same. */ + uma_zfree(l2table_zone, l2); + l2 = pm->pm_l2[L2_IDX(l1idx)]; } else { bzero(l2, sizeof(*l2)); /* @@ -919,21 +904,14 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) * No L2 page table has been allocated. Chances are, this * is because we just allocated the l2_dtable, above. */ -again_ptep: PMAP_UNLOCK(pm); rw_wunlock(&pvh_global_lock); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); + ptep = uma_zalloc(l2zone, M_NOWAIT); rw_wlock(&pvh_global_lock); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { /* We lost the race. */ - PMAP_UNLOCK(pm); - rw_wunlock(&pvh_global_lock); uma_zfree(l2zone, ptep); - rw_wlock(&pvh_global_lock); - PMAP_LOCK(pm); - if (l2b->l2b_kva == 0) - goto again_ptep; return (l2b); } l2b->l2b_phys = vtophys(ptep); @@ -945,7 +923,7 @@ pmap_alloc_l2_bucket(pmap_t pm, vm_offset_t va) */ if (l2->l2_occupancy == 0) { pm->pm_l2[L2_IDX(l1idx)] = NULL; - pmap_free_l2_dtable(l2); + uma_zfree(l2table_zone, l2); } return (NULL); } @@ -1066,7 +1044,7 @@ pmap_free_l2_bucket(pmap_t pm, struct l2_bucket *l * the pointer in the parent pmap and free the l2_dtable. */ pm->pm_l2[L2_IDX(l1idx)] = NULL; - pmap_free_l2_dtable(l2); + uma_zfree(l2table_zone, l2); } /* @@ -1834,28 +1812,25 @@ pmap_init(void) PDEBUG(1, printf("pmap_init: phys_start = %08x\n", PHYSADDR)); + l2zone = uma_zcreate("L2 Table", L2_TABLE_SIZE_REAL, pmap_l2ptp_ctor, + NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); + l2table_zone = uma_zcreate("L2 Table", sizeof(struct l2_dtable), NULL, + NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); + /* - * init the pv free list + * Initialize the PV entry allocator. */ pvzone = uma_zcreate("PV ENTRY", sizeof (struct pv_entry), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); + TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); + pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; + uma_zone_set_obj(pvzone, &pvzone_obj, pv_entry_max); + pv_entry_high_water = 9 * (pv_entry_max / 10); + /* * Now it is safe to enable pv_table recording. */ PDEBUG(1, printf("pmap_init: done!\n")); - - TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); - - pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; - pv_entry_high_water = 9 * (pv_entry_max / 10); - l2zone = uma_zcreate("L2 Table", L2_TABLE_SIZE_REAL, pmap_l2ptp_ctor, - NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); - l2table_zone = uma_zcreate("L2 Table", sizeof(struct l2_dtable), - NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, - UMA_ZONE_VM | UMA_ZONE_NOFREE); - - uma_zone_set_obj(pvzone, &pvzone_obj, pv_entry_max); - } int @@ -3302,7 +3277,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_prot_t } /* - * The page queues and pmap must be locked. + * The pvh global and pmap locks must be held. */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, --------------060701070903070900000909-- From owner-freebsd-arm@FreeBSD.ORG Sat Sep 15 21:05:00 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F13961065670 for ; Sat, 15 Sep 2012 21:04:59 +0000 (UTC) (envelope-from tim@kientzle.com) Received: from monday.kientzle.com (99-115-135-74.uvs.sntcca.sbcglobal.net [99.115.135.74]) by mx1.freebsd.org (Postfix) with ESMTP id CEB0B8FC08 for ; Sat, 15 Sep 2012 21:04:59 +0000 (UTC) Received: (from root@localhost) by monday.kientzle.com (8.14.4/8.14.4) id q8FL4qan096821; Sat, 15 Sep 2012 21:04:52 GMT (envelope-from tim@kientzle.com) Received: from [192.168.2.143] (CiscoE3000 [192.168.1.65]) by kientzle.com with SMTP id 6d6qv5xsvuxaygb6cfpy2r6m66; Sat, 15 Sep 2012 21:04:52 +0000 (UTC) (envelope-from tim@kientzle.com) Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=us-ascii From: Tim Kientzle In-Reply-To: Date: Sat, 15 Sep 2012 14:04:52 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: References: <5053C7D1.2080308@gmail.com> To: KCasey42 X-Mailer: Apple Mail (2.1278) Cc: freebsd-arm@freebsd.org Subject: Re: Unable to build FreeBSD xdev tools for ARM on FreeBSD 10.0-CURRENT X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Sep 2012 21:05:00 -0000 I looked at this very briefly a while back. It looks like a great opportunity for someone interested in learning more about toolchain and library issues. Related: There's an active discussion on current@ about switching FreeBSD's default compiler to clang. Resolving these issues would be a big help in that effort. Cheers, Tim On Sep 15, 2012, at 9:00 AM, Warner Losh wrote: > I've never had this working for clang, only gcc. I've never had cross = building working for ARM. Perhaps we should fix this to force gcc until = the underlying issues can be fixed. Check to see that you don't have = WITH_CLANG_AS_CC defined, or CC=3Dclang. >=20 > Warner >=20 > On Sep 14, 2012, at 6:12 PM, KCasey42 wrote: >=20 >> Attempting to build the cross tools >> # cd /usr/src >> # make xdev XDEV=3Darm XDEV_ARCH=3Darm >>=20 >> on the following system >>=20 >> # uname -a >> FreeBSD xxx.xxx.xxx 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r240450: Thu = Sep 13 05:49:13 PDT 2012 = root@xxx.xxx.xxx:/usr/src/sys/amd64/compile/silver amd64 >>=20 >> using >>=20 >> # clang --version >> FreeBSD clang version 3.2 (trunk 162107) 20120817 >> Target: x86_64-unknown-freebsd10.0 >> Thread model: posix >>=20 >> produces the following error >>=20 >> clang -O -pipe -fpic -fvisibility=3Dhidden -DVISIBILITY_HIDDEN = -std=3Dgnu99 -Qunused-arguments -c = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c -o = __sync_fetch_and_add_4.o >> In file included from = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: >> /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: = conflicting >> types for '__sync_fetch_and_add_4' >> NAME(volatile TYPE *ptr, TYPE value) >> ^ >> /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: = expanded from >> macro 'NAME' >> #define NAME __sync_fetch_and_add_4# clang --version >> FreeBSD clang version 3.2 (trunk 162107) 20120817 >> Target: x86_64-unknown-freebsd10.0 >> Thread model: posix >>=20 >> ^ >> /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: note: >> '__sync_fetch_and_add_4' is a builtin with type 'int (volatile = int *, int, >> ...)' >> NAME(volatile TYPE *ptr, TYPE value) >> ^ >> /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: = expanded from >> macro 'NAME' >> #define NAME __sync_fetch_and_add_4 >> ^ >> In file included from = /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:6: >> /usr/src/lib/libcompiler_rt/__sync_fetch_and_op_n.h:34:1: error: = definition of >> builtin function '__sync_fetch_and_add_4' >> NAME(volatile TYPE *ptr, TYPE value) >> ^ >> /usr/src/lib/libcompiler_rt/__sync_fetch_and_add_4.c:2:15: note: = expanded from >> macro 'NAME' >> #define NAME __sync_fetch_and_add_4 >> ^ >> 2 errors generated. >> *** [__sync_fetch_and_add_4.o] Error code 1 >>=20 >> Stop in /usr/src/lib/libcompiler_rt. >> *** [lib/libcompiler_rt__PL] Error code 1 >>=20 >> Stop in /usr/src. >> *** [libraries] Error code 1 >>=20 >> Stop in /usr/src. >> *** [_xi-libraries] Error code 1 >>=20 >> Stop in /usr/src. >> *** [xdev] Error code 1 >>=20 >> Stop in /usr/src. >> _______________________________________________ >> freebsd-arm@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-arm >> To unsubscribe, send any mail to = "freebsd-arm-unsubscribe@freebsd.org" >=20 > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" >=20 >=20