[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 5/5] Set the RU state to ru_no_resources instead of
From: |
Reimar Döffinger |
Subject: |
[Qemu-devel] [PATCH 5/5] Set the RU state to ru_no_resources instead of asserting when we used up the last receive buffer. This should not usually happen with good drivers, but it can happen with the OS X drivers at least. |
Date: |
Tue, 11 Aug 2009 23:15:36 +0200 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
Currently if the hardware runs out of receive buffers qemu
crashes with an assert.
Simply setting the RU state to "no resources" seems to work (though it
is hard to provoke the situation and thus hard to test well), at least
it can't be any worse than crashing due to an assert (IMO)...
Signed-off-by: Reimar Döffinger <address@hidden>
---
hw/eepro100.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/hw/eepro100.c b/hw/eepro100.c
index d2c18cc..8b343c1 100644
--- a/hw/eepro100.c
+++ b/hw/eepro100.c
@@ -1558,7 +1558,7 @@ static ssize_t nic_receive(VLANClientState *vc, const
uint8_t * buf, size_t size
s->ru_offset = le32_to_cpu(rx.link);
if (rfd_command & 0x8000) {
/* EL bit is set, so this was the last frame. */
- assert(0);
+ set_ru_state(s, ru_no_resources);
}
if (rfd_command & 0x4000) {
/* S bit is set. */
--
1.6.4
- Re: [Qemu-devel] Intel 8255x/eepro100 compatibility patches, (continued)
- Re: [Qemu-devel] Intel 8255x/eepro100 compatibility patches, Reimar Döffinger, 2009/08/15
- [Qemu-devel] [PATCH 1/5] Setting the MDI SCBAck flag when interrupts for MDI are disabled is wrong, even if it does not seem to cause any real issue with known drivers., Reimar Döffinger, 2009/08/11
- [Qemu-devel] [PATCH 2/5] Hack to make sure that drivers like AppleIntel8255x will not meddle with the RU/CU state when the ACK the interrupt with a 16 bit write., Reimar Döffinger, 2009/08/11
- [Qemu-devel] [PATCH 3/5] Add support for receiving via receive buffers. While the Intel documentation claims this is unsupported, the OS X drivers use it, causing an assertion failure since rx buffer size is 0., Reimar Döffinger, 2009/08/11
- Re: [Qemu-devel] [PATCH 3/5] Add support for receiving via receive buffers. While the Intel documentation claims this is unsupported, the OS X drivers use it, causing an assertion failure since rx buffer size is 0., malc, 2009/08/11
- Re: [Qemu-devel] [PATCH 3/5] Add support for receiving via receive buffers. While the Intel documentation claims this is unsupported, the OS X drivers use it, causing an assertion failure since rx buffer size is 0., Reimar Döffinger, 2009/08/11
- Re: [Qemu-devel] [PATCH 3/5] Add support for receiving via receive buffers. While the Intel documentation claims this is unsupported, the OS X drivers use it, causing an assertion failure since rx buffer size is 0., malc, 2009/08/12
- Re: [Qemu-devel] [PATCH 3/5] Add support for receiving via receive buffers. While the Intel documentation claims this is unsupported, the OS X drivers use it, causing an assertion failure since rx buffer size is 0., Anthony Liguori, 2009/08/12
- Re: [Qemu-devel] [PATCH 3/5] Add support for receiving via receive buffers. While the Intel documentation claims this is unsupported, the OS X drivers use it, causing an assertion failure since rx buffer size is 0., Reimar Döffinger, 2009/08/13
- [Qemu-devel] [PATCH 4/5] Short frames do not exist, so remove code to handle them. Also expand packets that are smaller than the shor frame limit, otherwise the OS X network stack seems to discard them., Reimar Döffinger, 2009/08/11
- [Qemu-devel] [PATCH 5/5] Set the RU state to ru_no_resources instead of asserting when we used up the last receive buffer. This should not usually happen with good drivers, but it can happen with the OS X drivers at least.,
Reimar Döffinger <=
- Re: [Qemu-devel] [PATCH 6/5] Implement the trivial diagnose CU and RU abort commands. These are necessary to make the device work with OpenSolaris 0609 (111b)., Reimar Döffinger, 2009/08/12