mirror of
https://git.yoctoproject.org/poky
synced 2026-07-15 15:37:03 +00:00
devtool: prevent 'devtool modify -n' from corrupting kernel Git repos
Running 'devtool modify -n' on a kernel recipe that inherits
'kernel-yocto' can unintentionally corrupt an existing Git repo or
worktree.
The work-shared optimization introduced in 3c3a9bae ("devtool/standard.py:
Update devtool modify to copy source from work-shared if its already
downloaded") is not skipped when '--no-extract' ('args.no_extract') is set.
As a result, for kernel builds where STAGING_KERNEL_DIR was already
populated when running 'devtool modify -n', the existing source tree is
overwritten (via oe.path.copyhardlinktree()) with the contents of
STAGING_KERNEL_DIR.
Fix by adding 'and not args.no_extract' to the kernel-yocto guard
condition.
(cherry picked from commit d383ea37e4987ecabe011226f1a8e658a52ede12)
(From OE-Core rev: 7ac858c9fe1c08cf6fd91122d351c262a2a953cf)
Signed-off-by: Enrico Jörns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Jeremy Rosen <jeremy.rosen@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
This commit is contained in:
committed by
Paul Barker
parent
83670737fd
commit
0a4150051f
@@ -841,7 +841,8 @@ def modify(args, config, basepath, workspace):
|
||||
commits = {}
|
||||
check_commits = False
|
||||
|
||||
if bb.data.inherits_class('kernel-yocto', rd):
|
||||
if bb.data.inherits_class('kernel-yocto', rd) and not args.no_extract:
|
||||
|
||||
# Current set kernel version
|
||||
kernelVersion = rd.getVar('LINUX_VERSION')
|
||||
srcdir = rd.getVar('STAGING_KERNEL_DIR')
|
||||
|
||||
Reference in New Issue
Block a user