diff mbox series

[qemu-web,RFC] Add GSoC/Outreachy 2018 retrospective blog post

Message ID 20190103153320.21687-1-stefanha@redhat.com
State New
Headers show
Series [qemu-web,RFC] Add GSoC/Outreachy 2018 retrospective blog post | expand

Commit Message

Stefan Hajnoczi Jan. 3, 2019, 3:33 p.m. UTC
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
Dear mentors,
Let's post an overview of what was achieved in GSoC/Outreachy 2018.  I
have populated a blog post with information available to me, but I'm
sure it can be improved to explain how the project went and the current
status.

Please let me know what should be changed, thanks!
---
 _posts/2019-01-03-internships-wrapup.md | 61 +++++++++++++++++++++++++
 1 file changed, 61 insertions(+)
 create mode 100644 _posts/2019-01-03-internships-wrapup.md

Comments

Paolo Bonzini Jan. 23, 2019, 2:50 p.m. UTC | #1
On 03/01/19 16:33, Stefan Hajnoczi wrote:
> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> ---
> Dear mentors,
> Let's post an overview of what was achieved in GSoC/Outreachy 2018.  I
> have populated a blog post with information available to me, but I'm
> sure it can be improved to explain how the project went and the current
> status.
> 
> Please let me know what should be changed, thanks!
> ---
>  _posts/2019-01-03-internships-wrapup.md | 61 +++++++++++++++++++++++++
>  1 file changed, 61 insertions(+)
>  create mode 100644 _posts/2019-01-03-internships-wrapup.md
> 
> diff --git a/_posts/2019-01-03-internships-wrapup.md b/_posts/2019-01-03-internships-wrapup.md
> new file mode 100644
> index 0000000..ec245e6
> --- /dev/null
> +++ b/_posts/2019-01-03-internships-wrapup.md
> @@ -0,0 +1,61 @@
> +---
> +layout: post
> +title:  "GSoC and Outreachy 2018 retrospective"
> +date:   2019-01-03 07:50:00 +0100
> +categories: [gsoc, outreachy, internships]
> +---
> +QEMU participates in open source internship programs including Google Summer of
> +Code (GSoC) and Outreachy.  These full-time remote work opportunities allow
> +talented new developers to get involved in our community.  This post highlights
> +what our interns achieved in 2018.
> +
> +## micro:bit board emulation
> +
> +Julia Suvorova (Outreachy) and Steffen Görtz (GSoC) tackled adding emulation
> +support for the [micro:bit ARM board](https://microbit.org/).  Although QEMU
> +already has plenty of ARM emulation code, the Cortex-M0 CPU used in the
> +micro:bit was not yet implemented and the nRF51 system-on-chip was also
> +missing.
> +
> +The goal of this project was to run micro:bit programs (usually created with
> +the [MicroPython](https://python.microbit.org/v/1.1) or
> +[Javascript/Blocks](https://makecode.microbit.org/) IDEs) with a core set of
> +emulated devices, including the serial port, pushbuttons, and LEDs.
> +
> +QEMU 3.1 already shipped the groundwork for the new `qemu-system-arm -M
> +microbit` machine type.  Enough functionality to run basic micro:bit programs
> +is expected in the next QEMU release.
> +
> +## Patchew REST API improvements
> +
> +Shubham Jain (GSoC) created a REST API for the Patchew continuous integration
> +system that is at the heart of QEMU's development process.  The previous API
> +was not RESTful and exposed database schema internals.

The improvements to the REST API have been included into Patchew and are
deployed on http://patchew.org/.  They are not in use yet, pending more
work on authentication; this may be the topic of a future Summer of Code
internship.

> +## Qtest Driver Framework
> +
> +Emanuele Esposito (GSoC) enhanced QEMU's test infrastructure with an engine
> +that starts tests with all variants of devices that they are capable of
> +driving.
> +
> +This is a complicated task in QEMU since certain devices and busses are
> +available in an architecture-specific way on each emulation target, making it
> +hard to write test cases without lots of hardcoded dependencies - and to keep
> +them up-to-date!
> +
> +The qgraph framework that Emanuele created eliminates the need to hardcode each
> +variant into the test.

Emanuele also converted several existing tests.  His framework was also
presented at KVM Forum 2019 by Laurent Vivier, Emanuele's mentor,  and
should be merged in 4.0.

Paolo
Stefan Hajnoczi Jan. 23, 2019, 4:53 p.m. UTC | #2
On Wed, Jan 23, 2019 at 03:50:05PM +0100, Paolo Bonzini wrote:
> On 03/01/19 16:33, Stefan Hajnoczi wrote:
> > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> > ---
> > Dear mentors,
> > Let's post an overview of what was achieved in GSoC/Outreachy 2018.  I
> > have populated a blog post with information available to me, but I'm
> > sure it can be improved to explain how the project went and the current
> > status.
> > 
> > Please let me know what should be changed, thanks!
> > ---
> >  _posts/2019-01-03-internships-wrapup.md | 61 +++++++++++++++++++++++++
> >  1 file changed, 61 insertions(+)
> >  create mode 100644 _posts/2019-01-03-internships-wrapup.md
> > 
> > diff --git a/_posts/2019-01-03-internships-wrapup.md b/_posts/2019-01-03-internships-wrapup.md
> > new file mode 100644
> > index 0000000..ec245e6
> > --- /dev/null
> > +++ b/_posts/2019-01-03-internships-wrapup.md
> > @@ -0,0 +1,61 @@
> > +---
> > +layout: post
> > +title:  "GSoC and Outreachy 2018 retrospective"
> > +date:   2019-01-03 07:50:00 +0100
> > +categories: [gsoc, outreachy, internships]
> > +---
> > +QEMU participates in open source internship programs including Google Summer of
> > +Code (GSoC) and Outreachy.  These full-time remote work opportunities allow
> > +talented new developers to get involved in our community.  This post highlights
> > +what our interns achieved in 2018.
> > +
> > +## micro:bit board emulation
> > +
> > +Julia Suvorova (Outreachy) and Steffen Görtz (GSoC) tackled adding emulation
> > +support for the [micro:bit ARM board](https://microbit.org/).  Although QEMU
> > +already has plenty of ARM emulation code, the Cortex-M0 CPU used in the
> > +micro:bit was not yet implemented and the nRF51 system-on-chip was also
> > +missing.
> > +
> > +The goal of this project was to run micro:bit programs (usually created with
> > +the [MicroPython](https://python.microbit.org/v/1.1) or
> > +[Javascript/Blocks](https://makecode.microbit.org/) IDEs) with a core set of
> > +emulated devices, including the serial port, pushbuttons, and LEDs.
> > +
> > +QEMU 3.1 already shipped the groundwork for the new `qemu-system-arm -M
> > +microbit` machine type.  Enough functionality to run basic micro:bit programs
> > +is expected in the next QEMU release.
> > +
> > +## Patchew REST API improvements
> > +
> > +Shubham Jain (GSoC) created a REST API for the Patchew continuous integration
> > +system that is at the heart of QEMU's development process.  The previous API
> > +was not RESTful and exposed database schema internals.
> 
> The improvements to the REST API have been included into Patchew and are
> deployed on http://patchew.org/.  They are not in use yet, pending more
> work on authentication; this may be the topic of a future Summer of Code
> internship.
> 
> > +## Qtest Driver Framework
> > +
> > +Emanuele Esposito (GSoC) enhanced QEMU's test infrastructure with an engine
> > +that starts tests with all variants of devices that they are capable of
> > +driving.
> > +
> > +This is a complicated task in QEMU since certain devices and busses are
> > +available in an architecture-specific way on each emulation target, making it
> > +hard to write test cases without lots of hardcoded dependencies - and to keep
> > +them up-to-date!
> > +
> > +The qgraph framework that Emanuele created eliminates the need to hardcode each
> > +variant into the test.
> 
> Emanuele also converted several existing tests.  His framework was also
> presented at KVM Forum 2019 by Laurent Vivier, Emanuele's mentor,  and
> should be merged in 4.0.

Thank you, I have included your feedback in v2.

Stefan
diff mbox series

Patch

diff --git a/_posts/2019-01-03-internships-wrapup.md b/_posts/2019-01-03-internships-wrapup.md
new file mode 100644
index 0000000..ec245e6
--- /dev/null
+++ b/_posts/2019-01-03-internships-wrapup.md
@@ -0,0 +1,61 @@ 
+---
+layout: post
+title:  "GSoC and Outreachy 2018 retrospective"
+date:   2019-01-03 07:50:00 +0100
+categories: [gsoc, outreachy, internships]
+---
+QEMU participates in open source internship programs including Google Summer of
+Code (GSoC) and Outreachy.  These full-time remote work opportunities allow
+talented new developers to get involved in our community.  This post highlights
+what our interns achieved in 2018.
+
+## micro:bit board emulation
+
+Julia Suvorova (Outreachy) and Steffen Görtz (GSoC) tackled adding emulation
+support for the [micro:bit ARM board](https://microbit.org/).  Although QEMU
+already has plenty of ARM emulation code, the Cortex-M0 CPU used in the
+micro:bit was not yet implemented and the nRF51 system-on-chip was also
+missing.
+
+The goal of this project was to run micro:bit programs (usually created with
+the [MicroPython](https://python.microbit.org/v/1.1) or
+[Javascript/Blocks](https://makecode.microbit.org/) IDEs) with a core set of
+emulated devices, including the serial port, pushbuttons, and LEDs.
+
+QEMU 3.1 already shipped the groundwork for the new `qemu-system-arm -M
+microbit` machine type.  Enough functionality to run basic micro:bit programs
+is expected in the next QEMU release.
+
+## Patchew REST API improvements
+
+Shubham Jain (GSoC) created a REST API for the Patchew continuous integration
+system that is at the heart of QEMU's development process.  The previous API
+was not RESTful and exposed database schema internals.
+
+## Qtest Driver Framework
+
+Emanuele Esposito (GSoC) enhanced QEMU's test infrastructure with an engine
+that starts tests with all variants of devices that they are capable of
+driving.
+
+This is a complicated task in QEMU since certain devices and busses are
+available in an architecture-specific way on each emulation target, making it
+hard to write test cases without lots of hardcoded dependencies - and to keep
+them up-to-date!
+
+The qgraph framework that Emanuele created eliminates the need to hardcode each
+variant into the test.
+
+## Vulkan-izing VirGL
+
+Nathan Gauër (GSoC) improved VirGL, which provides an OpenGL path well
+supported on Linux guests. On the host, QEMU offers several console back-ends,
+from EGL to SDL. Adding a Vulkan path will require to change the current VirGL
+API, write new guest drivers, and also offer a way to display the output. This
+is a huge task, which can be split in several sub-projects. Expending the
+current VirGL API to support Vulkan is the first step.
+
+## Stay tuned for 2019 internships!
+
+QEMU will apply to Google Summer of Code and Outreachy again in 2019.  We hope
+to offer more great open source internship opportunities for new developers.