Skip to contentSkip to conversation

bitbake.conf: Add DATE and TIME to BB_HASH_WHITELIST

GIT PULL In review Dongxiao Xu 2 participants 4 messages Feb 27, 2012

lore
Share & tools
lore
#0 lore raw

Hi Richard,

This pull request adds DATE and TIME into BB_HASH_WHITELIST, please help to review and pull.

Thanks,
Dongxiao

The following changes since commit 6e1065a4988489baa762f7dc1535fe326e0ba7b5:

arch-armv7.inc: fix quoting (2012-02-26 23:01:36 +0000)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib dxu4/oecore-bugfix
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dxu4/oecore-bugfix

Dongxiao Xu (1):
bitbake.conf: Add DATE and TIME to BB_HASH_WHITELIST

 meta/conf/bitbake.conf |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Signature · 1 line
1.7.4.1
#1 lore raw

PATCH 1/1 bitbake.conf: Add DATE and TIME to BB_HASH_WHITELIST

DATE and TIME are not needed when calculating cache's hash value.

---
 meta/conf/bitbake.conf |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/bitbake.conf +1 -1
index 7d0e0d8..d817bcc 100644
@@ -736,7 +736,7 @@ BB_CONSOLELOG ?= "${TMPDIR}/cooker.log.${DATETIME}"
 
 # Setup our default hash policy
 BB_SIGNATURE_HANDLER ?= "OEBasic"
-BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN"
+BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN DATE TIME"
 
 MLPREFIX ??= ""
 MULTILIB_VARIANTS ??= ""
Signature · 1 line
1.7.4.1
#2 lore raw
Quoted 12 lines · Dongxiao Xu

DATE and TIME are not needed when calculating cache's hash value.

---
 meta/conf/bitbake.conf |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/bitbake.conf +0 -0
index 7d0e0d8..d817bcc 100644

meta/conf/bitbake.conf BB_CONSOLELOG ?= "${TMPDIR}/cooker.log.${DATETIME}" · line 742

Quoted 8 lines
meta/conf/bitbake.conf +1 -1
@@ -736,7 +736,7 @@ BB_CONSOLELOG ?= "${TMPDIR}/cooker.log.${DATETIME}"
 
 # Setup our default hash policy
 BB_SIGNATURE_HANDLER ?= "OEBasic"
-BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN"
+BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN DATE TIME"
 
 MLPREFIX ??= ""
 MULTILIB_VARIANTS ??= ""

I think this patch highlights a major difference between your hashing policy for bitbake's base configuration cache and the hash policy needed for the signatures and other sstate related pieces.

With siggen, we know we have a target variable (usually a task like do_compile) and we figure out all its dependencies which we create a hash of. Its perfectly valid to have that hash depend on DATE or TIME, if it uses them and we don't want to exclude them.

For the base configuration cache, we don't want to depend on DATE or TIME. We also don't have one target variable to figure out the dependencies for, we need to hash every variable with some exclusion list.

My point is therefore that the above list is very different to the one bitbake needs for its cache's hash. With that in mind, we probably need to add a new variable which does something like:

BB_HASHCONFIG_WHITELIST ?= "DATE TIME ${BB_HASHBASE_WHITELIST}"

?

Cheers,

Richard

#3 lore raw
Quoted 36 lines · Richard Purdie
Quoted 12 lines · Dongxiao Xu

DATE and TIME are not needed when calculating cache's hash value.

---
 meta/conf/bitbake.conf |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/conf/bitbake.conf +0 -0
index 7d0e0d8..d817bcc 100644

meta/conf/bitbake.conf BB_CONSOLELOG ?= "${TMPDIR}/cooker.log.${DATETIME}" · line 742

Quoted 8 lines
meta/conf/bitbake.conf +1 -1
@@ -736,7 +736,7 @@ BB_CONSOLELOG ?= "${TMPDIR}/cooker.log.${DATETIME}"
 
 # Setup our default hash policy
 BB_SIGNATURE_HANDLER ?= "OEBasic"
-BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN"
+BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN DATE TIME"
 
 MLPREFIX ??= ""
 MULTILIB_VARIANTS ??= ""

I think this patch highlights a major difference between your hashing policy for bitbake's base configuration cache and the hash policy needed for the signatures and other sstate related pieces.

With siggen, we know we have a target variable (usually a task like do_compile) and we figure out all its dependencies which we create a hash of. Its perfectly valid to have that hash depend on DATE or TIME, if it uses them and we don't want to exclude them.

For the base configuration cache, we don't want to depend on DATE or TIME. We also don't have one target variable to figure out the dependencies for, we need to hash every variable with some exclusion list.

Quoted 5 lines

My point is therefore that the above list is very different to the one bitbake needs for its cache's hash. With that in mind, we probably need to add a new variable which does something like:

BB_HASHCONFIG_WHITELIST ?= "DATE TIME ${BB_HASHBASE_WHITELIST}"

Yes, this change does make sense.

I will send a new pull request for it.

Thanks,
Dongxiao

Quoted 14 lines

?

Cheers,

Richard

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core