From patchwork Tue Feb 27 22:16:28 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Trent Piepho X-Patchwork-Id: 878850 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=impinj.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=impinj.onmicrosoft.com header.i=@impinj.onmicrosoft.com header.b="BTimB1WB"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zrY2s1SQkz9s1s for ; Wed, 28 Feb 2018 09:17:08 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id D61E480734; Tue, 27 Feb 2018 22:17:05 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vpVh163aL44u; Tue, 27 Feb 2018 22:17:04 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id 056F185BFB; Tue, 27 Feb 2018 22:17:04 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id B05071C2082 for ; Tue, 27 Feb 2018 22:17:02 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id AB00981CC8 for ; Tue, 27 Feb 2018 22:17:02 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BiRoy-V5QAr3 for ; Tue, 27 Feb 2018 22:17:01 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0106.outbound.protection.outlook.com [104.47.33.106]) by hemlock.osuosl.org (Postfix) with ESMTPS id BD55F87BE3 for ; Tue, 27 Feb 2018 22:17:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=impinj.onmicrosoft.com; s=selector1-impinj-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=I7OlZQ6BrK7TWAQfAWhX0nVeHkk++UiaC7P8vIH9oRM=; b=BTimB1WBfUDBE9Gw/Eq4KNDVakw7ttvQvRGTHrBK/HvI/YXij6pgZmsbkgVvFuFNB4CLXzvMMhXFBmTYH2rm4rTbFzg4Slda5jxpkqrJY3OCuLOT9Fe1aDfdU4Ne1A7eLladB+gxyeJJl0G9YRmqEg0TR9RFF5A8Qb9GWerlFnI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=tpiepho@impinj.com; Received: from impinj.com (216.207.205.253) by DM5PR0601MB3750.namprd06.prod.outlook.com (2603:10b6:4:7d::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.527.15; Tue, 27 Feb 2018 22:16:57 +0000 From: Trent Piepho To: buildroot@buildroot.org Date: Tue, 27 Feb 2018 14:16:28 -0800 Message-Id: <20180227221628.8283-1-tpiepho@impinj.com> X-Mailer: git-send-email 2.14.3 MIME-Version: 1.0 X-Originating-IP: [216.207.205.253] X-ClientProxiedBy: MWHPR1201CA0016.namprd12.prod.outlook.com (2603:10b6:301:4a::26) To DM5PR0601MB3750.namprd06.prod.outlook.com (2603:10b6:4:7d::23) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: de1d4110-16f3-4e0f-2c87-08d57e2fd0f0 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:DM5PR0601MB3750; X-Microsoft-Exchange-Diagnostics: 1; DM5PR0601MB3750; 3:EX3tc70lh9CKbTwaeZtCi1ebttiKlBpwZn6y7X6tHe/APNFlNaM4rGFhUUpfjLbBsiEhBcQWbcwMarVhPbWjaJaeE5xQWZ6F68li2lET9NHAsehhsdEnRppcucE7O+lsq09jO7MuOkw+4LvpB9D2LqaNxJ32pjWLAQZeyUKJH6TCSoXiM0hY0jz3lNBAth/Q1STjFgCqRhCgtmW1ZsmXxwsxxFBguRyUfecnK3W0I/Li/LXz0UQy/K2CByt3x60C; 25:QX13axiBG12qFzCIdArEDdh7RBdl9w6nIp6Bft9rCZ68KXv2rf5566N+Q9ABtnD4sBLTLeuSNt6AZXppPJbq/IBpQBMJKaAfkWrqMnd6Bcfh/slbG8zQiD4dTqy4weK29lexEPmzzoVajTzmwTlm6ICvY6tnkqqKUag3pe+c8myw5CXHifaemZ0NXKTI3y/BTIafJUBaqDOcXbw/hU7+2u+c70Lc2TwfVvHXrj9CH4DgKQU+jtYnGr/axvOF7dJqVeLXXLkvMnoNdfqHkCB0o2ZHO57hjQu1bT+6ABxuR5Wki8kzeeV8SGvuSmFiN7+hOrT6ScK2QMrgyyYhYckrtQ==; 31:HBLx5bRVuNP/FWkBFPm9pFqtgbGnxjDw9Ohkxn5bUMbcn/2ZHqvP+035GUg4AZiu5ijNAKg8vXDFKNg4oIyNHF+UU5wOOdN3S5Zo6XgwdtdZ3D4za+eo5vMNQd7Z/gjA8TWAwvOGxTY8xB3IUEnsEKIE/Tk8QvOl0RvlcmNfXGirj6H/RJ3Q2bs1qg2j3Rz+VhW/h8ExcqbO2pCHwU0zdwvdwjA1A4OdZ/7K2/GRakQ= X-MS-TrafficTypeDiagnostic: DM5PR0601MB3750: X-Microsoft-Exchange-Diagnostics: 1; DM5PR0601MB3750; 20:8lqU6ZcjIsBTR85ax0y1Dki/yAZObd+VDi5PZNKm+aeOott+8RJcCdfMTY/VXiDq2UcozWCv0Q7kde/xMwtBMZ7vjUGC4CZGYYuYWiaXy3mVjyusvhTN6iMdTzNiaUt8YimSusmln1eK8qBYAMDZc8VB7c8B6IVF+7GLPAgKZV+5fkH49CNM+/rFOG40GxOChRLkOZitwt3RJBmeDYuJ2EQzHAtrnntVA1dqXeOzN3Jw2sNJTX+BhS96hxkLSArhV3HACmx1sUFJqukAOCbtXuZ5Xm/FA5nk0MNj3Hwx8Z6xCJ2l6INwsOmSXIX2dWx6cOUCf7tDDGB13grubPKSIvjvnKJJAO3Vu6Dq0o1/Wns+MJlyebqNc+5ev0SCPKbCRMwzrXbiOjf/LHlJO8MFA2TGcmRIeTDmedrvD25qrtl3pQf8HUYnzntAoJAhYM9FxCM8HpoyTrwjCq4/8ENoWkmFfjgw80JybqmRBfl/FNps70cRR8KgMMS74uOj0viF; 4:u+tUvcnKxL7FGojAIvySb6ma+yPUoTZJp61YMwf55sZTY30myHX3IsSo8qr1j27aGJ3HdpDmxH4rtD0n88Ch3Cl1Wzpey9MD1k6+zF+0zPfOAaVV+QLnIPjHRlKVSFgACvAkrNZADuEzfVATpVy9P/Pmu6PeUslSGQbT/H5D9YttEvV3m2UyTg1HeTsSUKRVWHLHqNskm3A+ReR0W83vIJo/NliWODAg2S6ApEWlyNlso9K8IGe92/cABl9DNCPcMYSe8ZQk1dylMVgzEQGbVQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040501)(2401047)(8121501046)(5005006)(3002001)(3231220)(944501206)(52105095)(93006095)(93001095)(10201501046)(6041288)(20161123558120)(20161123564045)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:DM5PR0601MB3750; BCL:0; PCL:0; RULEID:; SRVR:DM5PR0601MB3750; X-Forefront-PRVS: 05961EBAFC X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(376002)(396003)(366004)(346002)(39850400004)(39380400002)(199004)(189003)(4326008)(2361001)(36756003)(107886003)(106356001)(48376002)(305945005)(7736002)(1857600001)(50466002)(26005)(478600001)(53936002)(105586002)(69596002)(55016002)(6116002)(81166006)(50226002)(1076002)(25786009)(8936002)(86362001)(2906002)(47776003)(81156014)(66066001)(21086003)(3846002)(8676002)(386003)(316002)(6916009)(59450400001)(51416003)(6666003)(16586007)(2351001)(5660300001)(186003)(52116002)(16526019)(7696005)(97736004)(68736007); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR0601MB3750; H:impinj.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: impinj.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM5PR0601MB3750; 23:5nE+nn08+54UYPzLkaCtnS2RzKeA6272k0ZbZnH?= 3WzG0ZyjBQrYgio1L842wU0ijv1/QWzEFIBP3WdTLmO08ohR1VIZfxZWU8uJU/KEfc9AWsIVv3fQaf+CuTt2p3Jup5sq6tqY4LcLJXBX732HfA1fCvL9yj07ADtPLCxwoB3oD6T0C4s6gFLiyZTv9Y+lAv3KfE5kMmv1ElzXkACC/9n0Zaw9KKBuE8rUYfPQHEArzD0+h0ZfSXmLk15u2bSaYnl/hKrcv8VAtPaGu2Lyhazm4e/bxKa9HL8uPqmWufPiFdRg00c7M8pTszkIF1EK5KL0Ac+93eH+LNmqCdYsXe5MO61rUhPelisJXodPjTm/WuojrJRh4Td+03C5pf73pEfMd44ZdAqNFCLMivqlZYmgqRvmX/98tJxGYh66X6WvLW7bTuo+LbBI9tLU3CR1WW115JRuDw7xlR2uS1uy87SmRWSx5PW6HcPPhXSENQgIkGgGyVTb59j7NjrfvJnEfStLzW5uVcBBMq3dDFTmIq5OpZV0x+CI5h/oPt0VXiJZjrYN1xH61zwiGZ9F0+/vbS6GseDAmrj9d7U4FZV19EQ7o/AOb1USAkqewbd2dp1JlqDrKqhSGz8TvHZCBPoUHE1aQPcmY3NeLdK8AL6V+2aDEe+rJ/5teZZNlcUc6VP16v8qwjC64B6BeZpXrVwr3i5327xCKgVrtW6e/GaRG2gshE8yNyO4JxWM/6yr27t2WvduyDZ55ZHFI8RTRtZJHJ2TJPVii8OVTN4YPXAhe1BbrvsEfwXcLug/qf2lLNnag1MC4D0N6yKoKD1Uk28/sHkecoYHqIl0TK2Nxxdy7gpdkzXEHhjsveWGedXdC9szStkSFbgGBsmnKGfmpPGRGE4jBpO4+jS6AOFGKxm1dZeeJzPCdUyOQ9ztRtrQfSTAEOhEfHXjNHOaxaxobP+b6odwORrSn36M9BUTn900hSCnZt9qHegUwXUC6efrIQ9Fqr0c2RZ5CAVba6W27QTKd4MwdIydUAkHGcDyeNYAyjSV38IhxR2+QEjMD8uVOB+n08dt7k7iZ/l1EsVKHeA74sDpNOalanRU6P5XBmOR1ChcyFuHMdETUspyv41e1XV4jjN58fNj5NE6mOnRfXGnswdvm/DTpptZNAYGXk56C/VTA9nrIQlRk40D2VbO8xOAEXV2X/0fLtBc03WOZkEfE X-Microsoft-Exchange-Diagnostics: 1; DM5PR0601MB3750; 6:4ipv50O5fLE8p81rVc0jLxwwE0EBjveHADYw3E85XOOgKo67f8JxfV6rLo0l6gl3RVRctrh6pYYNfQ8ulq3vhWGAUJEiOFrUc7pVUfmGQu35fltJ5apuP3ykdOuvK5I4LM26KhH1l/3SpUtwzJ6OR82Ndl0S6x/xDmfjk7MxofYOKtN45uivErCJ5p3Mg/DBQ2gLxw8gDre7LmivBnJxQ0YNCjy65gAnWHxIEIMGgLhvTTsqTe4a6BjznBjxB5oJwpwgn2wU209KBfXbjY5h6S5WByjYKVCZlTm5Iu58xOA9WBm0P4f90pa5j2/zs2zriZj0oxJyWvZgldym8+dak15tl3FTtIXdv+Ie2upY+Cc=; 5:POoAUgF/vlRZyOP0qwxvW2n55cJLUesbA9TPxrt4epBRC/7vKxvdY/NORLKtgQdYDh7j+YGI+xF6DxE+RQ7xGpv6tWe71ZKgCio/VzUj54VIwVf5DqPlghhZwCOVbo0H1ZSTe6oCmoMnERtbEkoHrl4TrpkfAadZ4obzTV+TdB0=; 24:lQu0u3d3GC1St961y9W44XvvgkEIGP8YoN8Hf4dwiplhAXSEbATWjVTNZx0+USBSS3ieA4aFac54FN8INBlSm331+qAw7BRSYEf13M4WbPc=; 7:e1ScsADKhHCXBzYz01Z2XgKlK4VOO9kZ34AxxrmIbGc6VL78m+aKtQGRuRVRfXfRmCmZCSLbushgrRI/MnFuCfvu7WuWAbSUAONZkeCIxxWcnO+sGdb8ZOZwGLguWdvjjkvBrXnFRRNCd3e3ecl8HhaVTalhX43DcFQl99ivJF7Wp9tJ+Uf9c1ROvJiMTNV8WkPgNv0BevacvH7hB/AIe/Ga+yGvgEBTt//kNmS5jN3LK6umNjm3LcczFOQehPwH SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: impinj.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2018 22:16:57.4413 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: de1d4110-16f3-4e0f-2c87-08d57e2fd0f0 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6de70f0f-7357-4529-a415-d8cbb7e93e5e X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR0601MB3750 Subject: [Buildroot] [PATCH] skeleton-init-systemd: Work around for RO root /var/lib not populating X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Trent Piepho Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" When using a RO root with systemd, it is intended that /var/lib should be populated at boot time by tmpfiles system mirroring it from /usr/share/factory/var/lib. However, this will only happen if /var/lib does not already exist at the time systemd-tmpfiles runs. If it does exist, then tmpfiles will (silently) skip it and do nothing. It turns out /var/lib will exist, because some part of systemd creates /var/lib/systemd/catalog on boot before tmpfiles runs. The fix used here is to also create tmpfiles entries for the contents of /var/lib/* and /var/lib/systemd/*. This way, when those directories already exist, the entire tree is not skipped and instead the not-yet-existing contents of /var/lib and /var/lib/systemd will be still be mirrored from the factory dir. And if /var/lib/systemd, or a prefix of that, stops getting created and does not exist, it'll still mirror properly. It does cause some warnings from systemd: systemd[1]: Starting Create Volatile Files and Directories... systemd-tmpfiles[148]: [/etc/tmpfiles.d/var-factory.conf:7] Duplicate line for path "/var/lib/systemd", ignoring. systemd-tmpfiles[148]: [/etc/tmpfiles.d/var-factory.conf:8] Duplicate line for path "/var/lib/systemd/coredump", ignoring. But they can be ignored. IMHO, I think a better solution would be for systemd-tmpfiles to gain a "merge tree" operation that is like "C" but doesn't abort if the destination exists, but rather merges the source into it. Signed-off-by: Trent Piepho --- package/skeleton-init-systemd/skeleton-init-systemd.mk | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package/skeleton-init-systemd/skeleton-init-systemd.mk b/package/skeleton-init-systemd/skeleton-init-systemd.mk index 93bff9d27b..0ff3c774ba 100644 --- a/package/skeleton-init-systemd/skeleton-init-systemd.mk +++ b/package/skeleton-init-systemd/skeleton-init-systemd.mk @@ -42,7 +42,10 @@ endef define SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR rm -f $(TARGET_DIR)/var mkdir $(TARGET_DIR)/var - for i in $(TARGET_DIR)/usr/share/factory/var/*; do \ + for i in $(TARGET_DIR)/usr/share/factory/var/* \ + $(TARGET_DIR)/usr/share/factory/var/lib/* \ + $(TARGET_DIR)/usr/share/factory/var/lib/systemd/*; do \ + [ -e "$${i}" ] || continue; \ j="$${i#$(TARGET_DIR)/usr/share/factory}"; \ if [ -L "$${i}" ]; then \ printf "L+! %s - - - - %s\n" \