From nobody Mon Jan 29 04:55:43 2024 X-Original-To: freebsd-stable@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TNbbh3mZ3z587SH for ; Mon, 29 Jan 2024 04:56:00 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic304-23.consmr.mail.gq1.yahoo.com (sonic304-23.consmr.mail.gq1.yahoo.com [98.137.68.204]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4TNbbg1r3tz4LXY for ; Mon, 29 Jan 2024 04:55:59 +0000 (UTC) (envelope-from marklmi@yahoo.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yahoo.com header.s=s2048 header.b="N/nw0SB1"; dmarc=pass (policy=reject) header.from=yahoo.com; spf=pass (mx1.freebsd.org: domain of marklmi@yahoo.com designates 98.137.68.204 as permitted sender) smtp.mailfrom=marklmi@yahoo.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1706504157; bh=U+iQG/u8MuCteIV5sRFAYvtcPoNSvu2ZcLHuD0RGyrk=; h=From:Subject:Date:References:To:In-Reply-To:From:Subject:Reply-To; b=N/nw0SB1xvw/uMlkoiKYhkqibAbjNlr0OeohNr3sb8SCJnFyNo1vwU4SOVfP18Ox3btYqgpK/cAcj02WPE58l3mmir5KD7QYmstNKpFlOzkHgMFXsWTY9mJzIoMHzgxtDCkMsppdYJDdxyVgNeHiBHttYyCRtnQDISaN/lGT7rjT6SqCjBUjtxVXHlyX8GYAUB+0xqCuZi9Zy3SMhx0Ge2wDLBQbKPp7bjm2qabsFMcA79DNd3S/id1eN9iSrjDXTnBCxH3vBONLzqnKuzfniK2O4SHk23u7E2Ki0RT5ikfQzApaSYQ78jc1sEd+psJ/6bcDfWR13RpKUZYeAwfF2Q== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1706504157; bh=nzKVQHH4pmQtGyobzMtEmm2Zkl5uY8wnSZTbI1kR6oX=; h=X-Sonic-MF:From:Subject:Date:To:From:Subject; b=hIZSafk/L2y1QNeCFSBi9d0fFAaZNG7tZUVQV/zA4pkK6cmpc/X3gs/vfgQDYV1GcINrBeJrVXVRluldrJnPZfpRGQV2bqDa/NADPxDernzALGAdPUEG4ixkYn8MgTd2uqg9K9rcP6zuDYvX1Yp2CXA+9zA9U0nJB6uRrWrq3QpN9XfuMy4WvzZNqlWX91CYfK0Tbxcnb7Yp8iJ2P+u1cKyL/hxMEZaxIWXx35gqEfcZvvttkApVQUXN5cgcfki/ijqKb4nn6Q20r1wlu3gz01GV+dLW6z10MvKPhVRLm4MzYMmm8DaBK6tMu5EGxUGeQy81eGF8L/dGEo3oqr2m3Q== X-YMail-OSG: .lwZoBIVM1nHIzPOAKSfJbUefbJBOS0VjmjuSUyYgxZlKCJDhGsEePOD56qoW3P qWgq7V7D9hkQa.4Uljk3.fflGIN0CV9cHKoy3a8VkSMon_srkVVPSM8mzGNUNqY1oahdMrUc3kEJ m8AJytKY6oPGi7YN6_84usQ4yxUt1NPOHCKtAbMAuViq66V4zb3K3bYFHPUfP.bGmIkgB.7BvZYz JxUAlcARk0pLj28qRjv3zK5P26t_pJ9IzVtgZhPdsQIC.5Uq2hiEoa9v_T1LsyNbk3Y1.rmKqnQD HmushdfWHNdZ.ZmXGc8zdo2trpReCDqnfE_p.7O91K0vBhBiNW.HIbMhVtdAeMG_uz5RClCPrppH 6scyB3RO2kcjl3yRUGD4LeKMMqvlIyPg8ZxHCRYKRMSdGWw4l39Hq5I7xRUjK.vwqRTPNk.fhaIS KbsxaC8QKtVvzJYrgxnxgfxoVYUesOL3.IRZ..xgdd9SZTunPodwMXq8aJQVeXUKPExRw2QsES1m btFMP4dMIoSK9d4cpm8wQGpHkQY47rMF2b.Mt9bwblHohpQWp2QZoCkOO7f23VqvJnXaAP1YexCl tZn5kocHRhpufAj9K.YhY_.pCA7tibUFbOxiPDNzUIlSKFzUOvuex2DNK16v77p3usAmZfXsQMf4 fv71TECwHgdbH0EceTKEdqYCjGZDydhCnWJWb52uqDlV8Y9LdBZ71Bc1z9_rA_Z9HdfCDiAW2nyI Cf1LC6B5SJf4iPn4FtbmVcwRWEmQ4wvtomnYiK_4ygjI3E5FNDGzHq10imOxjxpz.O9YVmqIMtVD ytYQZBtG5EJL1o.kQcyvf.RI3WSvfBbvDIE.M5jm93uP_kWFG5uOV8gXLTXQHtB2lcIF3XMbDphV wxDc4g4cKQ2BQ5yzwVSIZmae5K_blZNtRifUJyuFj2Enwon0H5nxl4TOvGNoWBU45XQekFMLB1zr 9q_Z41sTVhVwaU_eGYPGbxQXxKmpcIjTYwi_4tpvumNdmkq3ey9UxEbnaoGsIxMAJYk6qVDFLIj3 RdyiojVuPm.b4ho83Gall6vSKV56Awm9xEU2jzT1sorkKpe11tYPYpeXEouQVXJZsY8bM41YweTb K4nIpho2FgtMX_ypzhYRUlfmZe9urpbrV0MltX_pixo8XJrvIxMuX_qrnwr7vTHAkkxuti_JvSmW cW2VGpOiNHTdPEmTyIdhYwLHCtAfDxWyTQGYVGZ5bKWkHXvn.t1YKq.v8ExOp6bLLwtxrNF1ERRy zNVqOJZOZFce07Y_3cL2drevPKqqnPHLGJg8N5eEm6..ejVaPO7O6LZ.vgi6FApihtjyyble3sex o3KYRiB0DhQ.LDGfTpH60FXU7BXnVXNVFhEuyZtpT78z6fuJUt5bZsOTqZMfAUJUjArNZDtaGSCR ru5iPzbM28evI777nqbLFHckSH5WzbjOTlm6R2FcLawWBDSN61cc9UFqRakqoiP7sh0qsQkDuEWe Wx_Jvz7zjj_vzB.zVaQ85bTwMjacRT1DrOUxkxPI1YwxJjleDWQLpuMswnqQNo0ieAT_0vV6A4uU 0ejLJovr0dJFFTde9fcPcNWSXP6h1sA_GqGRSA26W4VEth.Ii6PHGQiL64i8ViKH1CbyVi.kc4T0 xQD8rkJzXAy1QpZd5GLamtjP2PvgDpRG2H1QNyz38MUjS49IwmsW4N9ZSsZbwpiePv6uHQwOuSYz 0W5vgDDUeMSGQVuUcE9pMS4KkqvlKQxy_00NPfZARHdbXnd4Bq8QraZknVxxXBZOsnVFpv0FdsiJ B5iCJbGmRgQgw_ZQRKA98yulKB2yo.kiz3QxXi1EHYGE_bilXCD.QqR1bf6mga7GQsNwW5xjTfHi PrC9rDGkvjBtaygCmTJS5ZGCLX7TKZAtSFB2.4EORlVK8XjsADWJmVDfmno5jCXEm36P4Xp1kIzS zq1k_VD6KOacY5euamg4oAg7do2AL6iEaB6HmgfBNJGtQ1kjlqdvJs61WESZfAxHBXGQZkelgZzR AkWitLSH5U2149fT6cCPcNicuKNDekBVFQ.NtKOd0LswnYCLR60w7A8sd0mTfnfvS3WNRxFPZ9k3 i04_GgNFDiVUhX6hWv1W9PTEVs3h7UI5qHltQ2K2v1dgqNHAwJ6RxGrumh9X1Od7guNZHeXkuiRk .etRMOIZ.H6tAkBo1VWU1IhTwGZ233axEN8Dfd1.2XBqG3UqUDwJCMCSAQE94Ndvd8CZFy2vjVat mOkWGa6STadmcn0upoT2mZVT7WoKJRV2GoRfqQnonlB1raQgSLVk7vN_02YSsA.LPl_oR9X4xz2c - X-Sonic-MF: X-Sonic-ID: 8619bbfc-ec61-461e-8a2d-e2f37219bb7d Received: from sonic.gate.mail.ne1.yahoo.com by sonic304.consmr.mail.gq1.yahoo.com with HTTP; Mon, 29 Jan 2024 04:55:57 +0000 Received: by hermes--production-gq1-5c57879fdf-tnlsv (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 1049666529d00f6a82b19deff9d96924; Mon, 29 Jan 2024 04:55:54 +0000 (UTC) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable List-Id: Production branch of FreeBSD source code List-Archive: https://lists.freebsd.org/archives/freebsd-stable List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-stable@freebsd.org X-BeenThere: freebsd-stable@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.300.61.1.2\)) Subject: Re: Should changes in src/usr.sbin/bhyve/ trigger an llvm rebuild? Date: Sun, 28 Jan 2024 20:55:43 -0800 References: <5BCB8F1A-B5D5-4506-87E1-8B26E713C6F5@yahoo.com> <8A79DE24-403E-4E73-82B6-0E5CF4F27604@yahoo.com> To: david@catwhisker.org, FreeBSD-STABLE Mailing List In-Reply-To: Message-Id: X-Mailer: Apple Mail (2.3774.300.61.1.2) X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.50 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_SHORT(-1.00)[-1.000]; MV_CASE(0.50)[]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; MIME_GOOD(-0.10)[text/plain]; RCPT_COUNT_TWO(0.00)[2]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; FREEMAIL_FROM(0.00)[yahoo.com]; FROM_HAS_DN(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[yahoo.com:+]; MID_RHS_MATCH_FROM(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.68.204:from]; MLMMJ_DEST(0.00)[freebsd-stable@freebsd.org]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; RCVD_IN_DNSWL_NONE(0.00)[98.137.68.204:from] X-Rspamd-Queue-Id: 4TNbbg1r3tz4LXY [I cut out the history to start clean.] So 63a7e799b32c was already built and installed as of here, from what I can tell. This example does not show the 1c090bf880bf -> 63a7e799b32c transition, only after 63a7e799b32c is already built and installed. So, up to this point: buildworld 63a7e799b32c installworld 63a7e799b32c NOTE: As of here various tools and such no loner have the timestamps they had from 1c090bf880bf. reboot into 63a7e799b32c ~/Downloads/build_typescript.txt:10: 63a7e799b32c..2ee407b6068a = stable/14 -> origin/stable/14 So all the following build activity is building of 2ee407b6068a, not 63a7e799b32c directly, but the timestamp relationships changed as mentioned above cause various things to rebuild, despite lack of source code updates being involved. ~/Downloads/build_typescript.txt:45: FreeBSD g1-48.catwhisker.org = 14.0-STABLE FreeBSD 14.0-STABLE #38 stable/14-n266551-63a7e799b32c: Sat = Jan 27 11:40:05 UTC 2024 = root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY = amd64 1400506 1400506 I'll note that without a reboot the notation will stay "stable/14-n266551-63a7e799b32c", even after 2ee407b6068a is installed: it reports the operating kernel's hash, not the installed kernel's hash. ~/Downloads/build_typescript.txt:51: >>> World build started on Sun Jan = 28 11:30:47 UTC 2024 ~/Downloads/build_typescript.txt:19709: >>> World built in 2351 seconds, = ncpu: 8, make -j16 So, up to this point (extending the prior list): buildworld 63a7e799b32c installworld 63a7e799b32c NOTE: As of here various tools and such no loner have the timestamps they had from 1c090bf880bf. reboot into 63a7e799b32c Update source to 2ee407b6068a buildworld 2ee407b6068a NOTE: As of here more than just the changes for 2ee407b6068a have rebuilt. But it need not be everything that built originally for 63a7e799b32c. The details will matter later for the consequences. I claim that without the "Update source to" this would still have taken around 2000 sec because of the installworld of the 63a7e799b32c materials: the things are reinstalled that caused the original (not shown) llvm rebuild and such that took the original (not shown) time. Installworld of 2ee407b6068a will be very different for what is not changed at all (and so does not get new timestamps from the install). But at this point a subset of 63a7e799b32c also got rebuilds and, so, new timestamps for the next installworld to put in place. I'll note that, while 2351 sec is a lot of activity, the number of files that will be installed is not likely to be in direct proportion to the build time. For example, large files from llvm. I'll note that without the -dM option, the make is not explicit about the timestamp relationships that it used to pick what to rebuild. No specific evidence for that is present. ~/Downloads/build_typescript.txt:39267: >>> Kernel(s) CANARY built in = 898 seconds, ncpu: 8, make -j16 ~/Downloads/build_typescript.txt:39274: >>> Installing kernel CANARY on = Sun Jan 28 12:24:57 UTC 2024 ~/Downloads/build_typescript.txt:42089: >>> Installing kernel CANARY = completed on Sun Jan 28 12:25:27 UTC 2024 installkernel does not change notable timestamp relationships of tools and such vs. other files. ~/Downloads/build_typescript.txt:42988: >>> Installing everything = started on Sun Jan 28 12:25:57 UTC 2024 ~/Downloads/build_typescript.txt:81798: >>> Installing everything = completed on Sun Jan 28 12:28:01 UTC 2024 This is going to get new timestamps based on 2ee407b6068a changes and based on the partial rebuild of 63a7e799b32c, so more than just what 2ee407b6068a would update on its own. But it is not obvious how many of the partial rebuild of 63a7e799b32c material would touch something that leads to future rebuilds: likely far less but possibly not zero. ~/Downloads/build_typescript.txt:82482: To remove old libraries run = 'make delete-old-libs'. ~/Downloads/build_typescript.txt:82483: >> make delete-old OK ~/Downloads/build_typescript.txt:82537: FreeBSD g1-48.catwhisker.org = 14.0-STABLE FreeBSD 14.0-STABLE #38 stable/14-n266551-63a7e799b32c: Sat = Jan 27 11:40:05 UTC 2024 = root@g1-r8.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY = amd64 1400506 1400506 No reboot, so it did not report 2ee407b6068a, despite it being built and installed (along with rebuilding and reinstalling some 63a7e799b32c material). ~/Downloads/build_typescript.txt:82543: >>> World build started on Sun = Jan 28 12:30:11 UTC 2024 ~/Downloads/build_typescript.txt:100102: >>> World built in 116 seconds, = ncpu: 8, make -j16 The timestamps from the partial 63a7e799b32c rebuild and the 2ee407b6068a build activity are involved in determining what gets rebuilt above. 2ee407b6068a does not contribute much here. It is unclear how much the partial rebuild of 63a7e799b32c contributes to timestamps that would cause more rebuilds. The 116 sec indicates: not much gets new timestamps this time. ~/Downloads/build_typescript.txt:119629: >>> Kernel(s) CANARY built in = 920 seconds, ncpu: 8, make -j16 ~/Downloads/build_typescript.txt:119636: >>> Installing kernel CANARY on = Sun Jan 28 12:47:27 UTC 2024 ~/Downloads/build_typescript.txt:122450: >>> Installing kernel CANARY = completed on Sun Jan 28 12:47:55 UTC 2024 installkernel does not change notable timestamp relationships of tools and such vs. other files. ~/Downloads/build_typescript.txt:123346: >>> Installing everything = started on Sun Jan 28 12:48:25 UTC 2024 ~/Downloads/build_typescript.txt:162156: >>> Installing everything = completed on Sun Jan 28 12:50:01 UTC 2024 This install's both the partial-63a7e799b32c-rebuild material and the 2ee407b6068a material. The 116 sec figure suggests that there is not man files with updated timestamps. A reboot is involved here (or just below), so 2ee407b6068a will show up. ~/Downloads/build_typescript.txt:162840: To remove old libraries run = 'make delete-old-libs'. ~/Downloads/build_typescript.txt:162841: >> make delete-old OK ~/Downloads/build_typescript.txt:162895: FreeBSD g1-48.catwhisker.org = 14.0-STABLE FreeBSD 14.0-STABLE #40 stable/14-n266554-2ee407b6068a: Sun = Jan 28 12:39:17 UTC 2024 = root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY = amd64 1400506 1400506 The 2ee407b6068a kernel now shows as being in operation. ~/Downloads/build_typescript.txt:162897: >>> Removing old libraries ~/Downloads/build_typescript.txt:162932: FreeBSD g1-48.catwhisker.org = 14.0-STABLE FreeBSD 14.0-STABLE #40 stable/14-n266554-2ee407b6068a: Sun = Jan 28 12:39:17 UTC 2024 = root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY = amd64 1400506 1400506 Still 2ee407b6068a. ~/Downloads/build_typescript.txt:162938: >>> World build started on Sun = Jan 28 23:17:05 UTC 2024 ~/Downloads/build_typescript.txt:180497: >>> World built in 124 seconds, = ncpu: 8, make -j16 It is possible here that little or no 63a7e799b32c related timestamp changes that lead to rebuild activity were involved in the above buildworld . It depends on the details of what was rebuilt. the 116 sec and 124 sec figures both suggest: no much overall. ~/Downloads/build_typescript.txt:200023: >>> Kernel(s) CANARY built in = 901 seconds, ncpu: 8, make -j16 ~/Downloads/build_typescript.txt:200030: >>> Installing kernel CANARY on = Sun Jan 28 23:34:11 UTC 2024 ~/Downloads/build_typescript.txt:202844: >>> Installing kernel CANARY = completed on Sun Jan 28 23:34:39 UTC 2024 installkernel does not change notable timestamp relationships of tools and such vs. other files. ~/Downloads/build_typescript.txt:203743: >>> Installing everything = started on Sun Jan 28 23:35:09 UTC 2024 ~/Downloads/build_typescript.txt:242553: >>> Installing everything = completed on Sun Jan 28 23:37:16 UTC 2024 2ee407b6068a will still show up after the the reboot. ~/Downloads/build_typescript.txt:243237: To remove old libraries run = 'make delete-old-libs'. ~/Downloads/build_typescript.txt:243238: >> make delete-old OK ~/Downloads/build_typescript.txt:243292: FreeBSD g1-48.catwhisker.org = 14.0-STABLE FreeBSD 14.0-STABLE #41 stable/14-n266554-2ee407b6068a: Sun = Jan 28 23:26:10 UTC 2024 = root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY = amd64 1400506 1400506 Yep, still 2ee407b6068a. ~/Downloads/build_typescript.txt:243294: >>> Removing old libraries Overall this sequence fits what I expect. The above wording is more detailed than my earlier quick summaries. =3D=3D=3D Mark Millard marklmi at yahoo.com