[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Golang design session follow-up


  • To: Nick Rosbrook <rosbrookn@xxxxxxxxx>
  • From: George Dunlap <George.Dunlap@xxxxxxxxxx>
  • Date: Fri, 28 Aug 2020 19:05:08 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3yXmty4NFq7o9Xb3HhKpjcU7r6FirXZHRF1eRd+XLtw=; b=JZJI4XQZ/IPz1pHbCtt2CWjWICzRbR1vLlw6hXaW3mNp1yvHFPeN6UkYmsIVpFRDwpA6mZff9qk8C9DqozEDTx9T0Hcie96tkc4gykFNSS1I7DCPdpKSx7oqyA1ZsBq4eYlTFOYw87CWZPW7UFO7T9+q3hlUsC1ryV+XDnU5I4rym5gROQucr8haK+zLJ2+ACV/UOR2DyRVknYTEjLiRtvpdscupDz8kcIKXAsRPRprDSRFxIk8fn23O4gFOgbwUL/aKpI1XMJgPeWV/P8k2PzppDPyQXFzkz+aft8P4nyn28waoUtAxGb/jT/QiXpYcXshObMSCWYiYbdHKDauQow==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RpOh3x1joJCE+VVRY7s1uiQnQA6wG0ZLW8sGLn6kveogG5kP+f2Wsd6fJA3NGimd4SNVvC9rBJ4xjiTk2nyE1BDw+pcSr6HUYEBmJieWYNFiIpo3snarzSoL764dFhbmHhKTjOb5nfRmxiIqVMkFGYFS2uxtKmLdo5cNwT8g5IAIues2O7iyQVcrnnjAXEsyhssXg+jQmE+GLZjn2ilrudQ+hLuTza7XrzSbEJejT2RxlLx2rQe/ttW5WRxAKYPbVFkrBI7SyULKbb6ZGIH73GLDEnDlX/ZzuFN1WTxPiLEXk4bGY43XrMP/2G3gMjGjhz8wu2d2UQs0vCGh03/BOg==
  • Authentication-results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: "open list:X86" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Ian Jackson <Ian.Jackson@xxxxxxxxxx>, "rosbrookn@xxxxxxxxxxxx" <rosbrookn@xxxxxxxxxxxx>
  • Delivery-date: Fri, 28 Aug 2020 19:05:28 +0000
  • Ironport-sdr: hKz7THyVsGtfpctcbzHoW4bEiXvN01EP8TgZmJQuwXZjSE6TqJaps4s/QJ7b6gYYRg0MpV3LxL GMDrwpdbsukIZ7IrdUUNhiriC/QCarpBa3SLb/A2IhvHVdZekGeksH235ffTRtNIgTVLpqA0Yq O/ReFlPr97VnV3WC+sOVK4hDHypCl2dse8JvsRpxGGOVEeaYvCzSP4xqiA/COVK3XuSvNmcDdd NPbB7a3Gg2A9kcb9KTWcptc1baSK+MWzRxwb1LTwKRFHGIwJ2yj1Mordb8ALULNXraEThpc0wD qTE=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHWXvbkqZX3isiLZUWTcowoxjQWaKlN6fcAgAA0ZIA=
  • Thread-topic: Golang design session follow-up


> On Aug 28, 2020, at 4:57 PM, George Dunlap <george.dunlap@xxxxxxxxxx> wrote:
> 
> 
> 
>> On Jul 21, 2020, at 1:35 AM, Nick Rosbrook <rosbrookn@xxxxxxxxx> wrote:
>> 
>> # Long-term home of the package
>> 
>>   Ian: Autogenerated stuff is becoming more annoying.
>> 
>>   Delete all the libxl auto-generated stuff from staging & master, and have 
>> "output branch".
>> 
>>   The reason we have these in-tree is that otherwise you can't build *from 
>> git* if you don't 
>>   have new enough versions of the right tools.
>> 
>>   Distribution: Make a repo on xenbits!
> 
> So thinking about this: 
> 
> The first plan I had was to have a script in tools/golang/xenlight (and/or 
> the Makefile), which would be handed a directory, and would then:
> 
> 1. Sync static files from tools/golang/xenlight into that directory
> 
> 2. Run gengotypes.py, having the resulting generated files put into that 
> directory
> 
> 3. Run `git diff` in the target directory; if there are any changes, then 
> automatically run `git commit` to check in the changes.
> 
> That way you could just set up a cron job to sync things over on a regular 
> basis.
> 
> Thinking about GPL considerations, however, you’d also want to include 
> libxl_types.idl and idl.py.  And then of course, you should also include a 
> way to build the generated code from those two.
> 
> At which point… would it make sense to just move the package out to its 
> separate repo entirely?  I.e., have actual development happen in the repo 
> which ends up being cloned in the end?
> 
> Obviously there are nice things about having the code in the same repo; but 
> there’s also something satisfying about being a full downstream.
> 
> I was actually thinking it might make sense to put the repo at 
> https://gitlab.com/xen-project/go-xenlight , to try out that as a development 
> model.

I’ve put a sort of draft module up at https://gitlab.com/martyros/go-xen ; you 
can test it by adding the "gitlab.com/xen-project/go-xen/xenlight” package, but 
adding the following line to the go.mod of the test program:

replace gitlab.com/xen-project/go-xen => gitlab.com/martyros/go-xen master

This builds but for me unfortunately crashes during domain creation with the 
following error:

libxl: error: libxl_create.c:90:libxl__domain_build_info_setdefault: Unable to 
copy deprecated fields
libxl: error: libxl_create.c:1182:libxl__domain_config_setdefault: Unable to 
set domain build info defaults

I’ll have to dig a bit more into it next week.

 -George


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.