recursive loop in omap2_gpio_module_readp due to typo

Bug #886980 reported by Rob Taylor on 2011-11-07
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro QEMU
Fix Released
High
Unassigned

Bug Description

In 0.15.50-2011.10 a recursive loop will occur when booting omap2 emulated hardware due to a typo in omap2_gpio_module_readp.

@ line 511 reads:

static uint32_t omap2_gpio_module_readp(void *opaque, target_phys_addr_t addr)
{
    return omap2_gpio_module_readp(opaque, addr) >> ((addr & 3) << 3);
}

It should presumably read

static uint32_t omap2_gpio_module_readp(void *opaque, target_phys_addr_t addr)
{
    return omap2_gpio_module_read(opaque, addr) >> ((addr & 3) << 3);
}

Rob Taylor (robtaylor) wrote :

I should add, making this change works for me when booting the linaro beagleboard image.

Peter Maydell (pmaydell) wrote :

Yes, that looks pretty definitely wrong. Can you give details of the image and command line you're using, please? We do test beagleboard before release, so perhaps this is a recent kernel change that's tickling the bug.

(This bug looks like it's been present since the OMAP2 code was introduced upstream in 2008, in fact...)

Rob Taylor (robtaylor) wrote :

Sure, that occurred with http://releases.linaro.org/images/11.10/oneiric/nano/beagle-nano.img.gz.

Commandline was something like:
qemu-system-arm -M beaglexm -drive if=sd,cache=writeback,file=beagle-nano.img -clock unix -serial stdio -device usb-kbd -device usb-mouse -usb -device usb-net,netdev=mynet -netdev user,id=mynet

HTH

Peter Maydell (pmaydell) wrote :

Patch submitted upstream:
http://patchwork.ozlabs.org/patch/124073/
It may or may not get into the imminent 1.0 release. In any case I'll put it into qemu-linaro 2011.11.

Changed in qemu-linaro:
milestone: none → 2011.11
status: New → In Progress
importance: Undecided → High
Peter Maydell (pmaydell) on 2011-11-08
Changed in qemu-linaro:
status: In Progress → Fix Committed
Peter Maydell (pmaydell) on 2011-11-10
Changed in qemu-linaro:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers