rtl8139: validate rx ring before receiving packets
authorJason Wang <jasowang@redhat.com>
Thu, 17 May 2012 05:25:43 +0000 (13:25 +0800)
committerAnthony Liguori <aliguori@us.ibm.com>
Wed, 27 Jun 2012 21:27:00 +0000 (16:27 -0500)
commitfcce6fd25f3e233f9da9ef01230a668ab35bd343
tree45ce16ff88d35149a272010af694e7c505ef8978
parent2624bab836662d37f08336408a99d97652fc9c4d
rtl8139: validate rx ring before receiving packets

Commit ff71f2e8cacefae99179993204172bc65e4303df prevent the possible
crash during initialization of linux driver by checking the operating
mode.This seems too strict as:

- the real card could still work in mode other than normal
- some buggy driver who does not set correct opmode after eeprom
 access

So, considering rx ring address were reset to zero (which could be
safely trated as an address not intened to DMA to), in order to
both letting old guest work and preventing the unexpected DMA to
guest, we can forbid packet receiving when rx ring address is zero.

Tested-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
hw/rtl8139.c