diff options
| author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-04-02 23:15:06 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-04-03 22:50:17 +0100 |
| commit | 47e9e125d7378139de1d9180a8b24aa9d088f4f6 (patch) | |
| tree | af0d42cf6031bc2924b770e6bd535287a6d0ae2f /bitbake/lib | |
| parent | 80336270f3ccecd8504590714428db68dd68f651 (diff) | |
| download | poky-47e9e125d7378139de1d9180a8b24aa9d088f4f6.tar.gz | |
bitbake: siggen: Fix nostamp taint handling
The taint values need to be passed from the server to the workers to
ensure they see the same stamp values. Also ensure that the "nostamp:"
prefix isn't included in the checksum value to match the server
calculation. This ensures the checksums are all consistent.
(Bitbake rev: f80ba20e90f3746f7faee3e0ff7f249025fec8ee)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib')
| -rw-r--r-- | bitbake/lib/bb/siggen.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index 2f0fb71c78..1fa7b09272 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py | |||
| @@ -38,6 +38,7 @@ class SignatureGenerator(object): | |||
| 38 | self.taskhash = {} | 38 | self.taskhash = {} |
| 39 | self.runtaskdeps = {} | 39 | self.runtaskdeps = {} |
| 40 | self.file_checksum_values = {} | 40 | self.file_checksum_values = {} |
| 41 | self.taints = {} | ||
| 41 | 42 | ||
| 42 | def finalise(self, fn, d, varient): | 43 | def finalise(self, fn, d, varient): |
| 43 | return | 44 | return |
| @@ -65,10 +66,10 @@ class SignatureGenerator(object): | |||
| 65 | return | 66 | return |
| 66 | 67 | ||
| 67 | def get_taskdata(self): | 68 | def get_taskdata(self): |
| 68 | return (self.runtaskdeps, self.taskhash, self.file_checksum_values) | 69 | return (self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints) |
| 69 | 70 | ||
| 70 | def set_taskdata(self, data): | 71 | def set_taskdata(self, data): |
| 71 | self.runtaskdeps, self.taskhash, self.file_checksum_values = data | 72 | self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints = data |
| 72 | 73 | ||
| 73 | 74 | ||
| 74 | class SignatureGeneratorBasic(SignatureGenerator): | 75 | class SignatureGeneratorBasic(SignatureGenerator): |
| @@ -543,7 +544,10 @@ def calc_taskhash(sigdata): | |||
| 543 | data = data + c[1] | 544 | data = data + c[1] |
| 544 | 545 | ||
| 545 | if 'taint' in sigdata: | 546 | if 'taint' in sigdata: |
| 546 | data = data + sigdata['taint'] | 547 | if 'nostamp:' in sigdata['taint']: |
| 548 | data = data + sigdata['taint'][8:] | ||
| 549 | else: | ||
| 550 | data = data + sigdata['taint'] | ||
| 547 | 551 | ||
| 548 | return hashlib.md5(data).hexdigest() | 552 | return hashlib.md5(data).hexdigest() |
| 549 | 553 | ||
