From mboxrd@z Thu Jan 1 00:00:00 1970 From: Methuku Karthik Subject: Re: [GSoc] GSoc Introduction : Xen on ARM: create multiple guests from device tree Date: Mon, 3 Apr 2017 15:56:22 -0400 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4194606917976291639==" Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cv85a-0002k0-4e for xen-devel@lists.xenproject.org; Mon, 03 Apr 2017 19:56:35 +0000 Received: by mail-qk0-f180.google.com with SMTP id p22so124418321qka.3 for ; Mon, 03 Apr 2017 12:56:24 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Stefano Stabellini Cc: wei.liu2@citrix.com, Lars.kurt@citrix.com, andrew.cooper3@citrix.com, Dario.faggioli@citrix.com, Stefano Stabellini , julien.grall@arm.com, Meng Xu , xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org --===============4194606917976291639== Content-Type: multipart/alternative; boundary=001a11498ea2bec1cf054c488d34 --001a11498ea2bec1cf054c488d34 Content-Type: text/plain; charset=UTF-8 Hi Stefano, I have asked questions in inline. Clarification below questions would really help me in contribution. Please look into the questions. I am highlighting them in this mail. For example, Dom1 should be able to share a page with Dom2 and a different page with Dom3. It needs to be clear which page is shared with which VM from the VM config files. when we create vms using xl create , for example if i am planning create three VMs, Dom1, Dom2 and Dom3, because of the page sharing are we imposing any order of creating VMs. I am asking this question to clarify this point, while creation of Dom1 if its sharing pages with Dom 2 and Dom 3 , should Xen already be aware of Dom2 and Dom3? I am referring to following links to understand about mem sharing. http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=tools/ tests/mem-sharing/memshrtoo l.c;h=8e5e22b9e95d91f1441d8eb226b64852eca075d5;hb=HEAD http://xenbits.xen.org/docs/unstable/misc/grant-tables.txt I also want to figure out how domains are created and how xl tool parses the file and passes on the information to domain creation . Let me know if i am thinking in right direction. suggest any resource or work which would help with designing config file options. I will start with Xen-38 that would help me in exploring init code. Correct me if i am wrong. I have a few questions and clarifications before proceeding further. I have checked how config.gz file is generated in linux kernel source. In linux kernel sources, if CONFIG_IKCONFIG_PROC option is set, .conifg file which is generated after choosing options with lets say from make menuconfig is read into a variable, this way its part of build. during init time proc_create service is used to create this file config.gz. http://lxr.free-electrons.com/source/kernel/configs.c I guess i have to do something similar. Questions : 1. When Xen is build using the make command, we effectively set XEN_COMPILE_ARCH, XEN_OS, XEN_TARGET which allow using corresponding .mk file from config folder. These variable in turn decide what are the config options. I wasnt able to find any .config. Please direct me to find the file or if i am missing something. 2. Where and how this config file should be accessible to User once in Dom0. Is the xen folder created to keep the information about guest domains like proc for process in linux kernel ? Will that be suitable location to have config file. 3. if i assume that i will approach similarly, i have to add services to be called during init stage. As am not acquainted with code base, i could just grep with _start or _init or similar strings to find out initialization code. Any input(function name or filename) to look for will be of great help. On Mon, Apr 3, 2017 at 3:35 PM, Stefano Stabellini wrote: > Thank you! I am looking forward to your contribution on the list! If you > encounter any issues, please let us know. > > The code contribution is more important, but if you find the time in the > next few days, it would be nice to add more details to the > implementation plan, such as where the memory gets allocated, whether it > is taken from a VM, and if so, which one. Also what kind of "token" > could be used in the config option and how the toolstack could keep > track of the token - memory page references. > > Thanks, > > Stefano > > On Mon, 3 Apr 2017, Methuku Karthik wrote: > > Hi Stefano, > > > > Thanks for Input. I was not able to spend enough time last couple of > weeks due to > > projects. I have received mail from Lars Kurt explaining submission of > draft > > proposal and possibility to work on micro tasks. > > > > I have created a draft proposal from with your inputs and what i learnt > about > > sharing pages and memory management in Xen, please access it from here > > > > https://docs.google.com/document/d/1xLmR7x4yfCbRgpuefZQNhZ4lAu- > 6slW0oXPmjnxcnz0/edi > > t#heading=h.1yvc35w6t3fu > > > > I haven't written anything about maintenance. I have included some links > i thought > > will be helpful under references and referenced wherever applicable. > > > > Please suggest comments and inputs. > > > > On Tue, Mar 28, 2017 at 8:12 PM, Stefano Stabellini < > sstabellini@kernel.org> wrote: > > > CC'ing a couple of maintainers that might have more insights on this > > > project. > > > > > > On Tue, 28 Mar 2017, Stefano Stabellini wrote: > > >> On Tue, 28 Mar 2017, Methuku Karthik wrote: > > >> > Hi Stefano, > > >> > > > >> > Kindly suggest me reading material that could help me understand and > > >> > come up with the proposal. > > >> > > >> Sure! For the "Xen on ARM: create multiple guests from device tree" > > >> project, the idea is that on many embedded systems the user knows how > > >> many guests to create beforehand, and usually it is a small number, > like > > >> 2 or 3. Often these guests don't even have any PV frontends, but just > a > > >> set of devices assigned to them. An example could be an extremely > simple > > >> guest that only accesses one physical device (which is assigned to it > at > > >> boot) and prints messages using the debug hypercalls (see > > >> xen/arch/arm/traps.c:do_debug_trap). > > >> > > >> In this scenario, there is no need to wait for Dom0 to boot to create > > >> this second guest (I'll call it Dom1, to distinguish it from Dom0). > Xen > > >> could actually create it directly by itself, the same way it starts > Dom0 > > >> (see xen/arch/arm/domain_build.c:construct_dom0 and > > >> docs/misc/arm/device-tree/booting.txt). > > >> > > >> The project is about extending the existing device interface to pass > an > > >> additional kernel, initrd, command line arguments for the second > virtual > > >> machine. It would also need to include which devices should be > assigned > > >> to it. In response, Xen should build the second VM the same way it > would > > >> do normally when done via the toolstack (xl/libxl), but it would > happen > > >> at boot time, before Dom0 is fully up and running. > > >> > > >> > > >> > > >> For the "Share a page in memory from the VM config file" project, > > > > > > Ops, I forgot to add this description :-) > > > > > > I was saying, for the "Share a page in memory from the VM config file" > > > project, the idea is that we want to share a page in memory between two > > > VMs just by adding one line to their VM config files. They should be > > > able to communicate with each others straight away by writing at the > > > right address in memory. That way, even small embedded systems with no > > > xenstore support can still setup a communication channel with each > > > others. > > > > > > Fundamentally, it just requires the xl/libxl toolstack (see tools/xl > and > > > tools/libxl) to parse a new VM config file option, and in response > share > > > a page at the specified address, or map a page at a specified address. > > > If the memory address is wrong, the toolstack needs to be able to > handle > > > the failure. Sharing pages and mapping pages in xl/libxl is easy; the > > > difficulty of the project is coming up with the right parameter in the > > > VM config file so that multiple VMs can share different pages with each > > > others. It probably requires the introduction of a "token" to identify > > > the page you want to share across multiple VM config files. > > > > > > For example, Dom1 should be able to share a page with Dom2 and a > > > different page with Dom3. It needs to be clear which page is shared > with > > > which VM from the VM config files. > > > > > when we create vms using xl create , for example if i am planning create > three VMs, > > > > Dom1, Dom2 and Dom3, because of the page sharing are we imposing any > order of > > creating VMs. > > > > I am asking this question to clarify this point, while creation of Dom1 > if its > > sharing pages with Dom 2 and Dom 3 , should Xen already be aware of Dom2 > and Dom3? > > > > I am referring to following links to understand about mem sharing. > > > > http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=tools/ > tests/mem-sharing/memshrtoo > > l.c;h=8e5e22b9e95d91f1441d8eb226b64852eca075d5;hb=HEAD > > http://xenbits.xen.org/docs/unstable/misc/grant-tables.txt > > > > I also want to figure out how domains are created and how xl tool parses > the file > > and passes on the information to domain creation . Let me know if i am > thinking in > > right direction. > > > > suggest any resource or work which would help with designing config file > options. > > > > > > > > > > >> > On Tue, Mar 28, 2017 at 1:38 PM, Stefano Stabellini > > >> > wrote: > > >> > > I would also like to take the opportunity to remind you of the > upcoming > > >> > > deadline for applications submissions, which is the 3rd of April > for > > >> > > GSoC, see: > > >> > > > > >> > > http://marc.info/?l=xen-devel&m=149071502330534 > > >> > > > > >> > > The GSoC application system is > > >> > > https://summerofcode.withgoogle.com/get-started/. > > >> > > > > >> > > Please give a look at the Xen Project application template here: > > >> > > > > >> > > https://wiki.xenproject.org/wiki/GSoC_Student_Application_ > Template > > >> > > > > >> > > It also includes an "Implementation Plan", where you have the > chance to > > >> > > explain the implementation plan for the projects you would like > to apply > > >> > > for. You can apply for more than one project if you want to. > > >> > > > >> > Thanks for the reminder Stefano. I will post some questions about my > > >> > implementation plan. > > >> > > > >> > I would like to spend my time fixing the bug but as deadline is > > >> > approaching , I would like to know the bare essential expected in > the > > >> > proposal? > > >> > > >> It needs to include the basic milestones and how long you estimate it > is > > >> going to take to complete each of them. More details you add, more > > >> you'll show your understanding of the problem. > > >> > > >> > > >> > > > > >> > > Thanks, > > >> > > > > >> > > Stefano > > >> > > > > >> > > > > >> > > On Mon, 27 Mar 2017, Stefano Stabellini wrote: > > >> > >> Hello Methuku, > > >> > >> > > >> > >> It is great to hear that you are interested in working on Xen on > ARM. > > >> > >> It's good that you already know how to build and install Xen on > an ARM > > >> > >> board. > > >> > >> > > >> > >> Do you have serial access to your Nvidia Jetson TK1? If not, I > would > > >> > >> suggest to setup another test environment based on a different > board, or > > >> > >> simply use the ARM Foundation Platform which is a free (as in > beer) > > >> > >> software emulator. > > >> > >> > > >> > >> In terms of bug fixes, you could give a look at > > >> > >> > > >> > >> https://xenproject.atlassian.net/projects/XEN/issues > > >> > >> > > >> > >> Most of the items listed are large projects, but some of them > are pretty > > >> > >> small, small enough to be a starting point. For example XEN-29 > (Add > > >> > >> -fstack-protector support to the hypervisor), XEN-30 (Make > out-of-tree > > >> > >> builds work) or XEN-38 (Xen - Embed .config in Xen binary). > > >> > > > >> > I started working on XEN-38 for now. But i am also interested to > look > > >> > into XEN-30. > > >> > > >> Be careful that XEN-30 is longer than it looks because there are lots > of > > >> Makefiles to fix. However, even if you don't convert all Makefiles to > > >> support out-of-tree builds but only some, it would still be OK. > > > > I will start with Xen-38 that would help me in exploring init code. > Correct me if i > > am wrong. > > > > I have a few questions and clarifications before proceeding further. I > have checked > > how config.gz file is generated in linux kernel source. > > In linux kernel sources, if CONFIG_IKCONFIG_PROC option is set, .conifg > file which > > is generated after choosing options with lets say from make menuconfig > is read into > > a variable, this way its part of build. > > > > during init time proc_create service is used to create this file > config.gz. > > http://lxr.free-electrons.com/source/kernel/configs.c > > > > > > I guess i have to do something similar. > > > > Questions : > > > > 1. When Xen is build using the make command, we effectively set > XEN_COMPILE_ARCH, > > XEN_OS, XEN_TARGET which allow using corresponding .mk file from config > folder. > > These variable in turn decide what are the config options. I wasnt able > to find any > > .config. Please direct me to find the file or if i am missing something. > > > > 2. Where and how this config file should be accessible to User once in > Dom0. Is the > > xen folder created to keep the information about guest domains like proc > for process > > in linux kernel ? Will that be suitable location to have config file. > > > > 3. if i assume that i will approach similarly, i have to add services to > be called > > during init stage. As am not acquainted with code base, i could just > grep with > > _start or _init or similar strings to find out initialization code. Any > > input(function name or filename) to look for will be of great help. > > > > Best, > > Karthik. > > > > >> > > >> > > >> > >> Cheers, > > >> > >> > > >> > >> Stefano > > >> > >> > > >> > >> > > >> > >> On Mon, 27 Mar 2017, Methuku Karthik wrote: > > >> > >> > Hi Everyone, > > >> > >> > > > >> > >> > My name is Karthik. I am a first year graduate student in > Embedded Systems > > at University of Pennsylvania. I am avid c, c++ and python programmer.I > have 4 years > > of > > >> > >> > work experience as Embedded Software developer at Airbus. > > >> > >> > > > >> > >> > For the last four months I have been working as a research > assistant in > > PRECISE lab at the University of Pennsylvania, helping Meng Xu (cc.ed) > to evaluate > > the > > >> > >> > performance of the Xen's RTDS scheduler. > > >> > >> > > > >> > >> > I'm interested in the following two projects. I'm happy to > work on one of > > them. > > >> > >> > (1) Share a page in memory from the VM config file. > > >> > >> > (2) Xen on ARM: create multiple guests from device tree. > > >> > >> > > > >> > >> > I have experience in compiling Xen and installing it on ARM > board(Nvidia > > Jetson TK1). I'm also well equiped in using the xl tool to manage the > VMs. > > >> > >> > > > >> > >> > I noticed that I should contribute some bug fixes to be able > to get the > > ticket to the Xen GSoC. > > >> > >> > Do you have some suggestions on how I should start? > > >> > >> > Do you have a list of simple bugs that I can fix? > > >> > >> > > > >> > >> > I'm very interested in the Xen Project. I want to become a Xen > contributor > > in the near future. > > >> > >> > > > >> > >> > Thank you very much for your help! > > >> > >> > > > >> > >> > Best, > > >> > >> > Karthik > > >> > >> > > > >> > >> > > > >> > > > >> > Best, > > >> > Karthik. > > >> > > > >> > > > > > > > --001a11498ea2bec1cf054c488d34 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Stefano,

I have asked questions in in= line.=20 Clarification below questions would really help me in contribution.=20 Please look into the questions. I am highlighting them in this mail.
=C2=A0For example, Dom1 should be able to share a page with Dom2 and a
= =C2=A0 different page with Dom3. It needs to be clear which page is shared with which VM from the VM config files.

=C2=A0when we create vms using xl create , for example if i am planning create t= hree VMs,

Dom1, Dom2 and Dom3, because of the page sharing are= we imposing any order of
=C2=A0 creating VMs.

=C2=A0 I am asking this question to clarify this point, while creation of Dom1 if = its
=C2=A0 sharing pages with Dom 2 and Dom 3 , should Xen already be aware of Dom2 an= d Dom3?

=C2=A0 I am referring to following links to understand about mem sharing.

= =C2=A0 http://xenb= its.xen.org/gitweb/?p=3Dxen.git;a=3Dblob;f=3Dtools/tests/mem-shar= ing/memshrtoo
=C2=A0 l.c;h=3D8e5e22b9e95d91f1441d8eb226b64852eca075d5;hb=3DHEAD
=C2= =A0 http://xenbits.xen.org/docs/unstable= /misc/grant-tables.txt

=C2=A0 I also want to figure out how domains are created and how xl tool parses th= e file
=C2=A0 and passes on the information to domain creation . Let me know if i am thin= king in
=C2=A0 right direction.

=C2=A0 suggest any resource or work which would help with designing config file op= tions.


=C2=A0I will start with Xen-38 that would help me in expl= oring init code. Correct me if i
=C2=A0 am wrong.

=C2=A0 I have a few questions and clarifications before proceeding further. I have= checked
=C2=A0 how config.gz file is generated in linux kernel source.
=C2=A0 In linux kernel sources, if CONFIG_IKCONFIG_PROC option is set, .conifg fil= e which
=C2=A0 is generated after choosing options with lets say from make menuconfig=C2= =A0 is read into
=C2=A0 a variable, this way its part of build.

=C2=A0 during init time proc_create service is used to create this file config.gz.=
=C2=A0 http://lxr.free-electrons.com/source/kerne= l/configs.c


=C2=A0 I guess i have to do something similar.

=C2=A0 Questions :

=C2=A0 1. When Xen is build using the make command, we effectively set XEN_COMPILE= _ARCH,
=C2=A0 XEN_OS, XEN_TARGET which allow using corresponding .mk file from config fol= der.
=C2=A0 These variable in turn decide what are the config options. I wasnt able to = find any
=C2=A0 .config. Please direct me to find the file or if i am missing something.=C2= =A0

=C2=A0 2. Where and how this config file should be accessible to=C2=A0 User once i= n Dom0. Is the
=C2=A0 xen folder created to keep the information about guest domains like proc fo= r process
=C2=A0 in linux kernel ? Will that be suitable location to have config file.
=C2=A0 3. if i assume that i will approach similarly, i have to add services to be= called
=C2=A0 during init stage. As am not acquainted with code base, i could just grep w= ith
=C2=A0 _start or _init or similar strings to find out initialization code. Any
= =C2=A0 input(function name or filename) to look for will be of great help.

On Mon, Apr 3, 2017= at 3:35 PM, Stefano Stabellini <sstabellini@kernel.org> wrote:
Thank you! I am looking forward = to your contribution on the list! If you
encounter any issues, please let us know.

The code contribution is more important, but if you find the time in the next few days, it would be nice to add more details to the
implementation plan, such as where the memory gets allocated, whether it is taken from a VM, and if so, which one. Also what kind of "token&quo= t;
could be used in the config option and how the toolstack could keep
track of the token - memory page references.

Thanks,

Stefano

On Mon, 3 Apr 2017, Methuku Karthik wrote:
> Hi Stefano,
>
> Thanks for Input. I was= not able to spend enough time last couple of weeks due to
> projects. I have received mail from Lars Kurt explaining submission of= draft
> proposal and possibility to work on micro tasks.
>
> I have created a draft proposal from with your inputs and what i learn= t about
> sharing pages and memory management in Xen, please access it from here=
>
> https://docs= .google.com/document/d/1xLmR7x4yfCbRgpuefZQNhZ4lAu-6slW0oXPm= jnxcnz0/edi
> t#heading=3Dh.1yvc35w6t3fu
>
> I haven't written anything about maintenance. I have included some= links i thought
> will be helpful under references and referenced wherever applicable. >
> Please suggest comments and inputs.
>
> On Tue, Mar 28, 2017 at 8:12 PM, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > CC'ing a couple of maintainers that might have more insights = on this
> > project.
> >
> > On Tue, 28 Mar 2017, Stefano Stabellini wrote:
> >> On Tue, 28 Mar 2017, Methuku Karthik wrote:
> >> > Hi Stefano,
> >> >
> >> > Kindly suggest me reading material that could help me un= derstand and
> >> > come up with the proposal.
> >>
> >> Sure! For the "Xen on ARM: create multiple guests from d= evice tree"
> >> project, the idea is that on many embedded systems the user k= nows how
> >> many guests to create beforehand, and usually it is a small n= umber, like
> >> 2 or 3. Often these guests don't even have any PV fronten= ds, but just a
> >> set of devices assigned to them. An example could be an extre= mely simple
> >> guest that only accesses one physical device (which is assign= ed to it at
> >> boot) and prints messages using the debug hypercalls (see
> >> xen/arch/arm/traps.c:do_debug_trap).
> >>
> >> In this scenario, there is no need to wait for Dom0 to boot t= o create
> >> this second guest (I'll call it Dom1, to distinguish it f= rom Dom0). Xen
> >> could actually create it directly by itself, the same way it = starts Dom0
> >> (see xen/arch/arm/domain_build.c:construct_dom0 and
> >> docs/misc/arm/device-tree/booting.txt).
> >>
> >> The project is about extending the existing device interface = to pass an
> >> additional kernel, initrd, command line arguments for the sec= ond virtual
> >> machine. It would also need to include which devices should b= e assigned
> >> to it. In response, Xen should build the second VM the same w= ay it would
> >> do normally when done via the toolstack (xl/libxl), but it wo= uld happen
> >> at boot time, before Dom0 is fully up and running.
> >>
> >>
> >>
> >> For the "Share a page in memory from the VM config file&= quot; project,
> >
> > Ops, I forgot to add this description :-)
> >
> > I was saying, for the "Share a page in memory from the VM co= nfig file"
> > project, the idea is that we want to share a page in memory betwe= en two
> > VMs just by adding one line to their VM config files. They should= be
> > able to communicate with each others straight away by writing at = the
> > right address in memory. That way, even small embedded systems wi= th no
> > xenstore support can still setup a communication channel with eac= h
> > others.
> >
> > Fundamentally, it just requires the xl/libxl toolstack (see tools= /xl and
> > tools/libxl) to parse a new VM config file option, and in respons= e share
> > a page at the specified address, or map a page at a specified add= ress.
> > If the memory address is wrong, the toolstack needs to be able to= handle
> > the failure. Sharing pages and mapping pages in xl/libxl is easy;= the
> > difficulty of the project is coming up with the right parameter i= n the
> > VM config file so that multiple VMs can share different pages wit= h each
> > others. It probably requires the introduction of a "token&qu= ot; to identify
> > the page you want to share across multiple VM config files.
> >
> > For example, Dom1 should be able to share a page with Dom2 and a<= br> > > different page with Dom3. It needs to be clear which page is shar= ed with
> > which VM from the VM config files.
> >
> when we create vms using xl create , for example if i am planning crea= te three VMs,
>
> Dom1, Dom2 and Dom3, because of the page sharing are we imposing any o= rder of
> creating VMs.
>
> I am asking this question to clarify this point, while creation of Dom= 1 if its
> sharing pages with Dom 2 and Dom 3 , should Xen already be aware of Do= m2 and Dom3?
>
> I am referring to following links to understand about mem sharing.
>
> http:/= /xenbits.xen.org/gitweb/?p=3Dxen.git;a=3Dblob;f=3Dtools/tests/mem= -sharing/memshrtoo
> l.c;h=3D8e5e22b9e95d91f1441d8eb226b64852eca075d5;hb=3DHEAD > http://xenbits.xen.org/docs/unst= able/misc/grant-tables.txt
>
> I also want to figure out how domains are created and how xl tool pars= es the file
> and passes on the information to domain creation . Let me know if i am= thinking in
> right direction.
>
> suggest any resource or work which would help with designing config fi= le options.
>
> >
> >
> >> > On Tue, Mar 28, 2017 at 1:38 PM, Stefano Stabellini
> >> > <sstabellin= i@kernel.org> wrote:
> >> > > I would also like to take the opportunity to remind= you of the upcoming
> >> > > deadline for applications submissions, which is the= 3rd of April for
> >> > > GSoC, see:
> >> > >
> >> > > http://marc.info/?l= =3Dxen-devel&m=3D149071502330534
> >> > >
> >> > > The GSoC application system is
> >> > > https://summerofcode.wi= thgoogle.com/get-started/.
> >> > >
> >> > > Please give a look at the Xen Project application t= emplate here:
> >> > >
> >> > > https://wi= ki.xenproject.org/wiki/GSoC_Student_Application_Template
> >> > >
> >> > > It also includes an "Implementation Plan"= , where you have the chance to
> >> > > explain the implementation plan for the projects yo= u would like to apply
> >> > > for. You can apply for more than one project if you= want to.
> >> >
> >> > Thanks for the reminder Stefano. I will post some questi= ons about my
> >> > implementation plan.
> >> >
> >> > I would like to spend my time fixing the bug but as dead= line is
> >> > approaching , I would like to know the bare essential ex= pected in the
> >> > proposal?
> >>
> >> It needs to include the basic milestones and how long you est= imate it is
> >> going to take to complete each of them. More details you add,= more
> >> you'll show your understanding of the problem.
> >>
> >>
> >> > >
> >> > > Thanks,
> >> > >
> >> > > Stefano
> >> > >
> >> > >
> >> > > On Mon, 27 Mar 2017, Stefano Stabellini wrote:
> >> > >> Hello Methuku,
> >> > >>
> >> > >> It is great to hear that you are interested in = working on Xen on ARM.
> >> > >> It's good that you already know how to buil= d and install Xen on an ARM
> >> > >> board.
> >> > >>
> >> > >> Do you have serial access to your Nvidia Jetson= TK1? If not, I would
> >> > >> suggest to setup another test environment based= on a different board, or
> >> > >> simply use the ARM Foundation Platform which is= a free (as in beer)
> >> > >> software emulator.
> >> > >>
> >> > >> In terms of bug fixes, you could give a look at=
> >> > >>
> >> > >> https://xenproject.a= tlassian.net/projects/XEN/issues
> >> > >>
> >> > >> Most of the items listed are large projects, bu= t some of them are pretty
> >> > >> small, small enough to be a starting point. For= example XEN-29 (Add
> >> > >> -fstack-protector support to the hypervisor), X= EN-30 (Make out-of-tree
> >> > >> builds work) or XEN-38 (Xen - Embed .config in = Xen binary).
> >> >
> >> > I =C2=A0started working on XEN-38 for now. But i am also= interested to look
> >> > into XEN-30.
> >>
> >> Be careful that XEN-30 is longer than it looks because there = are lots of
> >> Makefiles to fix. However, even if you don't convert all = Makefiles to
> >> support out-of-tree builds but only some, it would still be O= K.
>
> I will start with Xen-38 that would help me in exploring init code. Co= rrect me if i
> am wrong.
>
> I have a few questions and clarifications before proceeding further. I= have checked
> how config.gz file is generated in linux kernel source.
> In linux kernel sources, if CONFIG_IKCONFIG_PROC option is set, .conif= g file which
> is generated after choosing options with lets say from make menuconfig= =C2=A0 is read into
> a variable, this way its part of build.
>
> during init time proc_create service is used to create this file confi= g.gz.
> http://lxr.free-electrons.com/source= /kernel/configs.c
>
>
> I guess i have to do something similar.
>
> Questions :
>
> 1. When Xen is build using the make command, we effectively set XEN_CO= MPILE_ARCH,
> XEN_OS, XEN_TARGET which allow using corresponding .mk file from confi= g folder.
> These variable in turn decide what are the config options. I wasnt abl= e to find any
> .config. Please direct me to find the file or if i am missing somethin= g.=C2=A0
>
> 2. Where and how this config file should be accessible to=C2=A0 User o= nce in Dom0. Is the
> xen folder created to keep the information about guest domains like pr= oc for process
> in linux kernel ? Will that be suitable location to have config file.<= br> >
> 3. if i assume that i will approach similarly, i have to add services = to be called
> during init stage. As am not acquainted with code base, i could just g= rep with
> _start or _init or similar strings to find out initialization code. An= y
> input(function name or filename) to look for will be of great help. >
> Best,
> Karthik.
>
> >>
> >>
> >> > >> Cheers,
> >> > >>
> >> > >> Stefano
> >> > >>
> >> > >>
> >> > >> On Mon, 27 Mar 2017, Methuku Karthik wrote:
> >> > >> > Hi Everyone,
> >> > >> >
> >> > >> > My name is Karthik. I am a first year grad= uate student in Embedded Systems
> at University of Pennsylvania. I am avid c, c++ and python programmer.= I have 4 years
> of
> >> > >> > work experience as Embedded Software devel= oper at Airbus.
> >> > >> >
> >> > >> > For the last four months I have been worki= ng as a research assistant in
> PRECISE lab at the University of Pennsylvania, helping Meng Xu (cc.ed)= to evaluate
> the
> >> > >> > performance of the Xen's RTDS schedule= r.
> >> > >> >
> >> > >> > I'm interested in the following two pr= ojects. I'm happy to work on one of
> them.
> >> > >> > (1) Share a page in memory from the VM con= fig file.
> >> > >> > (2) =C2=A0Xen on ARM: create multiple gues= ts from device tree.
> >> > >> >
> >> > >> > I have experience in compiling Xen and ins= talling it on ARM board(Nvidia
> Jetson TK1). I'm also well equiped in using the xl tool to manage = the VMs.
> >> > >> >
> >> > >> > I noticed that I should contribute some bu= g fixes to be able to get the
> ticket to the Xen GSoC.
> >> > >> > Do you have some suggestions on how I shou= ld start?
> >> > >> > Do you have a list of simple bugs that I c= an fix?
> >> > >> >
> >> > >> > I'm very interested in the Xen Project= . I want to become a Xen contributor
> in the near future.
> >> > >> >
> >> > >> > Thank you very much for your help!
> >> > >> >
> >> > >> > Best,
> >> > >> > Karthik
> >> > >> >
> >> > >> >
> >> >
> >> > Best,
> >> > Karthik.
> >> >
> >>
>
>
>

--001a11498ea2bec1cf054c488d34-- --===============4194606917976291639== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============4194606917976291639==--