[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <50ED825802000078000B4113@nat28.tlf.novell.com>
Date: Wed, 09 Jan 2013 13:44:40 +0000
From: "Jan Beulich" <JBeulich@...e.com>
To: "jianhai luan" <jianhai.luan@...cle.com>
Cc: <xen-devel@...ts.xensource.com>,
"Konrad Rzeszutek Wilk" <konrad.wilk@...cle.com>,
<netdev@...r.kernel.org>
Subject: Re: [Xen-devel] xen-netback notify DomU to send ARP.
>>> On 09.01.13 at 13:28, jianhai luan <jianhai.luan@...cle.com> wrote:
>>> + switch (event) {
>>> + case NETDEV_NOTIFY_PEERS:
>>> + /* Notify frontend to Send gratuitous ARP */
>>> + xenbus_switch_state(be->dev, XenbusStateInitialised);
>>> + xenbus_switch_state(be->dev, );
>> This is the sort of change that clearly isn't acceptable, as I don't
>> think you have ways to check _all_ existing frontends for their
>> compatibility with this. A connected -> connected transition
>> might be acceptable (that was done in the block frontend too, for
>> implementing dynamic resize), but will likely need to be
>> accompanied by a frontend side patch to handle that (which so
>> far should be a no-op).
> The latest xen net-frontent driver have handled the condition. State
> XenbusStateInitialised will do nothing,
> but change to XenbusStateConnected will trigger
> netdev_notify_peers(netdev) to send ARP.
Did you read my earlier reply carefully? You still only talk about
(upstream) Linux netfront, but this is not the only (possible)
frontend. You should not invoke state transitions that can -
even if only theoretically - blow up frontends. And afaict the
only thing you can safely assume frontends ought to tolerate
are transitions from Connected to Connected (or more
generally from one state to the same one, but the other
states aren't useful here, except maybe the Reconfigur* ones).
Jan
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists