From owner-freebsd-arm@freebsd.org Thu Mar 19 17:17:00 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6D1C8264F52 for ; Thu, 19 Mar 2020 17:17:00 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic305-20.consmr.mail.gq1.yahoo.com (sonic305-20.consmr.mail.gq1.yahoo.com [98.137.64.83]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 48jtqs6lPRz3HLk for ; Thu, 19 Mar 2020 17:16:57 +0000 (UTC) (envelope-from marklmi@yahoo.com) X-YMail-OSG: VIaGObcVM1l1Nm7_9lNg.uOKYGsWKimkOamXvn_Sryqg6DZWhgPt__AOQoAT0pT lCQrKU_bLxzPZiJWT0Hx1rxACwWAjHBHLly9QDRM5xokVDW7tsE8qRAdcRBkv3KWed_eU8rww6aQ H35PmGlx8Mn5_I47omSZhKMjKEkeZz2YEcktkYbJSPb1.aAO5iQMfhMs6jiMRzYDCIfvAdNH5G.Y W4yazQu0oDicHQ19qAWvYz6F3bVCQg5sWR7lvve2F10twVWOmXtaUkyYc8vh0n118MXk3fnvnimK YfZNLChqF5Xcx.kybyoZt9GZPD6dq0MPj8DVwJ4KjcAdqhDwBdAQDsAkZDJ5ctNltxk5MrPO3FkO kzGnyKLRes5XW8fUQObVUYycBKdGQMjptscRwGlz2gO1kZvN3HCRfZQIV88YCDxNeCcPseOTs3dV xDQgiZxeRojJs7IJPbHw1K65KL4Pu0ofRWhAVMZx6NeK1wQ..s4.H6vQI.nExnOG3ZC4c1sxwjX_ NoNMi1FT2QUmpdwhPMgqv8nG1v18u7hU7mHbB4V5nRvgay6zwIodDusdynnIYkTxMpi6xT2vgLMG MvrBdoMiUG6mK9SN7MeTTn2bZkVLxMjU5lvM.LmedIr9FukTlv8HGX86I125IVTXMACxRQ4IxRjD vC.EIfiaiKMzB.8Twk6nr51oxxImFj7a6sGME6MVf4VvA5gxReCUuEZUzusUY_nYOzJpjpOvUMmB Br6ACHz9Updde4ui9SKmwL1pykTCDTbvY63ecuaMjAPBvcChW90P.T7tC7yikeCBrrxDB1J8gyCE XFq37NK1_4IYs_mLD7cql1A.yQmmdeGYz2SNwivSoGI1ra.qetSUg2N7M4c26IPBR.NDRZN8njVA scEUC60f_uSY5RxTWNwDNwRCxBJF.U6OBpLrw4EjNv8d6ca28vTtrn44uX60Yj9Bw.HS1rP2gy_k gm_925ZB.6JLUXj7o.ytKbvhCS9f7WDbjMvl12agfhe7dWR5Cc9z5pVdA1rjmywZCta6CIT3.V5b hVy6iwy5RKNuGKNRw10bXZeoEAgUhOJcT4Vzegc08ZagIQ8FIyPoDLFoZUi9Bs.TjtVmfsreRBJP crzRdlT3BeeL8uzPyDV7XgMTCU3PkFC1lFR.daH4izcfYoskjI8qUa2vZNk7.C32BTDZ8vQgV5kF DRQOq18fQUK_A6.Zal107SAPLknyscVyNZPwKd8Pjrl0p437qbxn9zfEROEiREpapt3aWlO3uOfR pIOeKJxu8p0U795JRFT.r_ckyeLVTa9b1Z6JoNm4A8JhpxoTjNYn4Yx5LYgV8lx4o9ksHy66feuO .4WS4XCYqDk_okFV846qPNb6XVaoOIVk7BESeLYaAVvNpBYE6utOz.X1kAzccWp1.POnYRO1VwvE AHx11Mjj1LFDduqU1 Received: from sonic.gate.mail.ne1.yahoo.com by sonic305.consmr.mail.gq1.yahoo.com with HTTP; Thu, 19 Mar 2020 17:16:56 +0000 Received: by smtp425.mail.ne1.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID 38d148599b4eddb4724b91d274060591; Thu, 19 Mar 2020 17:16:51 +0000 (UTC) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.60.0.2.5\)) Subject: Re: head -r538966 on OrangePi+ 2ed: boot loader crashes when USB drive is present at power-on/boot: its a misaligned access by code from -r354746 From: Mark Millard In-Reply-To: <26DEEA3C-C880-410C-BCB4-CE1314EAFA02@me.com> Date: Thu, 19 Mar 2020 10:16:49 -0700 Cc: freebsd-arm , FreeBSD Current Content-Transfer-Encoding: quoted-printable Message-Id: <541CAE86-B6DA-4BCA-B6B2-D0B0A13DBE1A@yahoo.com> References: <863312E1-4216-49BA-A623-CAC85F123655@yahoo.com> <30A666F0-8773-41B7-AD37-7E319AA510CA@yahoo.com> <26DEEA3C-C880-410C-BCB4-CE1314EAFA02@me.com> To: Toomas Soome X-Mailer: Apple Mail (2.3608.60.0.2.5) X-Rspamd-Queue-Id: 48jtqs6lPRz3HLk X-Spamd-Bar: + X-Spamd-Result: default: False [1.06 / 15.00]; FREEMAIL_FROM(0.00)[yahoo.com]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; MV_CASE(0.50)[]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[yahoo.com:+]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; FREEMAIL_TO(0.00)[me.com]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/21, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[yahoo.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; MIME_GOOD(-0.10)[text/plain]; IP_SCORE(0.00)[ip: (2.11), ipnet: 98.137.64.0/21(0.83), asn: 36647(0.66), country: US(-0.05)]; NEURAL_SPAM_MEDIUM(0.79)[0.788,0]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_SPAM_LONG(0.77)[0.773,0]; RCVD_IN_DNSWL_NONE(0.00)[83.64.137.98.list.dnswl.org : 127.0.5.0]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2020 17:17:00 -0000 On 2020-Mar-19, at 02:00, Toomas Soome wrote: > I think this should fix it. We need to create copy of dos partition = array, so we will get proper alignment.=20 >=20 >=20 > tsoome@freebsd-2:/usr/src % svn diff stand/common/part.c > Index: stand/common/part.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 > --- stand/common/part.c (revision 359099) > +++ stand/common/part.c (working copy) > @@ -654,6 +654,7 @@ > int has_ext; > #endif > table =3D NULL; > + dp =3D NULL; > buf =3D malloc(sectorsize); > if (buf =3D=3D NULL) > return (NULL); > @@ -708,7 +709,11 @@ > goto out; > } > /* Check that we have PMBR. Also do some validation. */ > - dp =3D (struct dos_partition *)(buf + DOSPARTOFF); > + dp =3D malloc(NDOSPART * sizeof(struct dos_partition)); > + if (dp =3D=3D NULL) > + goto out; > + bcopy(buf + DOSPARTOFF, dp, NDOSPART * sizeof(struct = dos_partition)); > + > /* > * In mac we can have PMBR partition in hybrid MBR; > * that is, MBR partition which has DOSPTYP_PMBR entry defined = as > @@ -770,6 +775,7 @@ > #endif /* LOADER_MBR_SUPPORT */ > #endif /* LOADER_MBR_SUPPORT || LOADER_GPT_SUPPORT */ > out: > + free(dp); > free(buf); > return (table); > } > tsoome@freebsd-2:/usr/src % That is working for me: the OPi+2e now boots with the USB drive plugged in ahead of time, without manual intervention to assign loaderdev : FreeBSD/armv7 U-Boot loader, Revision 1.3 DRAM: 2048MB Number of U-Boot devices: 2 U-Boot env: loaderdev not set, will probe all devices. Found U-Boot device: disk Probing all devices... Checking unit=3D0 slice=3D partition=3D... good. Booting from disk0p1: Loading /boot/defaults/loader.conf Loading /boot/device.hints Loading /boot/loader.conf Loading /boot/loader.conf.local Loading kernel... /boot/kernel/kernel text=3D0x90b3fc data=3D0xa85a8 data=3D0x0+0x200000 = syms=3D[0x4+0xa1660+0x4+0x113e7c] Loading configured modules... /boot/kernel/umodem.ko text=3D0x1520 text=3D0xf10 data=3D0x234+0x4 = syms=3D[0x4+0xe70+0x4+0xa74] loading required module 'ucom' /boot/kernel/ucom.ko text=3D0x1714 text=3D0x2c7c data=3D0x484+0x838 = syms=3D[0x4+0x13e0+0x4+0xbac] /boot/entropy size=3D0x1000 Hit [Enter] to boot immediately, or any other key for command prompt. . . . Thanks! > . . . =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)