From: Gerd Hoffmann <kraxel@suse.de>
To: Keir Fraser <Keir.Fraser@cl.cam.ac.uk>
Cc: Xen devel list <xen-devel@lists.xensource.com>
Subject: Re: [PATCH] cleanup "struct xenbus_driver"
Date: Tue, 11 Jul 2006 17:54:53 +0200 [thread overview]
Message-ID: <44B3C9CD.4070805@suse.de> (raw)
In-Reply-To: <8cf0fb2d74fc4ac3bac78670de4e1476@cl.cam.ac.uk>
Keir Fraser wrote:
>
> On 11 Jul 2006, at 12:41, Gerd Hoffmann wrote:
>
>>> "struct xenbus_driver" has alot of elements duplicated
>>> with "struct device_driver". This patch removes them
>>> all and does the related code changes.
>>
>> Oops, wrong direction, ignore that one, sorry.
>
> The patch looked to be in the correct direction to me?
Well, parts of it are fine, but not everything.
I got "Driver 'vbd' needs updating - please use bus_type methods"
messages in the log; seems using both xenbus_frontend->bus->probe() and
xenbus_device->driver->probe() (which the patch does) is the reason for
that.
I've checked what others (pci for example) are doing, they have
pci_driver->probe() and friends too, so that probably is just fine.
The .name and .owner elements of xenbus_driver can be dropped in favor
of the device_driver ones. And xenbus_dev_{probe,remove} also can be
hooked directly into xenbus_{frontend,backend}->bus->{probe,remove}
instead of overwriting the device_driver hooks in the driver register
functions. I'll post an updated version soon.
Right now I'm fighting with another xenbus issue: kexec'ing a new
kernel requires a workflow which can't be handled nicely by the current
xenbus state engine. Old kernel must do a clean shutdown so it doesn't
leak grant table entries and stuff like that. But without making the
device disappear, which happens if you just do
"xenbus_state_switch(Closing)", after some chit-chat between frontend
and backend. Additionally it must also bring xenbus and backend device
into the state the new kernel expects ...
cheers,
Gerd
--
Gerd Hoffmann <kraxel@suse.de>
http://www.suse.de/~kraxel/julika-dora.jpeg
next prev parent reply other threads:[~2006-07-11 15:54 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-11 7:32 [PATCH] cleanup "struct xenbus_driver" Gerd Hoffmann
2006-07-11 11:41 ` Gerd Hoffmann
2006-07-11 15:08 ` Keir Fraser
2006-07-11 15:54 ` Gerd Hoffmann [this message]
2006-07-11 16:03 ` Keir Fraser
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=44B3C9CD.4070805@suse.de \
--to=kraxel@suse.de \
--cc=Keir.Fraser@cl.cam.ac.uk \
--cc=xen-devel@lists.xensource.com \
/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.