Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756091AbbKCXax (ORCPT ); Tue, 3 Nov 2015 18:30:53 -0500 Received: from mail-pa0-f43.google.com ([209.85.220.43]:33897 "EHLO mail-pa0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754983AbbKCXaw (ORCPT ); Tue, 3 Nov 2015 18:30:52 -0500 Date: Wed, 04 Nov 2015 08:30:46 +0900 Message-ID: From: Hajime Tazaki To: octavian.purdila@intel.com Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC PATCH 04/28] lkl: host interface In-Reply-To: <1446582059-17355-5-git-send-email-octavian.purdila@intel.com> References: <1446582059-17355-1-git-send-email-octavian.purdila@intel.com> <1446582059-17355-5-git-send-email-octavian.purdila@intel.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/22.3 Mule/5.0 (SAKAKI) X-Face: "+?b:_s\r$dbBx'Ur*k#`5|~\>v~i`PzaxANTx_S?J>:mTQrtm:c7'f5b~W2eX~Fl[0Pw,0bow)8r8Z5,D&>]C/'ujqr:fbY>]/52T^Q~cX*y5\?!"i<^Vp=zCNguAeyPH$`ZTv{di25X8,%@! MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1591 Lines: 52 At Tue, 3 Nov 2015 22:20:35 +0200, Octavian Purdila wrote: > > This patch introduces the host operations that define the interface > between the LKL and the host. These operations must be provided either > by a host library or by the application itself. (snip) > +struct lkl_host_operations { > + const char *virtio_devices; > + > + void (*print)(const char *str, int len); > + void (*panic)(void); > + > + void* (*sem_alloc)(int count); > + void (*sem_free)(void *sem); > + void (*sem_up)(void *sem); > + void (*sem_down)(void *sem); > + > + int (*thread_create)(void (*f)(void *), void *arg); > + void (*thread_exit)(void); > + > + void* (*mem_alloc)(unsigned long); > + void (*mem_free)(void *); > + > + unsigned long long (*time)(void); > + > + void* (*timer_alloc)(void (*fn)(void *), void *arg); > + int (*timer_set_oneshot)(void *timer, unsigned long delta); > + void (*timer_free)(void *timer); > + > + void* (*ioremap)(long addr, int size); > + int (*iomem_access)(const volatile void *addr, void *val, int size, > + int write); > + > +}; this is related to the thing that I'm improving libos right now. my current conclusion is using rump hypercall interfaces, which I'm currently working on. we (libos and lkl) may have matured interface as well as reduce/share the effort to have more underlying (host) calls. -- Hajime -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/