On Thu, Apr 13, 2006 at 06:35:18PM +0100, John Levon wrote:
>
> This was fun to find... we were unlucky enough for the corruption to
> zero out the bottom 2 bytes of the saved %ebp.
Excellent work, John, thank you!
That might well have fixed the dreaded bug #411. Could people keep an eye out
for the message "Xend died due to signal 9! Restarting it" in
/var/log/xend.log (hopefully you'll never see it ;-)
I tried a whole host of things to try and catch this one, from valgrind to
python heap debugging. How did you find it?
Ewan.
>
> regards,
> john
>
> # HG changeset patch
> # User john.levon@xxxxxxx
> # Node ID 09a9fd49601b9b5315843eb62ad7798ccb0ccd0d
> # Parent 2a7a46dd3bd6a600deee21990aef41456cba9724
> Fix stack corruption in the libxs python interface. domid_t is a short;
> instead use uint32_t like we do in xc.c.
>
> Signed-off-by: John Levon <john.levon@xxxxxxx>
>
> diff -r 2a7a46dd3bd6 -r 09a9fd49601b tools/python/xen/lowlevel/xs/xs.c
> --- a/tools/python/xen/lowlevel/xs/xs.c Thu Apr 13 11:26:01 2006 +0100
> +++ b/tools/python/xen/lowlevel/xs/xs.c Thu Apr 13 09:17:48 2006 -0700
> @@ -589,7 +589,7 @@ static PyObject *xspy_transaction_end(Xs
>
> static PyObject *xspy_introduce_domain(XsHandle *self, PyObject *args)
> {
> - domid_t dom;
> + uint32_t dom;
> unsigned long page;
> unsigned int port;
>
> @@ -620,7 +620,7 @@ static PyObject *xspy_introduce_domain(X
>
> static PyObject *xspy_release_domain(XsHandle *self, PyObject *args)
> {
> - domid_t dom;
> + uint32_t dom;
>
> struct xs_handle *xh = xshandle(self);
> bool result = 0;
> @@ -677,7 +677,7 @@ static PyObject *xspy_get_domain_path(Xs
> static PyObject *xspy_get_domain_path(XsHandle *self, PyObject *args)
> {
> struct xs_handle *xh = xshandle(self);
> - int domid;
> + uint32_t domid;
> char *xsval;
>
> if (!xh)
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|