kexec-tools: update to 2.0.26
Release Notes: - 2.0.22: https://www.spinics.net/lists/kexec/msg26864.html - 2.0.23: https://www.spinics.net/lists/kexec/msg27693.html - 2.0.24: https://www.spinics.net/lists/kexec/msg28922.html - 2.0.25: https://lore.kernel.org/all/YuYl22cyGldQQc5m@vergenet.net/ - 2.0.26: https://www.spinics.net/lists/kexec/msg30743.html Remove upstreamed patch: - 001-arm-do-not-copy-magic-4-bytes-of-appended-DTB-in-zIm.patch Tested-by: Linhui Liu <liulinhui36@gmail.com> # x86_64 Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
		 Nick Hainke
					Nick Hainke
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							b3702fda8f
						
					
				
				
					commit
					7ce266767c
				
			| @@ -8,12 +8,12 @@ | ||||
| include $(TOPDIR)/rules.mk | ||||
|  | ||||
| PKG_NAME:=kexec-tools | ||||
| PKG_VERSION:=2.0.21 | ||||
| PKG_RELEASE:=2 | ||||
| PKG_VERSION:=2.0.26 | ||||
| PKG_RELEASE:=1 | ||||
|  | ||||
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz | ||||
| PKG_SOURCE_URL:=@KERNEL/linux/utils/kernel/kexec | ||||
| PKG_HASH:=e113142dee891638ad96e0f72cf9277b244477619470b30c41999d312e8e8702 | ||||
| PKG_HASH:=7fe36a064101cd5c515e41b2be393dce3ca88adce59d6ee668e0af7c0c4570cd | ||||
|  | ||||
| PKG_CONFIG_DEPENDS := CONFIG_KEXEC_ZLIB CONFIG_KEXEC_LZMA | ||||
|  | ||||
|   | ||||
| @@ -1,52 +0,0 @@ | ||||
| From 9817ec81968a5eec7863902833fb77680544eae4 Mon Sep 17 00:00:00 2001 | ||||
| From: Alexander Egorenkov <egorenar-dev@posteo.net> | ||||
| Date: Mon, 12 Apr 2021 13:18:05 +0200 | ||||
| Subject: [PATCH 1/1] arm: do not copy magic 4 bytes of appended DTB in zImage | ||||
|  | ||||
| If the passed zImage happens to have a DTB appended, then the magic 4 bytes | ||||
| of the DTB are copied together with the kernel image. This leads to | ||||
| failed kexec boots because the decompressor finds the aforementioned | ||||
| DTB magic and falsely tries to replace the DTB passed in the register r2 | ||||
| with the non-existent appended one. | ||||
|  | ||||
| Signed-off-by: Alexander Egorenkov <egorenar-dev@posteo.net> | ||||
| Signed-off-by: Simon Horman <horms@verge.net.au> | ||||
| --- | ||||
|  kexec/arch/arm/kexec-zImage-arm.c | 12 +++++++++++- | ||||
|  1 file changed, 11 insertions(+), 1 deletion(-) | ||||
|  | ||||
| --- a/kexec/arch/arm/kexec-zImage-arm.c | ||||
| +++ b/kexec/arch/arm/kexec-zImage-arm.c | ||||
| @@ -382,6 +382,7 @@ int zImage_arm_load(int argc, char **arg | ||||
|  	unsigned int atag_offset = 0x1000; /* 4k offset from memory start */ | ||||
|  	unsigned int extra_size = 0x8000; /* TEXT_OFFSET */ | ||||
|  	const struct zimage_tag *tag; | ||||
| +	size_t kernel_buf_size; | ||||
|  	size_t kernel_mem_size; | ||||
|  	const char *command_line; | ||||
|  	char *modified_cmdline = NULL; | ||||
| @@ -538,6 +539,15 @@ int zImage_arm_load(int argc, char **arg | ||||
|  	} | ||||
|   | ||||
|  	/* | ||||
| +	 * Save the length of the compressed kernel image w/o the appended DTB. | ||||
| +	 * This will be required later on when the kernel image contained | ||||
| +	 * in the zImage will be loaded into a kernel memory segment. | ||||
| +	 * And we want to load ONLY the compressed kernel image from the zImage | ||||
| +	 * and discard the appended DTB. | ||||
| +	 */ | ||||
| +	kernel_buf_size = len; | ||||
| + | ||||
| +	/* | ||||
|  	 * Always extend the zImage by four bytes to ensure that an appended | ||||
|  	 * DTB image always sees an initialised value after _edata. | ||||
|  	 */ | ||||
| @@ -759,7 +769,7 @@ int zImage_arm_load(int argc, char **arg | ||||
|  		add_segment(info, dtb_buf, dtb_length, dtb_offset, dtb_length); | ||||
|  	} | ||||
|   | ||||
| -	add_segment(info, buf, len, kernel_base, kernel_mem_size); | ||||
| +	add_segment(info, buf, kernel_buf_size, kernel_base, kernel_mem_size); | ||||
|   | ||||
|  	info->entry = (void*)kernel_base; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user