* [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas @ 2018-01-02 20:23 Stefan Hajnoczi 2018-01-09 21:45 ` Alistair Francis 0 siblings, 1 reply; 15+ messages in thread From: Stefan Hajnoczi @ 2018-01-02 20:23 UTC (permalink / raw) To: qemu-devel, kvm, Jailhouse QEMU will apply to the Google Summer of Code (https://summerofcode.withgoogle.com/) and Outreachy (https://www.outreachy.org/) open source internship programs again this year. Do you want to mentor newcomers beginning open source development in our community? Please post your project ideas on the wiki by January 23rd: https://wiki.qemu.org/Google_Summer_of_Code_2018 Project ideas must: * Be doable in 12 weeks by someone fluent in C programming but not familiar with the codebase. * Have a clear scope and few dependencies. * Have a high chance of being merged. * Consist of smaller steps that can be merged incrementally. Active QEMU, KVM, and Jailhouse contributors are invited to become mentors. Mentoring is a volunteer activity that requires around 5 hours per week to interact with your intern, review code, etc. GSoC and Outreachy internships run from May through August. For background on why QEMU participates in open source internship programs and how it works, check out my KVM Forum presentation: https://www.youtube.com/watch?v=xNVCX7YMUL8 https://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf KVM and Jailhouse are invited to participate under the QEMU GSoC umbrella organization. Please let me know if you have any questions! Stefan ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-02 20:23 [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas Stefan Hajnoczi @ 2018-01-09 21:45 ` Alistair Francis 2018-01-10 1:58 ` Fam Zheng 2018-01-10 12:52 ` Stefan Hajnoczi 0 siblings, 2 replies; 15+ messages in thread From: Alistair Francis @ 2018-01-09 21:45 UTC (permalink / raw) To: Stefan Hajnoczi; +Cc: qemu-devel, kvm, Jailhouse On Tue, Jan 2, 2018 at 12:23 PM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > QEMU will apply to the Google Summer of Code > (https://summerofcode.withgoogle.com/) and Outreachy > (https://www.outreachy.org/) open source internship programs again > this year. > > Do you want to mentor newcomers beginning open source development in > our community? > > Please post your project ideas on the wiki by January 23rd: > https://wiki.qemu.org/Google_Summer_of_Code_2018 > > Project ideas must: > * Be doable in 12 weeks by someone fluent in C programming but not > familiar with the codebase. > * Have a clear scope and few dependencies. > * Have a high chance of being merged. > * Consist of smaller steps that can be merged incrementally. > > Active QEMU, KVM, and Jailhouse contributors are invited to become > mentors. Mentoring is a volunteer activity that requires around 5 > hours per week to interact with your intern, review code, etc. GSoC > and Outreachy internships run from May through August. > > For background on why QEMU participates in open source internship > programs and how it works, check out my KVM Forum presentation: > https://www.youtube.com/watch?v=xNVCX7YMUL8 > https://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf > > KVM and Jailhouse are invited to participate under the QEMU GSoC > umbrella organization. > > Please let me know if you have any questions! Hey, Can anyone who has done this before chime in. What do you think about getting someone to cleanup and improve the GDB support in QEMU? Would that be the right difficulty of task for a GSoC project? Alistair > > Stefan > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-09 21:45 ` Alistair Francis @ 2018-01-10 1:58 ` Fam Zheng 2018-01-10 12:52 ` Stefan Hajnoczi 1 sibling, 0 replies; 15+ messages in thread From: Fam Zheng @ 2018-01-10 1:58 UTC (permalink / raw) To: Alistair Francis; +Cc: Stefan Hajnoczi, qemu-devel, kvm, Jailhouse On Tue, 01/09 13:45, Alistair Francis wrote: > On Tue, Jan 2, 2018 at 12:23 PM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > > QEMU will apply to the Google Summer of Code > > (https://summerofcode.withgoogle.com/) and Outreachy > > (https://www.outreachy.org/) open source internship programs again > > this year. > > > > Do you want to mentor newcomers beginning open source development in > > our community? > > > > Please post your project ideas on the wiki by January 23rd: > > https://wiki.qemu.org/Google_Summer_of_Code_2018 > > > > Project ideas must: > > * Be doable in 12 weeks by someone fluent in C programming but not > > familiar with the codebase. > > * Have a clear scope and few dependencies. > > * Have a high chance of being merged. > > * Consist of smaller steps that can be merged incrementally. > > > > Active QEMU, KVM, and Jailhouse contributors are invited to become > > mentors. Mentoring is a volunteer activity that requires around 5 > > hours per week to interact with your intern, review code, etc. GSoC > > and Outreachy internships run from May through August. > > > > For background on why QEMU participates in open source internship > > programs and how it works, check out my KVM Forum presentation: > > https://www.youtube.com/watch?v=xNVCX7YMUL8 > > https://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf > > > > KVM and Jailhouse are invited to participate under the QEMU GSoC > > umbrella organization. > > > > Please let me know if you have any questions! > > Hey, > > Can anyone who has done this before chime in. > > What do you think about getting someone to cleanup and improve the GDB > support in QEMU? Would that be the right difficulty of task for a GSoC > project? Yeah. I don't know much about GDB stub in QEMU but it sounds like a good idea if the requirements (what exactly to improve) are concrete. In general, a few factors to consider are: * Is it managable for a student who is not familiar with QEMU code but has fair proficiency in C and Linux programming? * Is it roughly 3 months' (full time) amount of work for such a student? * Is there a mentor that can guide and help (like said above, devote a few hours every week in the process, meeting with the student, answering questions and reviewing patches)? Fam ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-09 21:45 ` Alistair Francis 2018-01-10 1:58 ` Fam Zheng @ 2018-01-10 12:52 ` Stefan Hajnoczi 2018-01-11 23:25 ` Alistair Francis 1 sibling, 1 reply; 15+ messages in thread From: Stefan Hajnoczi @ 2018-01-10 12:52 UTC (permalink / raw) To: Alistair Francis; +Cc: qemu-devel, kvm, Jailhouse On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: > Can anyone who has done this before chime in. > > What do you think about getting someone to cleanup and improve the GDB > support in QEMU? Would that be the right difficulty of task for a GSoC > project? There is not enough information to give feedback on whether this project idea is suitable. What are the specific tasks you'd like the student to work on? In general, I'm sure there are well-defined 12-week project ideas around the GDB stub. New features are easy to propose and are usually well-defined (e.g. implement these commands that are documented in the GDB protocol documentation). Cleaning up code is less clear and it would depend on exactly what needs to be done. Interns will not have a background in the QEMU codebase and may not be able to make judgements about how to structure things, so I would be more careful about refactoring/cleanup projects. Please see my talk about QEMU GSoC for guidelines on project ideas: https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf Hope this helps, Stefan ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-10 12:52 ` Stefan Hajnoczi @ 2018-01-11 23:25 ` Alistair Francis 2018-01-15 12:59 ` Stefan Hajnoczi 2018-01-18 16:49 ` David Hildenbrand 0 siblings, 2 replies; 15+ messages in thread From: Alistair Francis @ 2018-01-11 23:25 UTC (permalink / raw) To: Stefan Hajnoczi; +Cc: qemu-devel, kvm, Jailhouse On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: >> Can anyone who has done this before chime in. >> >> What do you think about getting someone to cleanup and improve the GDB >> support in QEMU? Would that be the right difficulty of task for a GSoC >> project? > > There is not enough information to give feedback on whether this > project idea is suitable. What are the specific tasks you'd like the > student to work on? > > In general, I'm sure there are well-defined 12-week project ideas > around the GDB stub. New features are easy to propose and are usually > well-defined (e.g. implement these commands that are documented in the > GDB protocol documentation). Cleaning up code is less clear and it > would depend on exactly what needs to be done. Interns will not have > a background in the QEMU codebase and may not be able to make > judgements about how to structure things, so I would be more careful > about refactoring/cleanup projects. > > Please see my talk about QEMU GSoC for guidelines on project ideas: > https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s > http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf That helps a lot, thanks for that. So for a more concrete solution, how would adding support for multi CPU support to the GDB server sound? This would allow GDB debugging for the A53 and the R5 on the Xilinx ZynqMP for example. This is something we have in the Xilinx tree, but it is in no state to go upstream and really needs to be re-write to be upstreamable and more generic. Alistair > > Hope this helps, > Stefan ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-11 23:25 ` Alistair Francis @ 2018-01-15 12:59 ` Stefan Hajnoczi 2018-02-14 19:00 ` Alistair Francis 2018-01-18 16:49 ` David Hildenbrand 1 sibling, 1 reply; 15+ messages in thread From: Stefan Hajnoczi @ 2018-01-15 12:59 UTC (permalink / raw) To: Alistair Francis; +Cc: qemu-devel, kvm, Jailhouse [-- Attachment #1: Type: text/plain, Size: 2982 bytes --] On Thu, Jan 11, 2018 at 03:25:56PM -0800, Alistair Francis wrote: > On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > > On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: > >> Can anyone who has done this before chime in. > >> > >> What do you think about getting someone to cleanup and improve the GDB > >> support in QEMU? Would that be the right difficulty of task for a GSoC > >> project? > > > > There is not enough information to give feedback on whether this > > project idea is suitable. What are the specific tasks you'd like the > > student to work on? > > > > In general, I'm sure there are well-defined 12-week project ideas > > around the GDB stub. New features are easy to propose and are usually > > well-defined (e.g. implement these commands that are documented in the > > GDB protocol documentation). Cleaning up code is less clear and it > > would depend on exactly what needs to be done. Interns will not have > > a background in the QEMU codebase and may not be able to make > > judgements about how to structure things, so I would be more careful > > about refactoring/cleanup projects. > > > > Please see my talk about QEMU GSoC for guidelines on project ideas: > > https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s > > http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf > > That helps a lot, thanks for that. > > So for a more concrete solution, how would adding support for multi > CPU support to the GDB server sound? > > This would allow GDB debugging for the A53 and the R5 on the Xilinx > ZynqMP for example. This is something we have in the Xilinx tree, but > it is in no state to go upstream and really needs to be re-write to be > upstreamable and more generic. Excellent. Then they'll already have an idea of "how" it can be achieved but have the freedom to write code that is most suitable for upstream. That is a good starting point for a project. Here is the project idea template: === TITLE === '''Summary:''' Short description of the project Detailed description of the project. '''Links:''' * Wiki links to relevant material * External links to mailing lists or web sites '''Details:''' * Skill level: beginner or intermediate or advanced * Language: C * Mentor: Email address and IRC nick * Suggested by: Person who suggested the idea Once you have written down the project idea, please post it under Internships/ProjectIdeas/MultiCPUGDBStub and then add it to the Google_Summer_of_Code_2018 wiki page using the "{{:Internships/ProjectIdeas/MultiCPUGDBStub}}" inlining syntax. Or if you prefer, just reply with the project idea to this email and I'll post it on the wiki for you. Can you think of a co-mentor who would be willing to participate? It makes internships easier when there are multiple mentors - less stress for mentors, faster communication for students. Stefan [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 455 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-15 12:59 ` Stefan Hajnoczi @ 2018-02-14 19:00 ` Alistair Francis 2018-02-20 10:36 ` Stefan Hajnoczi 2018-02-27 23:54 ` Philippe Mathieu-Daudé 0 siblings, 2 replies; 15+ messages in thread From: Alistair Francis @ 2018-02-14 19:00 UTC (permalink / raw) To: Stefan Hajnoczi Cc: qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé, Philippe Mathieu-Daudé On Mon, Jan 15, 2018 at 4:59 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > On Thu, Jan 11, 2018 at 03:25:56PM -0800, Alistair Francis wrote: >> On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: >> > On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: >> >> Can anyone who has done this before chime in. >> >> >> >> What do you think about getting someone to cleanup and improve the GDB >> >> support in QEMU? Would that be the right difficulty of task for a GSoC >> >> project? >> > >> > There is not enough information to give feedback on whether this >> > project idea is suitable. What are the specific tasks you'd like the >> > student to work on? >> > >> > In general, I'm sure there are well-defined 12-week project ideas >> > around the GDB stub. New features are easy to propose and are usually >> > well-defined (e.g. implement these commands that are documented in the >> > GDB protocol documentation). Cleaning up code is less clear and it >> > would depend on exactly what needs to be done. Interns will not have >> > a background in the QEMU codebase and may not be able to make >> > judgements about how to structure things, so I would be more careful >> > about refactoring/cleanup projects. >> > >> > Please see my talk about QEMU GSoC for guidelines on project ideas: >> > https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s >> > http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf >> >> That helps a lot, thanks for that. >> >> So for a more concrete solution, how would adding support for multi >> CPU support to the GDB server sound? >> >> This would allow GDB debugging for the A53 and the R5 on the Xilinx >> ZynqMP for example. This is something we have in the Xilinx tree, but >> it is in no state to go upstream and really needs to be re-write to be >> upstreamable and more generic. > > Excellent. Then they'll already have an idea of "how" it can be > achieved but have the freedom to write code that is most suitable for > upstream. That is a good starting point for a project. > > Here is the project idea template: > > === TITLE === > > '''Summary:''' Short description of the project > > Detailed description of the project. > > '''Links:''' > * Wiki links to relevant material > * External links to mailing lists or web sites > > '''Details:''' > * Skill level: beginner or intermediate or advanced > * Language: C > * Mentor: Email address and IRC nick > * Suggested by: Person who suggested the idea > > Once you have written down the project idea, please post it under > Internships/ProjectIdeas/MultiCPUGDBStub and then add it to the > Google_Summer_of_Code_2018 wiki page using the > "{{:Internships/ProjectIdeas/MultiCPUGDBStub}}" inlining syntax. > > Or if you prefer, just reply with the project idea to this email and > I'll post it on the wiki for you. > > Can you think of a co-mentor who would be willing to participate? It > makes internships easier when there are multiple mentors - less stress > for mentors, faster communication for students. Yep, here is my proposal. I don't have wiki access, so I can't add it myself. I think Philippe would be a good co-mentor, if he is happy to. I am also welcome to mentor other ideas, it doesn't have to be this one. === Multi-CPU cluster support for GDB server in QEMU === There are many examples in modern computing where multiple CPU clusters are grouped together in a single SoC. This is common in the ARM world especially. There are numerous examples such as ARM's big.LITTLE implementations and Xilinx's 4xA53s and 2xR5s on the ZynqMP SoC. The goal of this task is to add support to the GDB server to allow users to debug across these clusters. This is another step towards single binary QEMU as well. Detailed description of the project. Xilinx has an out of tree implementation that can be used as a starting point. Work will need to be done on top of this to prepare it for upstream submission and to ensure the implementation is more generic. This will mostly involve extending GDB server to tell GDB about different architectures and then allow the user to swap between them. The Xilinx implementation can be seen here: https://github.com/Xilinx/qemu/blob/master/gdbstub.c There has been some steps in preparing the work to go upstream, which can be seen here: https://github.com/Xilinx/qemu/tree/mainline/alistair/gdb '''Details:''' * Skill level: advanced * Language: C * Mentor: alistair23@gmail.com, Philippe? * Suggested by: Alistair Francis > > Stefan ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-02-14 19:00 ` Alistair Francis @ 2018-02-20 10:36 ` Stefan Hajnoczi 2018-02-20 11:13 ` Paolo Bonzini 2018-02-27 23:54 ` Philippe Mathieu-Daudé 1 sibling, 1 reply; 15+ messages in thread From: Stefan Hajnoczi @ 2018-02-20 10:36 UTC (permalink / raw) To: Paolo Bonzini, Peter Maydell Cc: qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé, Philippe Mathieu-Daudé, Alistair Francis [-- Attachment #1: Type: text/plain, Size: 5094 bytes --] On Wed, Feb 14, 2018 at 11:00:36AM -0800, Alistair Francis wrote: > On Mon, Jan 15, 2018 at 4:59 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > > On Thu, Jan 11, 2018 at 03:25:56PM -0800, Alistair Francis wrote: > >> On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > >> > On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: > >> >> Can anyone who has done this before chime in. > >> >> > >> >> What do you think about getting someone to cleanup and improve the GDB > >> >> support in QEMU? Would that be the right difficulty of task for a GSoC > >> >> project? > >> > > >> > There is not enough information to give feedback on whether this > >> > project idea is suitable. What are the specific tasks you'd like the > >> > student to work on? > >> > > >> > In general, I'm sure there are well-defined 12-week project ideas > >> > around the GDB stub. New features are easy to propose and are usually > >> > well-defined (e.g. implement these commands that are documented in the > >> > GDB protocol documentation). Cleaning up code is less clear and it > >> > would depend on exactly what needs to be done. Interns will not have > >> > a background in the QEMU codebase and may not be able to make > >> > judgements about how to structure things, so I would be more careful > >> > about refactoring/cleanup projects. > >> > > >> > Please see my talk about QEMU GSoC for guidelines on project ideas: > >> > https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s > >> > http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf > >> > >> That helps a lot, thanks for that. > >> > >> So for a more concrete solution, how would adding support for multi > >> CPU support to the GDB server sound? > >> > >> This would allow GDB debugging for the A53 and the R5 on the Xilinx > >> ZynqMP for example. This is something we have in the Xilinx tree, but > >> it is in no state to go upstream and really needs to be re-write to be > >> upstreamable and more generic. > > > > Excellent. Then they'll already have an idea of "how" it can be > > achieved but have the freedom to write code that is most suitable for > > upstream. That is a good starting point for a project. > > > > Here is the project idea template: > > > > === TITLE === > > > > '''Summary:''' Short description of the project > > > > Detailed description of the project. > > > > '''Links:''' > > * Wiki links to relevant material > > * External links to mailing lists or web sites > > > > '''Details:''' > > * Skill level: beginner or intermediate or advanced > > * Language: C > > * Mentor: Email address and IRC nick > > * Suggested by: Person who suggested the idea > > > > Once you have written down the project idea, please post it under > > Internships/ProjectIdeas/MultiCPUGDBStub and then add it to the > > Google_Summer_of_Code_2018 wiki page using the > > "{{:Internships/ProjectIdeas/MultiCPUGDBStub}}" inlining syntax. > > > > Or if you prefer, just reply with the project idea to this email and > > I'll post it on the wiki for you. > > > > Can you think of a co-mentor who would be willing to participate? It > > makes internships easier when there are multiple mentors - less stress > > for mentors, faster communication for students. > > Yep, here is my proposal. I don't have wiki access, so I can't add it myself. > > I think Philippe would be a good co-mentor, if he is happy to. I am > also welcome to mentor other ideas, it doesn't have to be this one. Paolo and Peter, could you please review this project idea, mainly to see if this is likely to be mergeable (uncontroversial). Thanks! > === Multi-CPU cluster support for GDB server in QEMU === > > There are many examples in modern computing where multiple CPU > clusters are grouped together in a single SoC. This is common in the > ARM world especially. There are numerous examples such as ARM's > big.LITTLE implementations and Xilinx's 4xA53s and 2xR5s on the ZynqMP > SoC. The goal of this task is to add support to the GDB server to > allow users to debug across these clusters. > > This is another step towards single binary QEMU as well. > > Detailed description of the project. > > Xilinx has an out of tree implementation that can be used as a > starting point. Work will need to be done on top of this to prepare it > for upstream submission and to ensure the implementation is more > generic. > > This will mostly involve extending GDB server to tell GDB about > different architectures and then allow the user to swap between them. > > The Xilinx implementation can be seen here: > https://github.com/Xilinx/qemu/blob/master/gdbstub.c > There has been some steps in preparing the work to go upstream, which > can be seen here: > https://github.com/Xilinx/qemu/tree/mainline/alistair/gdb > > '''Details:''' > * Skill level: advanced > * Language: C > * Mentor: alistair23@gmail.com, Philippe? > * Suggested by: Alistair Francis > > > > > Stefan [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 455 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-02-20 10:36 ` Stefan Hajnoczi @ 2018-02-20 11:13 ` Paolo Bonzini 2018-02-21 1:19 ` Alistair Francis 2018-02-21 11:08 ` Stefan Hajnoczi 0 siblings, 2 replies; 15+ messages in thread From: Paolo Bonzini @ 2018-02-20 11:13 UTC (permalink / raw) To: Stefan Hajnoczi, Peter Maydell Cc: qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé, Philippe Mathieu-Daudé, Alistair Francis [-- Attachment #1: Type: text/plain, Size: 1403 bytes --] On 20/02/2018 11:36, Stefan Hajnoczi wrote: > === Multi-CPU cluster support for GDB server in QEMU === > > There are many examples in modern computing where multiple CPU > clusters are grouped together in a single SoC. This is common in the > ARM world especially. There are numerous examples such as ARM's > big.LITTLE implementations and Xilinx's 4xA53s and 2xR5s on the ZynqMP > SoC. The goal of this task is to add support to the GDB server to > allow users to debug across these clusters. > > This is another step towards single binary QEMU as well. > > Detailed description of the project. > > Xilinx has an out of tree implementation that can be used as a > starting point. Work will need to be done on top of this to prepare it > for upstream submission and to ensure the implementation is more > generic. > > This will mostly involve extending GDB server to tell GDB about > different architectures and then allow the user to swap between them. > > The Xilinx implementation can be seen here: > https://github.com/Xilinx/qemu/blob/master/gdbstub.c > There has been some steps in preparing the work to go upstream, which > can be seen here: > https://github.com/Xilinx/qemu/tree/mainline/alistair/gdb I agree this is interesting. Another related idea is to resume the multi-arch work that Peter Crosthwaite was working on before he left Xilinx. Paolo [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-02-20 11:13 ` Paolo Bonzini @ 2018-02-21 1:19 ` Alistair Francis 2018-02-21 11:08 ` Stefan Hajnoczi 1 sibling, 0 replies; 15+ messages in thread From: Alistair Francis @ 2018-02-21 1:19 UTC (permalink / raw) To: Paolo Bonzini Cc: Stefan Hajnoczi, Peter Maydell, qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé, Philippe Mathieu-Daudé On Tue, Feb 20, 2018 at 3:13 AM, Paolo Bonzini <pbonzini@redhat.com> wrote: > On 20/02/2018 11:36, Stefan Hajnoczi wrote: >> === Multi-CPU cluster support for GDB server in QEMU === >> >> There are many examples in modern computing where multiple CPU >> clusters are grouped together in a single SoC. This is common in the >> ARM world especially. There are numerous examples such as ARM's >> big.LITTLE implementations and Xilinx's 4xA53s and 2xR5s on the ZynqMP >> SoC. The goal of this task is to add support to the GDB server to >> allow users to debug across these clusters. >> >> This is another step towards single binary QEMU as well. >> >> Detailed description of the project. >> >> Xilinx has an out of tree implementation that can be used as a >> starting point. Work will need to be done on top of this to prepare it >> for upstream submission and to ensure the implementation is more >> generic. >> >> This will mostly involve extending GDB server to tell GDB about >> different architectures and then allow the user to swap between them. >> >> The Xilinx implementation can be seen here: >> https://github.com/Xilinx/qemu/blob/master/gdbstub.c >> There has been some steps in preparing the work to go upstream, which >> can be seen here: >> https://github.com/Xilinx/qemu/tree/mainline/alistair/gdb > > I agree this is interesting. Another related idea is to resume the > multi-arch work that Peter Crosthwaite was working on before he left Xilinx. That would be great! But it seems a little open ended for this type of thing. Someone doing that will need to touch a large amount of QEMU code. Alistair > > Paolo > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-02-20 11:13 ` Paolo Bonzini 2018-02-21 1:19 ` Alistair Francis @ 2018-02-21 11:08 ` Stefan Hajnoczi 1 sibling, 0 replies; 15+ messages in thread From: Stefan Hajnoczi @ 2018-02-21 11:08 UTC (permalink / raw) To: Paolo Bonzini Cc: Peter Maydell, qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé, Philippe Mathieu-Daudé, Alistair Francis On Tue, Feb 20, 2018 at 11:13 AM, Paolo Bonzini <pbonzini@redhat.com> wrote: > On 20/02/2018 11:36, Stefan Hajnoczi wrote: >> === Multi-CPU cluster support for GDB server in QEMU === >> >> There are many examples in modern computing where multiple CPU >> clusters are grouped together in a single SoC. This is common in the >> ARM world especially. There are numerous examples such as ARM's >> big.LITTLE implementations and Xilinx's 4xA53s and 2xR5s on the ZynqMP >> SoC. The goal of this task is to add support to the GDB server to >> allow users to debug across these clusters. >> >> This is another step towards single binary QEMU as well. >> >> Detailed description of the project. >> >> Xilinx has an out of tree implementation that can be used as a >> starting point. Work will need to be done on top of this to prepare it >> for upstream submission and to ensure the implementation is more >> generic. >> >> This will mostly involve extending GDB server to tell GDB about >> different architectures and then allow the user to swap between them. >> >> The Xilinx implementation can be seen here: >> https://github.com/Xilinx/qemu/blob/master/gdbstub.c >> There has been some steps in preparing the work to go upstream, which >> can be seen here: >> https://github.com/Xilinx/qemu/tree/mainline/alistair/gdb > > I agree this is interesting. Thanks! I have added it to the wiki: https://wiki.qemu.org/Google_Summer_of_Code_2018#Multi-CPU_cluster_support_for_GDB_server_in_QEMU Stefan ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-02-14 19:00 ` Alistair Francis 2018-02-20 10:36 ` Stefan Hajnoczi @ 2018-02-27 23:54 ` Philippe Mathieu-Daudé 2018-03-05 9:11 ` Stefan Hajnoczi 1 sibling, 1 reply; 15+ messages in thread From: Philippe Mathieu-Daudé @ 2018-02-27 23:54 UTC (permalink / raw) To: Alistair Francis, Stefan Hajnoczi Cc: qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé On 02/14/2018 04:00 PM, Alistair Francis wrote: > On Mon, Jan 15, 2018 at 4:59 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: >> On Thu, Jan 11, 2018 at 03:25:56PM -0800, Alistair Francis wrote: >>> On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: >>>> On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: >>>>> Can anyone who has done this before chime in. >>>>> >>>>> What do you think about getting someone to cleanup and improve the GDB >>>>> support in QEMU? Would that be the right difficulty of task for a GSoC >>>>> project? >>>> >>>> There is not enough information to give feedback on whether this >>>> project idea is suitable. What are the specific tasks you'd like the >>>> student to work on? >>>> >>>> In general, I'm sure there are well-defined 12-week project ideas >>>> around the GDB stub. New features are easy to propose and are usually >>>> well-defined (e.g. implement these commands that are documented in the >>>> GDB protocol documentation). Cleaning up code is less clear and it >>>> would depend on exactly what needs to be done. Interns will not have >>>> a background in the QEMU codebase and may not be able to make >>>> judgements about how to structure things, so I would be more careful >>>> about refactoring/cleanup projects. >>>> >>>> Please see my talk about QEMU GSoC for guidelines on project ideas: >>>> https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s >>>> http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf >>> >>> That helps a lot, thanks for that. >>> >>> So for a more concrete solution, how would adding support for multi >>> CPU support to the GDB server sound? >>> >>> This would allow GDB debugging for the A53 and the R5 on the Xilinx >>> ZynqMP for example. This is something we have in the Xilinx tree, but >>> it is in no state to go upstream and really needs to be re-write to be >>> upstreamable and more generic. >> >> Excellent. Then they'll already have an idea of "how" it can be >> achieved but have the freedom to write code that is most suitable for >> upstream. That is a good starting point for a project. >> >> Here is the project idea template: >> >> === TITLE === >> >> '''Summary:''' Short description of the project >> >> Detailed description of the project. >> >> '''Links:''' >> * Wiki links to relevant material >> * External links to mailing lists or web sites >> >> '''Details:''' >> * Skill level: beginner or intermediate or advanced >> * Language: C >> * Mentor: Email address and IRC nick >> * Suggested by: Person who suggested the idea >> >> Once you have written down the project idea, please post it under >> Internships/ProjectIdeas/MultiCPUGDBStub and then add it to the >> Google_Summer_of_Code_2018 wiki page using the >> "{{:Internships/ProjectIdeas/MultiCPUGDBStub}}" inlining syntax. >> >> Or if you prefer, just reply with the project idea to this email and >> I'll post it on the wiki for you. >> >> Can you think of a co-mentor who would be willing to participate? It >> makes internships easier when there are multiple mentors - less stress >> for mentors, faster communication for students. > > Yep, here is my proposal. I don't have wiki access, so I can't add it myself. > > I think Philippe would be a good co-mentor, if he is happy to. I am > also welcome to mentor other ideas, it doesn't have to be this one. I'm very happy to co-mentor with Alistair, I can manage at least 2h/w on it. > > === Multi-CPU cluster support for GDB server in QEMU === > > There are many examples in modern computing where multiple CPU > clusters are grouped together in a single SoC. This is common in the > ARM world especially. There are numerous examples such as ARM's > big.LITTLE implementations and Xilinx's 4xA53s and 2xR5s on the ZynqMP > SoC. The goal of this task is to add support to the GDB server to > allow users to debug across these clusters. > > This is another step towards single binary QEMU as well. > > Detailed description of the project. > > Xilinx has an out of tree implementation that can be used as a > starting point. Work will need to be done on top of this to prepare it > for upstream submission and to ensure the implementation is more > generic. > > This will mostly involve extending GDB server to tell GDB about > different architectures and then allow the user to swap between them. > > The Xilinx implementation can be seen here: > https://github.com/Xilinx/qemu/blob/master/gdbstub.c > There has been some steps in preparing the work to go upstream, which > can be seen here: > https://github.com/Xilinx/qemu/tree/mainline/alistair/gdb > > '''Details:''' > * Skill level: advanced > * Language: C > * Mentor: alistair23@gmail.com, Philippe? > * Suggested by: Alistair Francis > >> >> Stefan ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-02-27 23:54 ` Philippe Mathieu-Daudé @ 2018-03-05 9:11 ` Stefan Hajnoczi 0 siblings, 0 replies; 15+ messages in thread From: Stefan Hajnoczi @ 2018-03-05 9:11 UTC (permalink / raw) To: Philippe Mathieu-Daudé Cc: Alistair Francis, qemu-devel, kvm, Jailhouse, Philippe Mathieu-Daudé [-- Attachment #1: Type: text/plain, Size: 3923 bytes --] On Tue, Feb 27, 2018 at 08:54:11PM -0300, Philippe Mathieu-Daudé wrote: > On 02/14/2018 04:00 PM, Alistair Francis wrote: > > On Mon, Jan 15, 2018 at 4:59 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > >> On Thu, Jan 11, 2018 at 03:25:56PM -0800, Alistair Francis wrote: > >>> On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: > >>>> On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: > >>>>> Can anyone who has done this before chime in. > >>>>> > >>>>> What do you think about getting someone to cleanup and improve the GDB > >>>>> support in QEMU? Would that be the right difficulty of task for a GSoC > >>>>> project? > >>>> > >>>> There is not enough information to give feedback on whether this > >>>> project idea is suitable. What are the specific tasks you'd like the > >>>> student to work on? > >>>> > >>>> In general, I'm sure there are well-defined 12-week project ideas > >>>> around the GDB stub. New features are easy to propose and are usually > >>>> well-defined (e.g. implement these commands that are documented in the > >>>> GDB protocol documentation). Cleaning up code is less clear and it > >>>> would depend on exactly what needs to be done. Interns will not have > >>>> a background in the QEMU codebase and may not be able to make > >>>> judgements about how to structure things, so I would be more careful > >>>> about refactoring/cleanup projects. > >>>> > >>>> Please see my talk about QEMU GSoC for guidelines on project ideas: > >>>> https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s > >>>> http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf > >>> > >>> That helps a lot, thanks for that. > >>> > >>> So for a more concrete solution, how would adding support for multi > >>> CPU support to the GDB server sound? > >>> > >>> This would allow GDB debugging for the A53 and the R5 on the Xilinx > >>> ZynqMP for example. This is something we have in the Xilinx tree, but > >>> it is in no state to go upstream and really needs to be re-write to be > >>> upstreamable and more generic. > >> > >> Excellent. Then they'll already have an idea of "how" it can be > >> achieved but have the freedom to write code that is most suitable for > >> upstream. That is a good starting point for a project. > >> > >> Here is the project idea template: > >> > >> === TITLE === > >> > >> '''Summary:''' Short description of the project > >> > >> Detailed description of the project. > >> > >> '''Links:''' > >> * Wiki links to relevant material > >> * External links to mailing lists or web sites > >> > >> '''Details:''' > >> * Skill level: beginner or intermediate or advanced > >> * Language: C > >> * Mentor: Email address and IRC nick > >> * Suggested by: Person who suggested the idea > >> > >> Once you have written down the project idea, please post it under > >> Internships/ProjectIdeas/MultiCPUGDBStub and then add it to the > >> Google_Summer_of_Code_2018 wiki page using the > >> "{{:Internships/ProjectIdeas/MultiCPUGDBStub}}" inlining syntax. > >> > >> Or if you prefer, just reply with the project idea to this email and > >> I'll post it on the wiki for you. > >> > >> Can you think of a co-mentor who would be willing to participate? It > >> makes internships easier when there are multiple mentors - less stress > >> for mentors, faster communication for students. > > > > Yep, here is my proposal. I don't have wiki access, so I can't add it myself. > > > > I think Philippe would be a good co-mentor, if he is happy to. I am > > also welcome to mentor other ideas, it doesn't have to be this one. > > I'm very happy to co-mentor with Alistair, I can manage at least 2h/w on it. I've added you to the wiki page. BTW, if you and Alistair don't have wiki accounts yet, let me know and I'll set it up for you. Stefan [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 455 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-11 23:25 ` Alistair Francis 2018-01-15 12:59 ` Stefan Hajnoczi @ 2018-01-18 16:49 ` David Hildenbrand 2018-01-24 0:39 ` Alistair Francis 1 sibling, 1 reply; 15+ messages in thread From: David Hildenbrand @ 2018-01-18 16:49 UTC (permalink / raw) To: Alistair Francis, Stefan Hajnoczi; +Cc: qemu-devel, kvm, Jailhouse On 12.01.2018 00:25, Alistair Francis wrote: > On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: >> On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: >>> Can anyone who has done this before chime in. >>> >>> What do you think about getting someone to cleanup and improve the GDB >>> support in QEMU? Would that be the right difficulty of task for a GSoC >>> project? Don't understand that sentence. We already support multiple CPUs (represented and switchable just like threads in GDB), no? An interesting thing to look at could be tracepoint support in GDB. >> >> There is not enough information to give feedback on whether this >> project idea is suitable. What are the specific tasks you'd like the >> student to work on? >> >> In general, I'm sure there are well-defined 12-week project ideas >> around the GDB stub. New features are easy to propose and are usually >> well-defined (e.g. implement these commands that are documented in the >> GDB protocol documentation). Cleaning up code is less clear and it >> would depend on exactly what needs to be done. Interns will not have >> a background in the QEMU codebase and may not be able to make >> judgements about how to structure things, so I would be more careful >> about refactoring/cleanup projects. >> >> Please see my talk about QEMU GSoC for guidelines on project ideas: >> https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s >> http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf > > That helps a lot, thanks for that. > > So for a more concrete solution, how would adding support for multi > CPU support to the GDB server sound? > > This would allow GDB debugging for the A53 and the R5 on the Xilinx > ZynqMP for example. This is something we have in the Xilinx tree, but > it is in no state to go upstream and really needs to be re-write to be > upstreamable and more generic. > > Alistair > >> >> Hope this helps, >> Stefan -- Thanks, David / dhildenb ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas 2018-01-18 16:49 ` David Hildenbrand @ 2018-01-24 0:39 ` Alistair Francis 0 siblings, 0 replies; 15+ messages in thread From: Alistair Francis @ 2018-01-24 0:39 UTC (permalink / raw) To: David Hildenbrand; +Cc: Stefan Hajnoczi, qemu-devel, kvm, Jailhouse On Thu, Jan 18, 2018 at 8:49 AM, David Hildenbrand <david@redhat.com> wrote: > On 12.01.2018 00:25, Alistair Francis wrote: >> On Wed, Jan 10, 2018 at 4:52 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote: >>> On Tue, Jan 9, 2018 at 9:45 PM, Alistair Francis <alistair23@gmail.com> wrote: >>>> Can anyone who has done this before chime in. >>>> >>>> What do you think about getting someone to cleanup and improve the GDB >>>> support in QEMU? Would that be the right difficulty of task for a GSoC >>>> project? > > Don't understand that sentence. We already support multiple CPUs > (represented and switchable just like threads in GDB), no? We support multiple of the same CPU, such as multiple cores. What we don't support is multiple of different types of CPUs. Something like ARMs bit.LITTLE or Xilinx's 4xA53s and 2xR5s. Alistair > > An interesting thing to look at could be tracepoint support in GDB. > >>> >>> There is not enough information to give feedback on whether this >>> project idea is suitable. What are the specific tasks you'd like the >>> student to work on? >>> >>> In general, I'm sure there are well-defined 12-week project ideas >>> around the GDB stub. New features are easy to propose and are usually >>> well-defined (e.g. implement these commands that are documented in the >>> GDB protocol documentation). Cleaning up code is less clear and it >>> would depend on exactly what needs to be done. Interns will not have >>> a background in the QEMU codebase and may not be able to make >>> judgements about how to structure things, so I would be more careful >>> about refactoring/cleanup projects. >>> >>> Please see my talk about QEMU GSoC for guidelines on project ideas: >>> https://www.youtube.com/watch?v=xNVCX7YMUL8&t=19m11s >>> http://vmsplice.net/~stefan/stefanha-kvm-forum-2016.pdf >> >> That helps a lot, thanks for that. >> >> So for a more concrete solution, how would adding support for multi >> CPU support to the GDB server sound? >> >> This would allow GDB debugging for the A53 and the R5 on the Xilinx >> ZynqMP for example. This is something we have in the Xilinx tree, but >> it is in no state to go upstream and really needs to be re-write to be >> upstreamable and more generic. >> >> Alistair >> >>> >>> Hope this helps, >>> Stefan > > > -- > > Thanks, > > David / dhildenb ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2018-03-05 9:11 UTC | newest] Thread overview: 15+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-01-02 20:23 [Qemu-devel] Call for GSoC & Outreachy 2018 mentors & project ideas Stefan Hajnoczi 2018-01-09 21:45 ` Alistair Francis 2018-01-10 1:58 ` Fam Zheng 2018-01-10 12:52 ` Stefan Hajnoczi 2018-01-11 23:25 ` Alistair Francis 2018-01-15 12:59 ` Stefan Hajnoczi 2018-02-14 19:00 ` Alistair Francis 2018-02-20 10:36 ` Stefan Hajnoczi 2018-02-20 11:13 ` Paolo Bonzini 2018-02-21 1:19 ` Alistair Francis 2018-02-21 11:08 ` Stefan Hajnoczi 2018-02-27 23:54 ` Philippe Mathieu-Daudé 2018-03-05 9:11 ` Stefan Hajnoczi 2018-01-18 16:49 ` David Hildenbrand 2018-01-24 0:39 ` Alistair Francis
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).