qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/9] Convert ffs(3) to ctz32()
@ 2015-03-23 15:29 Stefan Hajnoczi
  2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 1/9] bt-sdp: fix broken uuids power-of-2 calculation Stefan Hajnoczi
                   ` (9 more replies)
  0 siblings, 10 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2015-03-23 15:29 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Markus Armbruster, Stefan Hajnoczi, Peter Maydell

v3:
 * Use Paolo's much cleaner rewrite of the omap intc loop [Paolo]
 * Rebased on qemu.git/master

v2:
 * Audit coccinelle patch and split out two cases where ctz32(0) == 32 must be
   handled [Peter]
 * Cc qemu-stable@nongnu.org on first patch [Eric]

MinGW does not always provide ffs(3).  My MinGW 4.9.2 cannot link QEMU when
./configure --enable-debug was used due to the missing ffs(3) function.

In the past we already got rid of ffsl(3) calls, so getting rid of ffs(3) is a
logical next step.

This series replaces ffs(3) calls with ctz32().  Their semantics differ as follows:

1. ffs(0) == 0 but ctz32(0) == 32

2. Otherwise, ffs(val) - 1 == ctz32(val)

The first patch fixes a bug that was discovered when auditing ffs(3) callers.

The final patch adds checkpatch.pl support to prevent ffs(3), ffsl(3), and
ffsll(3) from being introduced into the codebase again in the future.

Note that there are instances of 64-bit values being passed to ffs(3).  I have
mechanically converted them to ctz32() and not worried about whether the
original code is buggy or not.

Paolo Bonzini (1):
  omap_intc: convert ffs(3) to ctz32() in omap_inth_sir_update()

Stefan Hajnoczi (8):
  bt-sdp: fix broken uuids power-of-2 calculation
  hw/arm/nseries: convert ffs(3) to ctz32()
  uninorth: convert ffs(3) to ctz32()
  Convert (ffs(val) - 1) to ctz32(val)
  Convert ffs() != 0 callers to ctz32()
  sd: convert sd_normal_command() ffs(3) call to ctz32()
  os-win32: drop ffs(3) prototype
  checkpatch: complain about ffs(3) calls

 block.c                     |  2 +-
 block/qcow2-refcount.c      |  2 +-
 block/qcow2.c               |  4 ++--
 block/qed.c                 |  4 ++--
 block/rbd.c                 |  2 +-
 block/sheepdog.c            |  2 +-
 hw/acpi/pcihp.c             |  2 +-
 hw/arm/nseries.c            |  5 ++++-
 hw/arm/omap1.c              |  6 ++----
 hw/arm/pxa2xx_gpio.c        |  2 +-
 hw/arm/strongarm.c          |  4 ++--
 hw/bt/sdp.c                 |  2 +-
 hw/char/virtio-serial-bus.c |  8 ++++----
 hw/display/tc6393xb.c       |  2 +-
 hw/gpio/max7310.c           |  2 +-
 hw/gpio/omap_gpio.c         | 13 +++++--------
 hw/gpio/zaurus.c            |  2 +-
 hw/i2c/omap_i2c.c           | 10 +++++++---
 hw/intc/allwinner-a10-pic.c |  8 ++++----
 hw/intc/omap_intc.c         |  9 +++++----
 hw/pci-host/bonito.c        |  2 +-
 hw/pci-host/uninorth.c      |  5 ++++-
 hw/pci/msi.c                | 12 ++++++------
 hw/pci/pcie_aer.c           |  2 +-
 hw/pci/shpc.c               | 10 +++++-----
 hw/pci/slotid_cap.c         |  2 +-
 hw/ppc/ppce500_spin.c       |  2 +-
 hw/scsi/megasas.c           |  2 +-
 hw/sd/sd.c                  |  3 ++-
 include/hw/pci/pci.h        | 16 ++++++++--------
 include/hw/pci/pcie_regs.h  | 18 +++++++++---------
 include/sysemu/os-win32.h   |  3 ---
 kvm-all.c                   |  8 ++++----
 scripts/checkpatch.pl       | 11 +++++++++++
 target-ppc/cpu.h            |  4 ++--
 35 files changed, 103 insertions(+), 88 deletions(-)

-- 
2.1.0

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2015-03-25 13:09 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-23 15:29 [Qemu-devel] [PATCH v3 0/9] Convert ffs(3) to ctz32() Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 1/9] bt-sdp: fix broken uuids power-of-2 calculation Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 2/9] hw/arm/nseries: convert ffs(3) to ctz32() Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 3/9] uninorth: " Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 4/9] Convert (ffs(val) - 1) to ctz32(val) Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 5/9] Convert ffs() != 0 callers to ctz32() Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 6/9] sd: convert sd_normal_command() ffs(3) call " Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 7/9] omap_intc: convert ffs(3) to ctz32() in omap_inth_sir_update() Stefan Hajnoczi
2015-03-23 15:40   ` Paolo Bonzini
2015-03-24 13:36     ` Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 8/9] os-win32: drop ffs(3) prototype Stefan Hajnoczi
2015-03-23 15:29 ` [Qemu-devel] [PATCH v3 9/9] checkpatch: complain about ffs(3) calls Stefan Hajnoczi
2015-03-25 13:09 ` [Qemu-devel] [PATCH v3 0/9] Convert ffs(3) to ctz32() Stefan Hajnoczi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).