* qemu-upstream stubdom - status? @ 2014-04-07 20:50 Eric Shelton 2014-04-08 10:49 ` George Dunlap 2014-04-08 10:49 ` Ian Jackson 0 siblings, 2 replies; 12+ messages in thread From: Eric Shelton @ 2014-04-07 20:50 UTC (permalink / raw) To: xen-devel@lists.xen.org, Anthony PERARD, Ian Jackson [-- Attachment #1.1: Type: text/plain, Size: 1119 bytes --] Where does this feature stand currently? It pops up under a couple of names and proposed implementations (e.g., "qemu-xen stubdomains", "qemu-upstream stubdom, Linux", and "qemu-upstream stubdom, BSD libc"), so it seems likely I missed something. If I understand this email from Sept 2013 ( http://lists.xen.org/archives/html/xen-devel/2013-09/msg02881.html), qemu-xen stubdomains might have made it into 4.4 if the schedule had been slipped a little, suggesting some active effort. On the other hand, the same email designated the efforts attached to Anthony and Ian as "prognosis: ?". Anthony released a patchset/branch about a year ago, but that got sidelined in favor of getting Xen on ARM. However, I did not identify any more recent patches. It remains appealing to make use of the more recent developments in qemu-upstream, but with the isolation provided by a stubdomain. The many improvements made in teasing driver domains out of dom0 strengthen this appeal (for example, using OpenSolaris as a ZFS-based storage domain). What are the most recent patches or repository for this feature? Thanks, Eric [-- Attachment #1.2: Type: text/html, Size: 1370 bytes --] [-- Attachment #2: Type: text/plain, Size: 126 bytes --] _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-07 20:50 qemu-upstream stubdom - status? Eric Shelton @ 2014-04-08 10:49 ` George Dunlap 2014-04-08 11:26 ` Anthony PERARD 2014-04-08 10:49 ` Ian Jackson 1 sibling, 1 reply; 12+ messages in thread From: George Dunlap @ 2014-04-08 10:49 UTC (permalink / raw) To: Eric Shelton; +Cc: Anthony PERARD, Ian Jackson, xen-devel@lists.xen.org On Mon, Apr 7, 2014 at 9:50 PM, Eric Shelton <eshelton@pobox.com> wrote: > Where does this feature stand currently? It pops up under a couple of names > and proposed implementations (e.g., "qemu-xen stubdomains", "qemu-upstream > stubdom, Linux", and "qemu-upstream stubdom, BSD libc"), so it seems likely > I missed something. > > If I understand this email from Sept 2013 > (http://lists.xen.org/archives/html/xen-devel/2013-09/msg02881.html), > qemu-xen stubdomains might have made it into 4.4 if the schedule had been > slipped a little, suggesting some active effort. On the other hand, the > same email designated the efforts attached to Anthony and Ian as "prognosis: > ?". Anthony released a patchset/branch about a year ago, but that got > sidelined in favor of getting Xen on ARM. However, I did not identify any > more recent patches. > > It remains appealing to make use of the more recent developments in > qemu-upstream, but with the isolation provided by a stubdomain. The many > improvements made in teasing driver domains out of dom0 strengthen this > appeal (for example, using OpenSolaris as a ZFS-based storage domain). > > What are the most recent patches or repository for this feature? I think stubdomains for qemu-xen should be a blocker for 4.5. The only thing that's missing for stubdoms, AFAIK, is an integrated way to deploy the stubdom VM in which qemu-xen can run. qemu-traditional uses minios with a version of newlib (IIRC) ported to it. The problem at the moment is that qemu-xen requires much more from its libc than newlib provides. There are several potential solutions that have been investigated: 1. Use Linux with glibc. 2. Port a more fully-functional libc (e.g., a BSD libc) to minios 3. Use the "rump kernel" functionality 4. Use OSv. #1 involves mainly trying to cut down the Linux kernel and the guest FS as small as possible. Anthony spent some time on #1 in the 4.3 and 4.4 development cycles, and I think got the image down to 32MB. That's still fairly large, however; and I think he got stuck trying to integrate an image builder into the Xen build system. #2 involves dealing with the mismatch between the OS functionality provided by minios and the functionality required by the libc: threads, async IO, &c. This entails either disabling / working around the lack of functionality, or implementing the requisite functionality. Ian Jackson spent some time in the 4.3 development cycle working on this, but ended up having to switch to something else. #3 on the surface looks promising: the "rump kernels" approach allows you to lift bits of the BSD kernel into another context, like user-space; or in our case, a PV "Cloud OS". The advantage of this is that it's using all the existing tested code that works together, but just replacing certain bits of it: e.g., the lowest layers with PV, and the systemcall boundary with a function call. This has already been used to make single-address-space PV BSD guests boot, IIRC; it would just take someone familiar with both to sit down integrate it. At the moment I don't think anyone is actively looking at this. #4 would involve taking the existing OSv system and adding missing functionality, if any. I don't think anyone is looking at this either. If you're looking for a solution to use right now, I'm sure Anthony can point you to wherever he left off. If you're looking to maybe get involved and contribute, I think the consensus was that #3 looked like the most promising option -- I'm sure IanJ can give you some pointers of where to look. -George ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 10:49 ` George Dunlap @ 2014-04-08 11:26 ` Anthony PERARD 2015-01-08 16:39 ` Eric Shelton 0 siblings, 1 reply; 12+ messages in thread From: Anthony PERARD @ 2014-04-08 11:26 UTC (permalink / raw) To: Eric Shelton; +Cc: George Dunlap, Ian Jackson, xen-devel@lists.xen.org On Tue, Apr 08, 2014 at 11:49:43AM +0100, George Dunlap wrote: > On Mon, Apr 7, 2014 at 9:50 PM, Eric Shelton <eshelton@pobox.com> wrote: > > Where does this feature stand currently? It pops up under a couple of names > > and proposed implementations (e.g., "qemu-xen stubdomains", "qemu-upstream > > stubdom, Linux", and "qemu-upstream stubdom, BSD libc"), so it seems likely > > I missed something. > > > > If I understand this email from Sept 2013 > > (http://lists.xen.org/archives/html/xen-devel/2013-09/msg02881.html), > > qemu-xen stubdomains might have made it into 4.4 if the schedule had been > > slipped a little, suggesting some active effort. On the other hand, the > > same email designated the efforts attached to Anthony and Ian as "prognosis: > > ?". Anthony released a patchset/branch about a year ago, but that got > > sidelined in favor of getting Xen on ARM. However, I did not identify any > > more recent patches. > > > > It remains appealing to make use of the more recent developments in > > qemu-upstream, but with the isolation provided by a stubdomain. The many > > improvements made in teasing driver domains out of dom0 strengthen this > > appeal (for example, using OpenSolaris as a ZFS-based storage domain). > > > > What are the most recent patches or repository for this feature? > > I think stubdomains for qemu-xen should be a blocker for 4.5. > > The only thing that's missing for stubdoms, AFAIK, is an integrated > way to deploy the stubdom VM in which qemu-xen can run. > qemu-traditional uses minios with a version of newlib (IIRC) ported to > it. The problem at the moment is that qemu-xen requires much more > from its libc than newlib provides. There are several potential > solutions that have been investigated: > > 1. Use Linux with glibc. [...] > #1 involves mainly trying to cut down the Linux kernel and the guest > FS as small as possible. Anthony spent some time on #1 in the 4.3 and > 4.4 development cycles, and I think got the image down to 32MB. > That's still fairly large, however; and I think he got stuck trying to > integrate an image builder into the Xen build system. [...] > If you're looking for a solution to use right now, I'm sure Anthony > can point you to wherever he left off. I have this branch that is the most recent work I have: git://xenbits.xen.org/people/aperard/xen-unstable.git branch: stubdom `make -C stubdom-linux` should make you an image. Unfortunatly, there is no video output that can be seen, so a guest is only accessible through the serial console or the network. And there are probably many other issues. Hope that help, -- Anthony PERARD ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 11:26 ` Anthony PERARD @ 2015-01-08 16:39 ` Eric Shelton 0 siblings, 0 replies; 12+ messages in thread From: Eric Shelton @ 2015-01-08 16:39 UTC (permalink / raw) To: xen-devel@lists.xen.org; +Cc: George Dunlap, Anthony PERARD, Ian Jackson On Tue, Apr 8, 2014 at 7:26 AM, Anthony PERARD <anthony.perard@citrix.com> wrote: > On Tue, Apr 08, 2014 at 11:49:43AM +0100, George Dunlap wrote: >> On Mon, Apr 7, 2014 at 9:50 PM, Eric Shelton <eshelton@pobox.com> wrote: >> > Where does this feature stand currently? It pops up under a couple of names >> > and proposed implementations (e.g., "qemu-xen stubdomains", "qemu-upstream >> > stubdom, Linux", and "qemu-upstream stubdom, BSD libc"), so it seems likely >> > I missed something. >> > >> > If I understand this email from Sept 2013 >> > (http://lists.xen.org/archives/html/xen-devel/2013-09/msg02881.html), >> > qemu-xen stubdomains might have made it into 4.4 if the schedule had been >> > slipped a little, suggesting some active effort. On the other hand, the >> > same email designated the efforts attached to Anthony and Ian as "prognosis: >> > ?". Anthony released a patchset/branch about a year ago, but that got >> > sidelined in favor of getting Xen on ARM. However, I did not identify any >> > more recent patches. >> > >> > It remains appealing to make use of the more recent developments in >> > qemu-upstream, but with the isolation provided by a stubdomain. The many >> > improvements made in teasing driver domains out of dom0 strengthen this >> > appeal (for example, using OpenSolaris as a ZFS-based storage domain). >> > >> > What are the most recent patches or repository for this feature? >> >> I think stubdomains for qemu-xen should be a blocker for 4.5. >> >> The only thing that's missing for stubdoms, AFAIK, is an integrated >> way to deploy the stubdom VM in which qemu-xen can run. >> qemu-traditional uses minios with a version of newlib (IIRC) ported to >> it. The problem at the moment is that qemu-xen requires much more >> from its libc than newlib provides. There are several potential >> solutions that have been investigated: >> >> 1. Use Linux with glibc. > [...] > >> #1 involves mainly trying to cut down the Linux kernel and the guest >> FS as small as possible. Anthony spent some time on #1 in the 4.3 and >> 4.4 development cycles, and I think got the image down to 32MB. >> That's still fairly large, however; and I think he got stuck trying to >> integrate an image builder into the Xen build system. > [...] > >> If you're looking for a solution to use right now, I'm sure Anthony >> can point you to wherever he left off. > > I have this branch that is the most recent work I have: > git://xenbits.xen.org/people/aperard/xen-unstable.git > branch: stubdom > > `make -C stubdom-linux` should make you an image. > > Unfortunatly, there is no video output that can be seen, so a guest is > only accessible through the serial console or the network. And there are > probably many other issues. > > Hope that help, > > -- > Anthony PERARD With the impending rollout of another Xen release lacking qemu-xen stubdom, I would like to campaign for a couple of things: (1) making qemu-xen stubdom a blocker for Xen 4.6; and (2) using a Linux-based stubdom, at least for the time being. (1) Making qemu-xen a blocker for 4.6 This security issues presented by allowing qemu to run unrestricted within dom0 have been appreciated for a long time (comments about qemu-dm in XSA-109 illustrate this). Just last month, a few additional qemu escalation vulnerabilities were demonstrated. Given the size, complexity, and pace of development of qemu, we can reasonably assume there will always be some escalation vulnerability. Xen has generally taken known, and often far more obscure, security issues very seriously. I am puzzled that Xen continues to offer a non-stubdom qemu. The current qemu stubdom solution almost amounts to a mitigation, rather than a solution, of a well-known issue. The options offered today are: (a) have access to all of the features and bugfixes offered by upstream qemu (which have been significant thanks to KVM's use of qemu, and are appreciable on and sometimes necessary for some guest operating systems), at the cost of qemu running unrestricted within dom0; or (b) have qemu contained in a separate domain, but with what is essentially only a "good enough" six year old version of qemu (ver 0.10.2). Additionally, once qemu-xen stubdom is realized, we can move away from and stop maintaining the forked qemu-traditional codebase. Finally, all of the Xen-specific code could be mainstreamed into upstream qemu. If all that can managed is to release qemu-xen stub domains at the level of a tech preview, it still represents a significant improvement on both of the axes of functionality and security. (2) Using Linux to implement qemu-xen stubdom Efforts over the last 3 years at realizing qemu-xen stub domains seem to illustrate the "perfect is the enemy of the good" phenomenon. I gather that rump kernel is the favored direction, and ultimately would be more memory efficient than using Linux, but a lot of unresolved technical issues lie down that path that are already solved by using Linux, and resolving them has, and likely will continue to, stymie getting something effective and reasonable out the door. It is understandable that the Xen team has prioritized other items over qemu-xen stubdom. However, rather than allowing a lower priority item to be left undone, that should inform us that an "ideal," but more development intensive, path is not called for. Instead, we should just adopt the more easily implemented solution and move on. Some reasons for picking up where Anthony left off with using Linux: (a) Linux + qemu is a mature and well-tested codebase. Although there are some other environments under which qemu is built and run, far and away the most common platform is Linux. (b) Linux kernel + Xen is a mature and well-tested codebase. Although there was some disappointment that external patches had to be applied to the Linux kernel, they were pretty minor. (c) A lot things need to be done for rump kernel that already just work with Linux. (d) Developers are more familiar with Linux. At one point along the way, there was expressed interest in moving away from the obscure mini-os. With rump kernel, mini-os remains in the picture AND we are adding NetBSD into the mix. There are very few developers with the skills needed to make rump kernel happen or contribute to it. (e) The changes that need to be made to upstream qemu to run in a stub domain are a fixed item - they are somewhat independent of the underlying OS/execution environment. If Xen starts with a Linux-based stubdom, the transition can still be made to rump kernel. (f) The memory overhead issue is overblown. As time goes on, systems have more memory and memory gets cheaper. How hard do we work to reduce the 32 MB used for Linux when we're allocating 2+ GB of memory to an HVM domain anyway, and how much of a reduction would we realize anyway? When Anthony released his patches, there was some disappointment expressed with the build process (which kernel version was being used and reliance on busybox, for example). None of the raised issues strike me as significant problems - just decisions that have to be made. Anyways, I find it incredible to believe that a MiniOS + NetBSD rump kernel + libc + whatever else solution is going to result in a cleaner build process. Given limited developer resources, sometimes tradeoffs have to be made. I propose that Linux-based stub domains are the right tradeoff for incorporation into Xen 4.6. Rump kernels may indeed be the future, but they do not seem to be the immediate solution for qemu stubdoms that we could use. Thank you, Eric ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-07 20:50 qemu-upstream stubdom - status? Eric Shelton 2014-04-08 10:49 ` George Dunlap @ 2014-04-08 10:49 ` Ian Jackson 2014-04-08 11:33 ` Antti Kantee 1 sibling, 1 reply; 12+ messages in thread From: Ian Jackson @ 2014-04-08 10:49 UTC (permalink / raw) To: Eric Shelton; +Cc: Anthony PERARD, Antti Kantee, xen-devel@lists.xen.org Eric Shelton writes ("qemu-upstream stubdom - status?"): > Where does this feature stand currently? It pops up under a couple > of names and proposed implementations (e.g., "qemu-xen stubdomains", > "qemu-upstream stubdom, Linux", and "qemu-upstream stubdom, BSD > libc"), so it seems likely I missed something. Hi. I made a start on bsd libc + minios last release cycle but I think this has now been overtaken by the rump kernels work by Antti Kantee. See https://github.com/rumpkernel/wiki/wiki etc. > It remains appealing to make use of the more recent developments in > qemu-upstream, but with the isolation provided by a stubdomain. The > many improvements made in teasing driver domains out of dom0 > strengthen this appeal (for example, using OpenSolaris as a > ZFS-based storage domain). Yes. > What are the most recent patches or repository for this feature? I've just started looking at the rump kernels with a view to (eventually) trying to get qemu-upstream working but I don't have anything I can show you yet. Thanks, Ian. (CC Antti.) ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 10:49 ` Ian Jackson @ 2014-04-08 11:33 ` Antti Kantee 2014-04-08 17:03 ` Ian Jackson 0 siblings, 1 reply; 12+ messages in thread From: Antti Kantee @ 2014-04-08 11:33 UTC (permalink / raw) To: Ian Jackson, Eric Shelton Cc: Anthony PERARD, Justin Cormack, xen-devel@lists.xen.org On 08/04/14 10:49, Ian Jackson wrote: > Eric Shelton writes ("qemu-upstream stubdom - status?"): >> Where does this feature stand currently? It pops up under a couple >> of names and proposed implementations (e.g., "qemu-xen stubdomains", >> "qemu-upstream stubdom, Linux", and "qemu-upstream stubdom, BSD >> libc"), so it seems likely I missed something. > > Hi. I made a start on bsd libc + minios last release cycle but I > think this has now been overtaken by the rump kernels work by Antti > Kantee. See https://github.com/rumpkernel/wiki/wiki etc. > >> It remains appealing to make use of the more recent developments in >> qemu-upstream, but with the isolation provided by a stubdomain. The >> many improvements made in teasing driver domains out of dom0 >> strengthen this appeal (for example, using OpenSolaris as a >> ZFS-based storage domain). > > Yes. > >> What are the most recent patches or repository for this feature? > > I've just started looking at the rump kernels with a view to > (eventually) trying to get qemu-upstream working but I don't have > anything I can show you yet. Last time we discussed this (ca. FOSDEM-time), I put up a page to list the issues with the hopes of a TODO-list making it easy to just tick items off quickly. Wishful thinking. I probably also forgot to send the URL to you. Anyway, I updated the content now, here's the URL: http://wiki.rumpkernel.org/Info:-Remaining-issues-for-%22OS-less%22-rump-kernels I think Justin Cormack (also cc'd) has something yet unpublished for the build issue with some form of "compiler triplet". ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 11:33 ` Antti Kantee @ 2014-04-08 17:03 ` Ian Jackson 2014-04-08 17:04 ` Justin Cormack 2014-04-08 17:13 ` Justin Cormack 0 siblings, 2 replies; 12+ messages in thread From: Ian Jackson @ 2014-04-08 17:03 UTC (permalink / raw) To: Antti Kantee Cc: Anthony PERARD, xen-devel@lists.xen.org, Justin Cormack, Eric Shelton Antti Kantee writes ("Re: qemu-upstream stubdom - status?"): > On 08/04/14 10:49, Ian Jackson wrote: > > I've just started looking at the rump kernels with a view to > > (eventually) trying to get qemu-upstream working but I don't have > > anything I can show you yet. > > Last time we discussed this (ca. FOSDEM-time), I put up a page to list > the issues with the hopes of a TODO-list making it easy to just tick > items off quickly. Wishful thinking. I probably also forgot to send > the URL to you. Anyway, I updated the content now, here's the URL: Thanks. The big one there is pthreads but I don't think we actually need that for qemu-dm, provided we have aio, which it looks like we do ? > I think Justin Cormack (also cc'd) has something yet unpublished for the > build issue with some form of "compiler triplet". ATM I can't build the current rumpuser-xen tip, because I get ld: cannot find -lrumpkern_time and indeed no librumpkern_time.a seems to have been built. (I have edited rumpuser-xen/Config.mk to refer to my xen.git's dist/install for XEN_HEADERS.) Thanks, Ian. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 17:03 ` Ian Jackson @ 2014-04-08 17:04 ` Justin Cormack 2014-04-08 17:47 ` Ian Jackson 2014-04-08 17:13 ` Justin Cormack 1 sibling, 1 reply; 12+ messages in thread From: Justin Cormack @ 2014-04-08 17:04 UTC (permalink / raw) To: Ian Jackson Cc: Anthony PERARD, xen-devel@lists.xen.org, Antti Kantee, Eric Shelton On Tue, Apr 8, 2014 at 6:03 PM, Ian Jackson <Ian.Jackson@eu.citrix.com> wrote: > ATM I can't build the current rumpuser-xen tip, because I get > ld: cannot find -lrumpkern_time > and indeed no librumpkern_time.a seems to have been built. > > (I have edited rumpuser-xen/Config.mk to refer to my xen.git's > dist/install for XEN_HEADERS.) Sorry I broke that by accident - pull it again and should be fixed. Justin ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 17:04 ` Justin Cormack @ 2014-04-08 17:47 ` Ian Jackson 0 siblings, 0 replies; 12+ messages in thread From: Ian Jackson @ 2014-04-08 17:47 UTC (permalink / raw) To: Justin Cormack Cc: Anthony PERARD, xen-devel@lists.xen.org, Antti Kantee, Eric Shelton Justin Cormack writes ("Re: qemu-upstream stubdom - status?"): > On Tue, Apr 8, 2014 at 6:03 PM, Ian Jackson <Ian.Jackson@eu.citrix.com> wrote: > > ATM I can't build the current rumpuser-xen tip, because I get > > ld: cannot find -lrumpkern_time > > and indeed no librumpkern_time.a seems to have been built. > > > > (I have edited rumpuser-xen/Config.mk to refer to my xen.git's > > dist/install for XEN_HEADERS.) > > Sorry I broke that by accident - pull it again and should be fixed. Ah, thanks, yes it is :-). Thanks, Ian. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 17:03 ` Ian Jackson 2014-04-08 17:04 ` Justin Cormack @ 2014-04-08 17:13 ` Justin Cormack 2014-04-08 17:47 ` Ian Jackson 1 sibling, 1 reply; 12+ messages in thread From: Justin Cormack @ 2014-04-08 17:13 UTC (permalink / raw) To: Ian Jackson Cc: Anthony PERARD, xen-devel@lists.xen.org, Antti Kantee, Eric Shelton On Tue, Apr 8, 2014 at 6:03 PM, Ian Jackson <Ian.Jackson@eu.citrix.com> wrote: > The big one there is pthreads but I don't think we actually need that > for qemu-dm, provided we have aio, which it looks like we do ? The aio syscalls are not in the rump kernel at present. They could easily be added but not sure that signal notification will work in rump, although polling should. Unfortunately NetBSD does not have kqueue aio support yet, which would be ideal. Justin ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 17:13 ` Justin Cormack @ 2014-04-08 17:47 ` Ian Jackson 2014-04-08 22:54 ` Antti Kantee 0 siblings, 1 reply; 12+ messages in thread From: Ian Jackson @ 2014-04-08 17:47 UTC (permalink / raw) To: Justin Cormack Cc: Anthony PERARD, xen-devel@lists.xen.org, Antti Kantee, Eric Shelton Justin Cormack writes ("Re: qemu-upstream stubdom - status?"): > On Tue, Apr 8, 2014 at 6:03 PM, Ian Jackson <Ian.Jackson@eu.citrix.com> wrote: > > The big one there is pthreads but I don't think we actually need that > > for qemu-dm, provided we have aio, which it looks like we do ? > > The aio syscalls are not in the rump kernel at present. They could > easily be added but not sure that signal notification will work in > rump, although polling should. Unfortunately NetBSD does not have > kqueue aio support yet, which would be ideal. Hmm. I was going to say that qemu doesn't want signal notification. But actually it is doing something with threads. I think this can probably be fixed in qemu. Ian. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: qemu-upstream stubdom - status? 2014-04-08 17:47 ` Ian Jackson @ 2014-04-08 22:54 ` Antti Kantee 0 siblings, 0 replies; 12+ messages in thread From: Antti Kantee @ 2014-04-08 22:54 UTC (permalink / raw) To: Ian Jackson, Justin Cormack Cc: Anthony PERARD, xen-devel@lists.xen.org, Eric Shelton On 08/04/14 17:47, Ian Jackson wrote: > Justin Cormack writes ("Re: qemu-upstream stubdom - status?"): >> On Tue, Apr 8, 2014 at 6:03 PM, Ian Jackson <Ian.Jackson@eu.citrix.com> wrote: >>> The big one there is pthreads but I don't think we actually need that >>> for qemu-dm, provided we have aio, which it looks like we do ? >> >> The aio syscalls are not in the rump kernel at present. They could >> easily be added but not sure that signal notification will work in >> rump, although polling should. Unfortunately NetBSD does not have >> kqueue aio support yet, which would be ideal. > > Hmm. I was going to say that qemu doesn't want signal notification. > But actually it is doing something with threads. I think this can > probably be fixed in qemu. Yea, it probably can be fixed in qemu, but I'd still like to have ~generic(*) pthreads available for the rump kernel driver stack. I started playing with pthreads support. It shouldn't be too difficult in principle, but as usual, details are everything and saying that something isn't difficult tends to jinx it... Meanwhile, don't let that stop you from creating a qemu-specific solution; insight from a "meet-in-the-middle" type of implementation attack never hurts. I'll also include the aio syscall driver, for the sake of completeness, even if it's not strictly speaking required here. If there are build problems in the future, check http://builds.rumpkernel.org. We usually fix problems flagged there within an hour or two (does not apply to the NetBSD HEAD build, which also depends on the state of NetBSD HEAD itself). *) in a cpu-bound thread without any I/O blocking points, the lack of a clock interrupt like scheduling facility is a bit of a bummer. I'm assuming that's not an issue with qemu's use of threads. ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2015-01-08 16:39 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-04-07 20:50 qemu-upstream stubdom - status? Eric Shelton 2014-04-08 10:49 ` George Dunlap 2014-04-08 11:26 ` Anthony PERARD 2015-01-08 16:39 ` Eric Shelton 2014-04-08 10:49 ` Ian Jackson 2014-04-08 11:33 ` Antti Kantee 2014-04-08 17:03 ` Ian Jackson 2014-04-08 17:04 ` Justin Cormack 2014-04-08 17:47 ` Ian Jackson 2014-04-08 17:13 ` Justin Cormack 2014-04-08 17:47 ` Ian Jackson 2014-04-08 22:54 ` Antti Kantee
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).