| Summary: | init-live-boot: CONFIG_UNION_FS changes not updated in init-live.sh | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Tom Zanussi <tom.zanussi> |
| Component: | core | Assignee: | Yang Shi <yang.shi> |
| Status: | RESOLVED DUPLICATE | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | bruce.ashfield, dvhart, meta.mr.watcher, meta.watcher, richard.purdie, yang.shi |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | --- | |
|
Description
Tom Zanussi
2012-04-19 19:23:28 UTC
So, this is why we add virtual/kernel depend for initramfs-live-boot.
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
index e85a0e1..f7f0c9d 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
@@ -2,10 +2,17 @@ DESCRIPTION = "A live image init script"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
RDEPENDS = "udev"
+DEPENDS = "virtual/kernel"
SRC_URI = "file://init-live.sh"
When I did the test, I found I need clean initramfs-live-boot, then rebuild it once kernel config is changed, it can't be rebuilt automatically.
Because the kernel config is in the linux-yocto/meta, bitbake won't detect the change unless the SRCREV is updated. If the SRCREV was updated and initramfs-live-boot doesn't rebuild automatically, then I think we have a bug. In this usecase, I don't think changing of SRCREV is involved. The changing to kernel config is just to temporarily disable a kernel config (here it is CONFIG_UNION_FS) via "bitbake -c menuconfig linux-yocto", then rebuild kernel. If we rebuild kernel via the steps suggested in Bug #2256, will or should any package which depends on virtual/kernel be rebuilt automatically? In my understanding, this should be expected. This definitely looks to be the same as 2256 to me. I've tested this and if the sstate checksum of the kernel changes, the script does rebuild. So if you change the kernel SRCREV or add a fragment to SRC_URI it will notice and update. Even if we fix 2256 so sstate isn't reused, we're still going to have to be careful with this since its possible to change the kernel config manually but not change the sstate checksum. At that point the user should really know what they're doing though and I'm not sure there is much we can realistically do. I think the only option will be to shows users a big warning when they use menuconfig that the dependencies of the kernel will not rebuild automatically, they're doing something outside the normal system and are on their own. *** This bug has been marked as a duplicate of bug 2256 *** |