diff options
Diffstat (limited to 'main/qemu/0005-exec-replace-ffsl-with-ctzl.patch')
-rw-r--r-- | main/qemu/0005-exec-replace-ffsl-with-ctzl.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/main/qemu/0005-exec-replace-ffsl-with-ctzl.patch b/main/qemu/0005-exec-replace-ffsl-with-ctzl.patch new file mode 100644 index 000000000..d4781ab64 --- /dev/null +++ b/main/qemu/0005-exec-replace-ffsl-with-ctzl.patch @@ -0,0 +1,32 @@ +From 235699fab03b8e60358863bae9e9c9aeea978189 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Tue, 29 Apr 2014 14:41:19 +0200 +Subject: [PATCH 5/6] exec: replace ffsl with ctzl + +See commit fbeadf50 (bitops: unify bitops_ffsl with the one in +host-utils.h, call it bitops_ctzl) on why ctzl should be used instead +of ffsl. + +This is also needed for musl libc which does not implement ffsl. + +Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> +--- + include/exec/ram_addr.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h +index 2edfa96..b94de02 100644 +--- a/include/exec/ram_addr.h ++++ b/include/exec/ram_addr.h +@@ -117,7 +117,7 @@ static inline void cpu_physical_memory_set_dirty_lebitmap(unsigned long *bitmap, + if (bitmap[i] != 0) { + c = leul_to_cpu(bitmap[i]); + do { +- j = ffsl(c) - 1; ++ j = ctzl(c); + c &= ~(1ul << j); + page_number = (i * HOST_LONG_BITS + j) * hpratio; + addr = page_number * TARGET_PAGE_SIZE; +-- +1.9.2 + |