This patch switches to use qemu_receive_packet() which can detect
reentrancy and return early.
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
hw/net/dp8393x.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
index 205c0decc5..019d4fe435 100644
--- a/hw/net/dp8393x.c
+++ b/hw/net/dp8393x.c
@@ -506,7 +506,7 @@ static void dp8393x_do_transmit_packets(dp8393xState *s)
s->regs[SONIC_TCR] |= SONIC_TCR_CRSL;
if (nc->info->can_receive(nc)) {
s->loopback_packet = 1;
- nc->info->receive(nc, s->tx_buffer, tx_len);
+ qemu_receice_packet(nc, s->tx_buffer, tx_Len);
}
} else {
/* Transmit packet */
--
2.25.1
Am 24.02.21 um 06:53 schrieb Jason Wang:
> This patch switches to use qemu_receive_packet() which can detect
> reentrancy and return early.
>
> Signed-off-by: Jason Wang <jasowang@redhat.com>
> ---
> hw/net/dp8393x.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
> index 205c0decc5..019d4fe435 100644
> --- a/hw/net/dp8393x.c
> +++ b/hw/net/dp8393x.c
> @@ -506,7 +506,7 @@ static void dp8393x_do_transmit_packets(dp8393xState *s)
> s->regs[SONIC_TCR] |= SONIC_TCR_CRSL;
> if (nc->info->can_receive(nc)) {
> s->loopback_packet = 1;
> - nc->info->receive(nc, s->tx_buffer, tx_len);
> + qemu_receice_packet(nc, s->tx_buffer, tx_Len);
Did you test compilation of that code? It looks like a typo ...
Regards
Stefan W.
On 2/24/21 7:13 AM, Stefan Weil wrote:
> Am 24.02.21 um 06:53 schrieb Jason Wang:
>
>> This patch switches to use qemu_receive_packet() which can detect
>> reentrancy and return early.
>>
>> Signed-off-by: Jason Wang <jasowang@redhat.com>
>> ---
>> hw/net/dp8393x.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
>> index 205c0decc5..019d4fe435 100644
>> --- a/hw/net/dp8393x.c
>> +++ b/hw/net/dp8393x.c
>> @@ -506,7 +506,7 @@ static void
>> dp8393x_do_transmit_packets(dp8393xState *s)
>> s->regs[SONIC_TCR] |= SONIC_TCR_CRSL;
>> if (nc->info->can_receive(nc)) {
>> s->loopback_packet = 1;
>> - nc->info->receive(nc, s->tx_buffer, tx_len);
>> + qemu_receice_packet(nc, s->tx_buffer, tx_Len);
>
>
> Did you test compilation of that code? It looks like a typo ...
With typo fixed:
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Am 25.02.21 um 15:36 schrieb Philippe Mathieu-Daudé:
> On 2/24/21 7:13 AM, Stefan Weil wrote:
>> Am 24.02.21 um 06:53 schrieb Jason Wang:
>>
>>> This patch switches to use qemu_receive_packet() which can detect
>>> reentrancy and return early.
>>>
>>> Signed-off-by: Jason Wang <jasowang@redhat.com>
>>> ---
>>> hw/net/dp8393x.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
>>> index 205c0decc5..019d4fe435 100644
>>> --- a/hw/net/dp8393x.c
>>> +++ b/hw/net/dp8393x.c
>>> @@ -506,7 +506,7 @@ static void
>>> dp8393x_do_transmit_packets(dp8393xState *s)
>>> s->regs[SONIC_TCR] |= SONIC_TCR_CRSL;
>>> if (nc->info->can_receive(nc)) {
>>> s->loopback_packet = 1;
>>> - nc->info->receive(nc, s->tx_buffer, tx_len);
>>> + qemu_receice_packet(nc, s->tx_buffer, tx_Len);
>>
>> Did you test compilation of that code? It looks like a typo ...
> With typo fixed:
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Plural, as I noticed later: there are two typos in the same line of
code. The compiler will report both of them.
Stefan
On 2021/2/25 10:42 下午, Stefan Weil wrote:
> Am 25.02.21 um 15:36 schrieb Philippe Mathieu-Daudé:
>
>> On 2/24/21 7:13 AM, Stefan Weil wrote:
>>> Am 24.02.21 um 06:53 schrieb Jason Wang:
>>>
>>>> This patch switches to use qemu_receive_packet() which can detect
>>>> reentrancy and return early.
>>>>
>>>> Signed-off-by: Jason Wang <jasowang@redhat.com>
>>>> ---
>>>> hw/net/dp8393x.c | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
>>>> index 205c0decc5..019d4fe435 100644
>>>> --- a/hw/net/dp8393x.c
>>>> +++ b/hw/net/dp8393x.c
>>>> @@ -506,7 +506,7 @@ static void
>>>> dp8393x_do_transmit_packets(dp8393xState *s)
>>>> s->regs[SONIC_TCR] |= SONIC_TCR_CRSL;
>>>> if (nc->info->can_receive(nc)) {
>>>> s->loopback_packet = 1;
>>>> - nc->info->receive(nc, s->tx_buffer, tx_len);
>>>> + qemu_receice_packet(nc, s->tx_buffer, tx_Len);
>>>
>>> Did you test compilation of that code? It looks like a typo ...
>> With typo fixed:
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
>
> Plural, as I noticed later: there are two typos in the same line of
> code. The compiler will report both of them.
>
> Stefan
Yes, my bad. Will post V2.
Thanks
© 2016 - 2026 Red Hat, Inc.