From: Markus Armbruster <armbru@redhat.com>
To: Dmitry Fleytman <dmitry@daynix.com>
Cc: Cao jin <caoj.fnst@cn.fujitsu.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Jason Wang <jasowang@redhat.com>,
qemu-devel@nongnu.org, Marcel Apfelbaum <marcel@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] e1000e: remove internal interrupt flag
Date: Thu, 18 Aug 2016 18:41:16 +0200 [thread overview]
Message-ID: <87inuyqbbn.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <73BF031C-2ED4-421C-AFFA-00B8FA3811ED@daynix.com> (Dmitry Fleytman's message of "Thu, 18 Aug 2016 18:31:41 +0300")
Dmitry Fleytman <dmitry@daynix.com> writes:
>> On 18 Aug 2016, at 17:15, Cao jin <caoj.fnst@cn.fujitsu.com> wrote:
>>
>> Commit 66bf7d58 removed internal msi state flag E1000E_USE_MSI, E1000E_USE_MSIX
>> is not necessary too, remove it now. And interrupt flag field intr_state also
>> can be removed now.
>>
>> CC: Dmitry Fleytman <dmitry@daynix.com>
>> CC: Jason Wang <jasowang@redhat.com>
>> CC: Markus Armbruster <armbru@redhat.com>
>> CC: Marcel Apfelbaum <marcel@redhat.com>
>> CC: Michael S. Tsirkin <mst@redhat.com>
>> CC: Paolo Bonzini <pbonzini@redhat.com>
>> Signed-off-by: Cao jin <caoj.fnst@cn.fujitsu.com>
>> ---
>> hw/net/e1000e.c | 8 +-------
>> 1 file changed, 1 insertion(+), 7 deletions(-)
>>
>> diff --git a/hw/net/e1000e.c b/hw/net/e1000e.c
>> index 82a7be1..72aad21 100644
>> --- a/hw/net/e1000e.c
>> +++ b/hw/net/e1000e.c
>> @@ -69,7 +69,6 @@ typedef struct E1000EState {
>> uint16_t subsys_ven_used;
>> uint16_t subsys_used;
>>
>> - uint32_t intr_state;
>> bool disable_vnet;
>>
>> E1000ECore core;
>> @@ -89,8 +88,6 @@ typedef struct E1000EState {
>> #define E1000E_MSIX_TABLE (0x0000)
>> #define E1000E_MSIX_PBA (0x2000)
>>
>> -#define E1000E_USE_MSIX BIT(0)
>> -
>> static uint64_t
>> e1000e_mmio_read(void *opaque, hwaddr addr, unsigned size)
>> {
>> @@ -302,8 +299,6 @@ e1000e_init_msix(E1000EState *s)
>> } else {
>> if (!e1000e_use_msix_vectors(s, E1000E_MSIX_VEC_NUM)) {
>> msix_uninit(d, &s->msix, &s->msix);
>> - } else {
>> - s->intr_state |= E1000E_USE_MSIX;
>
> So you are removing error handling here. But what if e1000e_use_msix_vectors fails?
Before the patch, E1000E_USE_MSIX is set exactly when MSI-X was enabled
successfully. It's only use is in MSI-X cleanup (next hunk): cleanup is
skipped when the flag isn't set.
The flag is pointless, because we can just as well test whether MSI-X is
enabled directly. That's what the patch does.
>
>> }
>> }
>> }
>> @@ -311,7 +306,7 @@ e1000e_init_msix(E1000EState *s)
>> static void
>> e1000e_cleanup_msix(E1000EState *s)
>> {
>> - if (s->intr_state & E1000E_USE_MSIX) {
>> + if (msix_enabled(PCI_DEVICE(s))) {
>> e1000e_unuse_msix_vectors(s, E1000E_MSIX_VEC_NUM);
>> msix_uninit(PCI_DEVICE(s), &s->msix, &s->msix);
>> }
>> @@ -601,7 +596,6 @@ static const VMStateDescription e1000e_vmstate = {
>> VMSTATE_MSIX(parent_obj, E1000EState),
>>
>> VMSTATE_UINT32(ioaddr, E1000EState),
>> - VMSTATE_UINT32(intr_state, E1000EState),
We can still do this, because as Paolo pointed out, no released version
of QEMU had this device.
>> VMSTATE_UINT32(core.rxbuf_min_shift, E1000EState),
>> VMSTATE_UINT8(core.rx_desc_len, E1000EState),
>> VMSTATE_UINT32_ARRAY(core.rxbuf_sizes, E1000EState,
>> --
>> 2.1.0
Reviewed-by: Markus Armbruster <armbru@redhat.com>
next prev parent reply other threads:[~2016-08-18 16:41 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-18 14:15 [Qemu-devel] [PATCH] e1000e: remove internal interrupt flag Cao jin
2016-08-18 15:31 ` Dmitry Fleytman
2016-08-18 16:41 ` Markus Armbruster [this message]
2016-08-18 17:37 ` Markus Armbruster
2016-08-18 20:27 ` Dmitry Fleytman
2016-08-18 16:57 ` Paolo Bonzini
2016-08-19 2:14 ` Jason Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87inuyqbbn.fsf@dusky.pond.sub.org \
--to=armbru@redhat.com \
--cc=caoj.fnst@cn.fujitsu.com \
--cc=dmitry@daynix.com \
--cc=jasowang@redhat.com \
--cc=marcel@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.