This service is available only in Japanese-language.

[kirkstone] "bitbake linux-raspberrypi -c devshell"で行った変更を取り消したい

お世話になります。

現在、kirkstoneを使用してRaspberry Pi CM4のOSイメージの構築を行っております。その作業の中で、カーネルに変更を加えるべく以下の作業を行いました。
 (1) 「bitbake linux-raspberrypi -c devshell」を実行してカーネルソースに変更を加える。
 (2) 「git status」を実行。
 (3) 「git add .」を実行。
 (4) 「git commit -m "変更理由等"」を実行。
 (5) 「git format-patch -n HEAD^」を実行。

と、ここまでの手順によって出来上がったパッチを指定した「linux-raspberrypi_5.10.bbappend」として配置。
その後、"bitbake core-image-base"を実行しました。
------------------
DESCRIPTION = "Kernel change"
SUMMARY = "Custom package"
SECTION = "Yamaguchi"
LICENSE = "CLOSED"
PR = "r0"
LIC_FILES_CHKSUM = "file:///${COMMON_LICENSE_DIR}/eCos-2.0;md5=8c3ea41d02fa9c9253c692351e5940e7"

FILESEXTRAPATHS:prepend := "${THISDIR}/files:"

SRC_URI += " \
file://0001-CHANGE.patch \
"
------------------
ここまでは順調でした。変更も反映されました。

問題はここからなのですが、上記で行った変更をやめることとなり、bitbakeで反応しないよう上記のbbappendの拡張子を変更(->linux-raspberrypi_5.10.bbappend.rej)。
イチから構築しなおそうと以下のフォルダを削除し"bitbake core-image-base"を再度実行しました。
 ・build/cahce
 ・build/sstate-chache
 ・build/tmp

すると、パッチの中で追加したソースコードが見つからないというエラーで停止してしまいました。「bitbake linux-raspberrypi -c devshell」を実行し、そこで「git reflog」を行ったところ、どうもリポジトリの中に上記のコミット内容が残っているようです。
構築物は上記のフォルダを削除(残りは build/conf と build/download のみ)にしても上記の変更が消えないということになります。

これはどういうことが原因で起こっているものなのでしょうか?

linux-yoctoの場合、 構築を行う際のカーネルソースの展開は
do_fetch
do_unpack
do_kernel_checkout
do_symlink_kernelsrc
の各タスクが順に実施されます。
何が原因で、現在の状況になってしまっているのかについて、いただいている情報からは判断できないです。

bitbake virtual/kernel -c cleanall を実行することで、do_fetch でdownloadされたファイルも消去されます。
その後 bitbake virtual/kernel を実行すば do_fetch でDL_DIR に再度upstreamから取得したファイルが保存されるかと。

ソースの変更を行いパッチの生成やbbappendの作成を行う場合は、devshellの実行の他、devtool modify を実行する方法もあります。
https://docs.yoctoproject.org/4.0.6/ref-manual/devtool-reference.html#mo...

さっそく試してみます。

上記の事象ですが、RPI_KERNEL_DEVICETREE_OVERLAYS:append に対象を追加したまま消してなかったことが原因と分かりました。
お騒がせいたしました。