Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

kvm: stop including asm-generic/bitops/le.h directly

asm-generic/bitops/le.h is only intended to be included directly from
asm-generic/bitops/ext2-non-atomic.h or asm-generic/bitops/minix-le.h
which implements generic ext2 or minix bit operations.

This stops including asm-generic/bitops/le.h directly and use ext2
non-atomic bit operations instead.

It seems odd to use ext2_set_bit() on kvm, but it will replaced with
__set_bit_le() after introducing little endian bit operations for all
architectures. This indirect step is necessary to maintain bisectability
for some architectures which have their own little-endian bit operations.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Avi Kivity <avi@redhat.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Akinobu Mita and committed by
Linus Torvalds
5140a357 135a9fcf

+1 -2
+1 -2
virt/kvm/kvm_main.c
··· 52 52 #include <asm/io.h> 53 53 #include <asm/uaccess.h> 54 54 #include <asm/pgtable.h> 55 - #include <asm-generic/bitops/le.h> 56 55 57 56 #include "coalesced_mmio.h" 58 57 #include "async_pf.h" ··· 1438 1439 if (memslot && memslot->dirty_bitmap) { 1439 1440 unsigned long rel_gfn = gfn - memslot->base_gfn; 1440 1441 1441 - generic___set_le_bit(rel_gfn, memslot->dirty_bitmap); 1442 + ext2_set_bit(rel_gfn, memslot->dirty_bitmap); 1442 1443 } 1443 1444 } 1444 1445