|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH] Fix device removal on net and block frontend dri
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx wrote on 11/21/2005
01:31:48 PM:
> On Mon, Nov 21, 2005 at 11:49:19AM -0500, Stefan Berger wrote:
>
> > Murillo Fernandes Bernardes <mfb@xxxxxxxxxx> wrote on 11/21/2005
11:33:31
> > AM:
> >
> > > On Monday 21 November 2005 14:07, Stefan Berger wrote:
> > > > xen-devel-bounces@xxxxxxxxxxxxxxxxxxx wrote on 11/21/2005
10:43:01 AM:
> > > > > Frontend devices are not being unregistered when
in closed state.
> > The
> > > > > following patch fix that.
> > > > >
> > > > > Fix bug #420.
> > > > >
> > > > > Makes "05_attach_and_dettach_device_repeatedly_pos"
and
> > > > > "09_attach_and_dettach_device_check_data_pos"
tests pass.
> > > >
> > > > Did you test this with suspending / resuming a dom
U? The reason I am
> > > > asking is that when suspending the driver immediately
gets into state
> > > > 'Closed' and when resuming into state 'Connected',
but now your
> > device is
> > > > unregistered.
> > >
> > > No, I did not test suspend/resume.
> > >
> > > I really don't see why it should get into Closed on suspend,
but anyway,
> > is
> > > this really hapenning? I could not find any switch to Closed
into
> > suspend's
> > > code, neither on resume.
>
> xenbus_read_driver_state returns Closed if the backend path is no
longer
> present. Maybe this is where the Closed has come from. However,
> xenbus_probe.c:otherend_changed is supposed to be protecting us from
watches
> that have fired immediately after a resume.
>
> Could you please enable the DPRINTK in xenbus_probe and see whether
the Closed
> is coming through the test in otherend_changed? This would help
diagnose the
> problem.
Here's the log from domain 0's /var/log/messages:
Nov 21 14:54:43 jlfb-2 gpm[2667]: *** info [startup.c(95)]:
Nov 21 14:54:43 jlfb-2 gpm[2667]: Started gpm successfully. Entered daemon
mode.
Nov 21 14:54:43 jlfb-2 gpm[2667]: *** info [mice.c(1766)]:
Nov 21 14:54:43 jlfb-2 gpm[2667]: imps2: Auto-detected intellimouse PS/2
Nov 21 14:54:52 jlfb-2 fstab-sync[2817]: removed all generated mount points
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (xenbus_probe_backend:639)
.
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (xenbus_probe_backend_unit:624)
backend/vif/15/0
Nov 21 14:54:55 jlfb-2 kernel: .
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (xenbus_probe_backend:639)
.
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (xenbus_probe_backend_unit:624)
backend/vtpm/15/6
Nov 21 14:54:55 jlfb-2 kernel: .
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (xenbus_probe_backend:639)
.
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (xenbus_probe_backend_unit:624)
backend/vtpm/2/6
Nov 21 14:54:55 jlfb-2 kernel: .
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (frontend_changed:763) .
Nov 21 14:54:55 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:54:55 jlfb-2 gconfd (root-2848): starting (version 2.10.0), pid
2848 user 'root'
Nov 21 14:54:55 jlfb-2 gconfd (root-2848): Resolved address "xml:readonly:/etc/gconf/gconf.xml.mandatory"
to a read-only configuration source at position 0
Nov 21 14:54:55 jlfb-2 gconfd (root-2848): Resolved address "xml:readwrite:/root/.gconf"
to a writable configuration source at position 1
Nov 21 14:54:56 jlfb-2 gconfd (root-2848): Resolved address "xml:readonly:/etc/gconf/gconf.xml.defaults"
to a read-only configuration source at position 2
Nov 21 14:55:03 jlfb-2 gconfd (root-2848): Resolved address "xml:readwrite:/root/.gconf"
to a writable configuration source at position 0
below: starting user domain
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (backend_changed:771)
.
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (xenbus_hotplug_backend:232)
.
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (xenbus_dev_probe:338) .
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:55:40 jlfb-2 last message repeated 5 times
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (otherend_changed:307) state
is 1, /local/domain/1/device/vif/0/state, /local/domain/1/device/vif/0/state.
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (xenbus_hotplug_backend:232)
.
Nov 21 14:55:40 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:55:41 jlfb-2 kernel: device vif1.0 entered promiscuous mode
Nov 21 14:55:41 jlfb-2 kernel: xenbr0: port 1(vif1.0) entering learning
state
Nov 21 14:55:41 jlfb-2 kernel: xenbr0: topology change detected, propagating
Nov 21 14:55:41 jlfb-2 kernel: xenbr0: port 1(vif1.0) entering forwarding
state
Nov 21 14:55:41 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:55:45 jlfb-2 kernel: xenbus;_probe (otherend_changed:307) state
is 4, /local/domain/1/device/vif/0/state, /local/domain/1/device/vif/0/state.
Nov 21 14:55:45 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
below: suspending user domain
Nov 21 14:56:09 jlfb-2 kernel: xenbus;_probe (otherend_changed:307)
state is 6, /local/domain/1/device/vif/0/state, /local/domain/1/device/vif/0/state.
Nov 21 14:56:09 jlfb-2 kernel: xenbus;_probe (xenbus_dev_remove:376) .
Nov 21 14:56:09 jlfb-2 kernel: xenbr0: port 1(vif1.0) entering disabled
state
Nov 21 14:56:09 jlfb-2 kernel: xenbus;_probe (xenbus_hotplug_backend:232)
.
Nov 21 14:56:09 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:56:09 jlfb-2 kernel: device vif1.0 left promiscuous mode
Nov 21 14:56:09 jlfb-2 kernel: xenbr0: port 1(vif1.0) entering disabled
state
Nov 21 14:56:09 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
below: resuming user domain
Nov 21 14:56:30 jlfb-2 last message repeated 2 times
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (xenbus_hotplug_backend:232)
.
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (xenbus_dev_probe:338) .
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:56:30 jlfb-2 last message repeated 5 times
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (otherend_changed:307) state
is 1, /local/domain/2/device/vif/0/state, /local/domain/2/device/vif/0/state.
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (xenbus_hotplug_backend:232)
.
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (otherend_changed:307) state
is 6, /local/domain/2/device/vif/0/state, /local/domain/2/device/vif/0/state.
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (xenbus_dev_remove:376) .
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (xenbus_hotplug_backend:232)
.
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Nov 21 14:56:30 jlfb-2 kernel: device vif2.0 entered promiscuous mode
Nov 21 14:56:30 jlfb-2 kernel: xenbr0: port 1(vif2.0) entering learning
state
Nov 21 14:56:30 jlfb-2 kernel: xenbr0: topology change detected, propagating
Nov 21 14:56:30 jlfb-2 kernel: xenbr0: port 1(vif2.0) entering forwarding
state
Nov 21 14:56:30 jlfb-2 kernel: xenbus;_probe (backend_changed:771) .
Result: eth0 is gone.
This is a user domain that is booting into a RAM disk.
Memory of the user domain is 64M.
Stefan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|