From: Michael P. <lin...@gr...> - 2005-11-29 17:32:30
|
We have been experimenting with multiXnest, and it works, but has a few minor shortcomings. (I want to stress that we are extremely grateful to Ander for creating multiXnest, the functionality it provides is amazing and VERY useful.) 1. Xnest is old and unmaintained, and will probably not have any future enhancements unless someone from the multi-user community makes them. 2. it is slower than a normal x server ( using the nv driver it is unbearably slow, but with the nvidia driver speed is good) 3. no XV support, so even playing videos from web sites with realplayer really taxes the CPU 4. some screensavers crash it (easy workaround -- disable fancy screensaver= s!) 5. no keyboard led support (this one is important for commercial applicatio= ns) So multiXnest is fine for now, but looking to the future we should probably be working with Xephyr, ( http://cvs.freedesktop.org/xserver/xserver/hw/kdrive/ephyr/README?view=3Dma= rkup ) to run nested X servers. It is newer and maintained (#1), is faster (#2), could have xv and keyboard led support possibly added (#3,4) Unfortunately , Xephyr doesn't support different pointers and keyboards right now, and the maintainer said that it would take about a week of work, to the tune of $4000. We honestly don't sell enough multi-user machines to make $4000 worth it, but we may be willing to pay up to $1000 to have Xephyr instead of multiXnest for the advantages listed above in the long term. Are there any other companies/organizations that would be willing to contribute to the cost of having Matthew Allum (the official maintainer) work on Xephyr to make it suitable for multi-user? Or, are there some coders out there who could help modify Xephyr, maybe with a little free or paid help from Matthew? If someone has some ideas and some time, we have a $1000 maximum budget to work with. If we could get Xephyr with evdev keyboard and mouse support AND the keyboard leds working properly on an Ubuntu system, we would be happy. If we could get xv support in the next few months, we would be extremely happy. Of course this work is going to benefit everyone including non-multi-users, and would have to be under an MIT license if we want changes integrated into the main branch. Any thoughts? Below is an email dialog between Matthew Allum and me. Update on nvidia crashing: we have shipped a multi-user machine to nvidia for testing. There is hope that the next nvidia release due out very soon will fix things. Thanks, Mike -- Michael Pardee 1-888-323-1742 Open Sense Solutions LLC http://opensensesolutions.com ---------- Forwarded message ---------- From: Matthew Allum <ma...@op...> Date: Nov 29, 2005 4:10 AM Subject: Re: Xephyr mouse and vt options To: Open Sense Solutions <in...@op...> Cc: Ander Conselvan de Oliveira <ac...@in...> Hi; On Mon, 2005-11-28 at 18:53 -0600, Open Sense Solutions wrote: > We are experimenting with Xephyr and the -mouse and vtXX options are > not working as far as we can tell. They are listed under the "TinyX > Device Dependent Usage:" section in the help, but I'm not sure what > that means. Are these options generally supported to use a different > mouse and keyboard for a Xephyr instance? > Hmm, I've never tried them options with Xephyr at least though Im not surprised they dont work. Xephyr basically gets its mouse and keyboard events directly from the the parent X server ( via X events ) and just 'forwards' them into itself. Its ignoring -mouse and vtXX . > We have been trying a variant of xnest called multiXnest > (http://www.c3sl.ufpr.br/multiterminal/howtos/howto-xnest-en.htm) > to achieve multiple users on one machine. In the past we have just > run multiple x server on discrete cards, but we have stability > problems, and running one x server with nested displays is more > stable. Also nested displays allow two users on one multi-head video > card. However, xnest is old an unmaintained, and Xephyr holds promise > for getting the xv video extension and maybe even 3d acceleration in > the future. > Aha, I see from the above why you would need Xephyr to do this. > In order to start using Xephyr, we need a way to specify mouse and > keyboard devices, preferably as evdev phys locations like in > xorg.conf, but either as /dev/input/mouseX or /dev/input/eventX or > keyboards as a vtXX (then we can use faketty to get a different > keyboard on different vts) would be OK. Is this supported by the > current version of Xephyr, and if so do you have any tips for us? No > matter what we tried for -mouse and vtXX the Xephyr screen always used > the same pointer and keyboard as the underlying x server. > > If the -mouse and vtXX options are not fully implemented yet, what > would it take to make them work in the general case? There are lots > of people interested in multi-user operation that might be able to > hack at Xephyr, or what would it take to get you to make the changes? > If we were to pay your consulting firm to make these changes in the > very near future, what kind of costs would be involved? Of course all > work would be gpl and part of the main branch. > It wouldn't be too hard to modify Xephyr to grab directly events via evdev exactly like the above. Assuming we just worried about evdev events for mice and keyboard ( via existing -mouse <evdev device> and possibly a new -keyboard <evdev device> keyboard switches ), Im assuming this would take about a weeks work. I just need to double check some of the keyboard evdev stuff to be 100% sure it would work. Cost wise would be around 4000 USD. Please let me know if this is with in your budget. Also if you wanted code pushed upstream it would have to be MIT licensed rather than GPL ( existing license license like most/all X stuff is MIT ). > Having mouse and keyboards specified makes Xephyr as good as > multiXnest for us, but once again we want to move to Xephyr for the > future. Xephyr does have other advantages over Xnest - server side support for modern X extensions like XRender, XRandr, XDamage etc. > What kind of work (or costs) would be involved to: > 1. use the xv extension for video overlays > 2. handle the keyboard leds properly > 3. use nvidia 3d hardware excelleration (1) I think would be possible and *maybe* not that hard. Would need more investigation. (2) Could very likely be fairly trivial with the above evdev additions. (3) This is probably extremely difficult and maybe not even possible at all. Though that said vmware can do direct3d accel via h/w afaik on Linux so there is likely a way. Needs much more thought though. You are likely looking at months rather than weeks of work here. > If those tasks are just about impossible in the next year, moving to > Xephyr doesn't help all that much, except maybe Xephyr is faster than > xnest. > Depending on the underlying card and X operation Xephyr likely does out perform Xnest though I've never ran any figures on this. Many thanks; -- Matthew Allum http://openedhand.com |