Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-04-11 Thread Martin Baulig

On Mon, 2008-04-07 at 09:30 +0200, Harald Krapfenbauer wrote:

> I understand all of the problems you have with integrating the patch. It
> is partly a hack (though it works of course), and I wonder if all of
> these problems can be solved so that integration would be possible.
> 
> Would you be willing to work on it together with me? I'm currently busy
> with other stuff, and I don't know when I can spend time on the debugger
> again.

Hello Harald,

sure I can help you with this, but I hope that doesn't mean that I have
to write and maintain all the code.

I can help you find a solution for the bfd problem and also do some
minor API changes in the backend like adding more stuff to the vtable,
but please understand that I can't spend too much time on this.

Remote debugging surely is a really cool feature, but it's not a top
priority for our users.

Martin

-- 
Martin Baulig - [EMAIL PROTECTED]
Novell GmbH, Düsseldorf
GF: Volker Smid, Djamel Souici; HRB 21108 (AG Düsseldorf)


___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-04-07 Thread Harald Krapfenbauer
Hello Martin,

I understand all of the problems you have with integrating the patch. It
is partly a hack (though it works of course), and I wonder if all of
these problems can be solved so that integration would be possible.

Would you be willing to work on it together with me? I'm currently busy
with other stuff, and I don't know when I can spend time on the debugger
again.

Best regards,
Harald


Martin Baulig wrote:
> Hello Harald,
> 
> I had a look at your remote debugging patch and unfortunately, I have
> some bigger problems with it.  There are basically three major issues
> which need to be resolved before I can integrate this into the main
> debugger release.
> 
> I.) Libbfd
> 
> I don't like modifying the libbfd which is shipped with the debugger
> very much.  This makes it very complicated to upgrade the bfd to a newer
> version in future.
> 
> I've already been asked about upgrading libbfd because this may become
> necessary if we add ppc support.  Because of that, it's important to
> keep the bfd changes to an absolute minimum.  It should also be easy for
> other people (not just me) to replace the bfd, for instance if someone
> wants to implement support for a new architecture.
> 
> One solution for this is probably adding wrappers for each of the
> functions into backend/arch/bfdglue.c and do the changes there.
> 
> II.) The if conditionals
> 
> I'm not very happy about the fact that you basically put all of
> backend/server/*.c inside `if' conditionals.
> 
> Most of these functions are already invoked via the `InferiorVTable', so
> I'd prefer if we could put all the remote debugging functions into a
> separate file and then simply replace the vtable when remote debugging.
> 
> If you need to invoke any methods which aren't in that vtable, we can
> simply add them.
> 
> III.) Using arch-specific code in x86-linux-ptrace.c
> 
> You can't use any architecture specific code in x86-linux-ptrace.c, like
> accessing fields inside the `INFERIOR_REGS_TYPE'.
> 
> This file is shared between i386 and x86_64, so `regs->ebx' won't even
> compile on the x86_64.
> 
> These are the major issues, there are also a few minor cosmetic ones:
> 
> * Please don't use a global variable `remove_debugging_flag', put it
>   inside the `ServerHande' instead.
> 
> * Please don't copy the private struct `InferiorHandle' from one .c file
>   into another; we can either put it into a header file or add public
>   accessor functions.
> 
> * Do we really need to add the breakpoint code to thread-db.c ?
> 
> I would really like to integrate this into the main debugger, but please
> understand that I also need to ensure long-term maintainability and code
> cleanness.
> 
> Martin
> 
> --
> Martin Baulig - [EMAIL PROTECTED]
> Novell GmbH, Düsseldorf
> GF: Volker Smid, Djamel Souici; HRB 21108 (AG Düsseldorf)
> 
> 
> 

-- 
Harald Krapfenbauer
Project assistant

Vienna University of Technology, Institute of Computer Technology
Gusshausstraße 27-29, 1040 Vienna, Austria
Phone: +43-1-58801-38472, Fax: +43-1-58801-38499
Email: [EMAIL PROTECTED], WWW: http://www.ict.tuwien.ac.at
Skype: harald.krapfenbauer
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-04-03 Thread Martin Baulig
Hello Harald,

I had a look at your remote debugging patch and unfortunately, I have
some bigger problems with it.  There are basically three major issues
which need to be resolved before I can integrate this into the main
debugger release.

I.) Libbfd

I don't like modifying the libbfd which is shipped with the debugger
very much.  This makes it very complicated to upgrade the bfd to a newer
version in future.

I've already been asked about upgrading libbfd because this may become
necessary if we add ppc support.  Because of that, it's important to
keep the bfd changes to an absolute minimum.  It should also be easy for
other people (not just me) to replace the bfd, for instance if someone
wants to implement support for a new architecture.

One solution for this is probably adding wrappers for each of the
functions into backend/arch/bfdglue.c and do the changes there.

II.) The if conditionals

I'm not very happy about the fact that you basically put all of
backend/server/*.c inside `if' conditionals.

Most of these functions are already invoked via the `InferiorVTable', so
I'd prefer if we could put all the remote debugging functions into a
separate file and then simply replace the vtable when remote debugging.

If you need to invoke any methods which aren't in that vtable, we can
simply add them.

III.) Using arch-specific code in x86-linux-ptrace.c

You can't use any architecture specific code in x86-linux-ptrace.c, like
accessing fields inside the `INFERIOR_REGS_TYPE'.

This file is shared between i386 and x86_64, so `regs->ebx' won't even
compile on the x86_64.

These are the major issues, there are also a few minor cosmetic ones:

* Please don't use a global variable `remove_debugging_flag', put it
  inside the `ServerHande' instead.

* Please don't copy the private struct `InferiorHandle' from one .c file
  into another; we can either put it into a header file or add public
  accessor functions.

* Do we really need to add the breakpoint code to thread-db.c ?

I would really like to integrate this into the main debugger, but please
understand that I also need to ensure long-term maintainability and code
cleanness.

Martin

-- 
Martin Baulig - [EMAIL PROTECTED]
Novell GmbH, Düsseldorf
GF: Volker Smid, Djamel Souici; HRB 21108 (AG Düsseldorf)



___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-03-19 Thread Miguel de Icaza
Hello Harald!

> After discussing the license issue with our project partners, we agreed
> to relicense it under MIT X11 license.

These are great news!

> I've updated the source file headers and the website
> http://www.streamunlimited.com/vimem. We're looking forward to the
> integration of our code!

We look forward to integrating the code.

Martin is on vacation for the rest of this week and the next one, but he
should be able to merge the code into the debugger on April 2nd.

Once again, thanks!
Miguel.
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-03-19 Thread Harald Krapfenbauer
Hello Miguel,

After discussing the license issue with our project partners, we agreed
to relicense it under MIT X11 license.

I've updated the source file headers and the website
http://www.streamunlimited.com/vimem. We're looking forward to the
integration of our code!

Best regards,
Harald



Miguel de Icaza wrote:
> Hello Harald,
> 
> This is really cool code, and am looking forward to testing it, this
> is something that am sure many users will like to use.   Regarding the
> license:
> 
> The extension is available under the GNU GPL license and can be
>> downloaded here:
>> http://www.streamunlimited.com/vimem
>>
>> Martin: If you want to integrate our patch into the official MDB, please
>> contact us - we wouldn't mind!
>> Also, in the course of development, we discovered some MDB bugs which we
>> filed on bugzilla.novell.com.
> 
> The Mono Debugger code is licensed under the terms of the MIT X11
> license.  Currently it consumes a private copy of libbfd which is
> licensed under the GPL, but we are trying to keep the GPL code to a
> minimum.
> 
> Would you be willing to relicense the code under the terms of the MIT
> X11 license?
> 
> Miguel.

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-03-13 Thread Martin Baulig
Hello Harald,

just read your paper and I'm really impressed, this is some awesome
news, thanks a lot for this great work !

I'm very interested in integrating this into the official MDB.

Regarding your bugzilla bugs, I have really neglected bugzilla the last
three months because I was so busy implementing C# 2.0 support.

I'm now finally done with that and am currently preparing a 0.80
release.  After that, I'll have a look at all the bugzilla bugs.

Btw. I'll be on vacations from March 17th-April 1st.

Martin

On Thu, 2008-03-13 at 14:15 +0100, Harald Krapfenbauer wrote:
> Hello Martin,
> Hello Mono community!
> 
> We are currently working on a project that makes use of Mono and the
> Mono debugger. Now, because we deal with embedded systems, we wanted to
> have a resource-saving debugger.
> 
> We developed a remote debugger based on MDB that follows the concept of
> GDB and gdbserver.
> 
> The extension is available under the GNU GPL license and can be
> downloaded here:
> http://www.streamunlimited.com/vimem
> 
> Martin: If you want to integrate our patch into the official MDB, please
> contact us - we wouldn't mind!
> Also, in the course of development, we discovered some MDB bugs which we
> filed on bugzilla.novell.com.
> 
> 
> Best greetings,
> Harald Krapfenbauer
> 
-- 
Martin Baulig - [EMAIL PROTECTED]
Novell GmbH, Düsseldorf
GF: Volker Smid, Djamel Souici; HRB 21108 (AG Düsseldorf)


___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Mono Debugger Patch that allows Remote Debugging

2008-03-13 Thread Miguel de Icaza
Hello Harald,

This is really cool code, and am looking forward to testing it, this
is something that am sure many users will like to use.   Regarding the
license:

The extension is available under the GNU GPL license and can be
> downloaded here:
> http://www.streamunlimited.com/vimem
> 
> Martin: If you want to integrate our patch into the official MDB, please
> contact us - we wouldn't mind!
> Also, in the course of development, we discovered some MDB bugs which we
> filed on bugzilla.novell.com.

The Mono Debugger code is licensed under the terms of the MIT X11
license.  Currently it consumes a private copy of libbfd which is
licensed under the GPL, but we are trying to keep the GPL code to a
minimum.

Would you be willing to relicense the code under the terms of the MIT
X11 license?

Miguel.
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list