From owner-freebsd-arm@freebsd.org Tue Dec 8 17:03:06 2015 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE2B99D49FC for ; Tue, 8 Dec 2015 17:03:06 +0000 (UTC) (envelope-from russ.haley@gmail.com) Received: from mail-io0-x236.google.com (mail-io0-x236.google.com [IPv6:2607:f8b0:4001:c06::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7C92012C6 for ; Tue, 8 Dec 2015 17:03:06 +0000 (UTC) (envelope-from russ.haley@gmail.com) Received: by ioc74 with SMTP id 74so30563300ioc.2 for ; Tue, 08 Dec 2015 09:03:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:content-transfer-encoding:message-id:date :subject:from:in-reply-to:references:to:cc; bh=NbPvUpYAxT61l43chph5wuvVmR8pESWenOdGahlYT1c=; b=bM3EGJrybs8JprA2DWaDsZpjrR9AKn4ycNrdECVPx4TLutyTZZkYe3p23eavgfqcRI 6v29kFozKxeqgemd0p/UMjfQjf+5BR3ErsGw0hHqZX7/jW1DmKMUUJY7Lzmgl9ehil+7 J6wksSeuxxnV36RVHJHxlVPzT3GLcTo1z54EWtGuxgFhTWmS8eJa+TwD4nh0la4riYer gB8BmjaogeFOgVMeJgxxUFCIy8pX4j+dQFIRN0M6jY1/VkXn3iH1wGKxOCnLbscOWPi/ 0UScstp1JF5zShR6qSFA0524QI39R5vHGSbpw4ir2kSN2kL+frJiNruP+5yh3PK60SU5 Y2xA== X-Received: by 10.107.133.205 with SMTP id p74mr1092136ioi.44.1449594185851; Tue, 08 Dec 2015 09:03:05 -0800 (PST) Received: from [127.0.0.1] ([209.52.88.83]) by smtp.gmail.com with ESMTPSA id c21sm1683206ioc.24.2015.12.08.09.03.04 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 08 Dec 2015 09:03:05 -0800 (PST) Content-Type: text/plain; charset="iso-8859-1" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Mailer: BlackBerry Email (10.3.2.2639) Message-ID: <20151208170304.4386897.13959.1326@gmail.com> Date: Tue, 08 Dec 2015 09:03:04 -0800 Subject: Re: Updating / keeping current strategies? From: Russell Haley In-Reply-To: References: <5666F37C.4060908@denninger.net> To: Warner Losh , Karl Denninger Cc: freebsd-arm@freebsd.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Dec 2015 17:03:06 -0000 We do a ping pong at work for our embedded linux upgrades. It ensures that = we can fall back to the original install if the update fails. However, we u= se a sata drive. =A0Do you gave an documentation for this? Thanks Russ Sent=A0from=A0my=A0BlackBerry=A010=A0smartphone=A0on=A0the=A0Koodo=A0networ= k. =A0 Original Message =A0 From: Warner Losh Sent: Tuesday, December 8, 2015 7:55 AM To: Karl Denninger Cc: freebsd-arm@freebsd.org Subject: Re: Updating / keeping current strategies? On Tue, Dec 8, 2015 at 8:13 AM, Karl Denninger wrote: > What are people doing in this regard with devices like the Raspberry Pi2? > > Build times for a "make buildworld" are measured in (many) hours to a > day or more and require a USB-attached disk for temporary storage, as > the ramdisk for /tmp that is typically mounted blows up due to lack of > space and SD cards are slow enough on writes (especially small writes) > as to make the process virtually impossible. But even with a > USB-attached disk the process is ridiculous in terms of consumed > walllclock time. > > Further, "make installworld" sometimes fails inexplicably. > > Kernel builds are a bit more reasonable, only requiring a couple of hours. > > I'm wondering what the best option is to not only build current code on > a regular basis (since -CURRENT is a "work in progress") but also to > deploy and update existing devices. What are people doing that has a > history of working well? > I've been updating for years. But usually building on another machine and then installing to the media of the embedded machine via NFS. This mostly works and isn't too sucky. But there are problems with this approach, since high write work loads tend to bog down the embedded box due to crappy storage being used (eg SD cards, USB attachment or both). You may have noticed some commits to nanobsd I've been making lately. I'm moving all my local boards over to nanobsd with a ping-pong partition. I'd create a new image for a new partition, splat it on to the 'pong' partition, adjust the active flags and reboot. NanoBSD has supported this operation for a while, and this works well in the hand-built images I've done. I'm polishing off the rough edges for this by making it possible to dynamically resize the first time. FreeBSD supports this for one partition today. But it doesn't provide a good way to do a divide by 2. The support in FreeBSD for writing MSDOS partitions as a regular user is also weak, so there's bits from mtools in my build. I've also not completely integrated the u-boot ports into the build. There's also an open question about the proper way to install packages on these boxes. One school of thought says that nanobsd should put the packages you want onto the image, and that's all you'll ever get. Another says that nanobsd should keep the database of packages off the ping or pong partitions so that when you upgrade, the packages are refreshed to the old set. There's other in-between positions I've heard articulated. So I can't help you today, but I'll be able to help you soon. Warner _______________________________________________ freebsd-arm@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-arm To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"