[Spice-devel] OpenGL passthrough

2011-11-09 Thread Mosebach Kai
Hi guys,

Just a though : 

In a scenario where a kvm-host system has a openGL capable display
adapter, wouldn't it be possible (and relatively simple compared to a full
VGA passthrough) to just
pass the OpenGL interface/access into the VMs QXL Adapter making this one
(HW accelerated) OpenGL aware?

Thanks for enlightenment,

Kai

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] OpenGL passthrough

2011-11-09 Thread Mosebach Kai
On 11/9/11 3:51 PM, Alon Levy al...@redhat.com wrote:


On Wed, Nov 09, 2011 at 01:52:12PM +, Mosebach  Kai wrote:
 Hi guys,
 
 Just a though : 
 
 In a scenario where a kvm-host system has a openGL capable display
 adapter, wouldn't it be possible (and relatively simple compared to a
full
 VGA passthrough) to just
 pass the OpenGL interface/access into the VMs QXL Adapter making this
one
 (HW accelerated) OpenGL aware?

There are threads in qemu-devel about using pci passthrough for using

I tried for long time now to pass through PCIe Hardware into the guest
with all kind of PCIe cards w/o too much off success. So that¹s not what I
want ;-)

the host GPU from the guest. If you actually want to view the results
then yes, it's relatively simple in theory. Maybe also in practice, but
I've been struggling with a slightly larger problem, doing OpenGL and
Direct3D passthrough, for almost a year now, with no results to show :/

I do have patches on my harddrive somewhere by Izik Eidos that do a
proof of concept for GL passthrough from a windows guest to a
windows/linux client, I could ask him if it's ok to post them if you'd
like. (and if I can find them).

Basically it adds qxl messages for all the GL commands, adds a surface
type, tracks all commands from the last SwapBuffers (I guess
wglSwapBuffers - the equivalent of glXSwapBuffers) per surface, and
passes all of those to the client. Rendering on the server, that is the
host, will be a little simpler.

So (if I got you right and you got me right) we talk about the QXL device
on the KVM guest receiving OpenGL commands and passing them (thru
qemu-kvm) downwards to the OpenGL capable hardware on the KVM Host
(server). The client (spicec or similar) should not be involved at all. Is
there any work in progress (for rendering on the server) - similar to the
RemoteFX project of HyperV?


Cheers Kai


 
 Thanks for enlightenment,
 
 Kai
 
 ___
 Spice-devel mailing list
 Spice-devel@lists.freedesktop.org
 http://lists.freedesktop.org/mailman/listinfo/spice-devel

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] OpenGL passthrough

2011-11-09 Thread Mosebach Kai
Both would be very helpful :-) And important from a market/competitive
point of view.

Please let me have a look at the patches if possible,

Thanks Kai

On 11/9/11 5:54 PM, Alon Levy al...@redhat.com wrote:

On Wed, Nov 09, 2011 at 03:57:30PM +, Mosebach  Kai wrote:
 On 11/9/11 3:51 PM, Alon Levy al...@redhat.com wrote:
 
 
 On Wed, Nov 09, 2011 at 01:52:12PM +, Mosebach  Kai wrote:
  Hi guys,
  
  Just a though :
  
  In a scenario where a kvm-host system has a openGL capable display
  adapter, wouldn't it be possible (and relatively simple compared to a
 full
  VGA passthrough) to just
  pass the OpenGL interface/access into the VMs QXL Adapter making this
 one
  (HW accelerated) OpenGL aware?
 
 There are threads in qemu-devel about using pci passthrough for using
 
 I tried for long time now to pass through PCIe Hardware into the guest
 with all kind of PCIe cards w/o too much off success. So that¹s not
what I
 want ;-)
 
 the host GPU from the guest. If you actually want to view the results
 then yes, it's relatively simple in theory. Maybe also in practice, but
 I've been struggling with a slightly larger problem, doing OpenGL and
 Direct3D passthrough, for almost a year now, with no results to show :/
 
 I do have patches on my harddrive somewhere by Izik Eidos that do a
 proof of concept for GL passthrough from a windows guest to a
 windows/linux client, I could ask him if it's ok to post them if you'd
 like. (and if I can find them).
 
 Basically it adds qxl messages for all the GL commands, adds a surface
 type, tracks all commands from the last SwapBuffers (I guess
 wglSwapBuffers - the equivalent of glXSwapBuffers) per surface, and
 passes all of those to the client. Rendering on the server, that is the
 host, will be a little simpler.
 
 So (if I got you right and you got me right) we talk about the QXL
device
 on the KVM guest receiving OpenGL commands and passing them (thru
 qemu-kvm) downwards to the OpenGL capable hardware on the KVM Host
 (server). The client (spicec or similar) should not be involved at all.
Is
 there any work in progress (for rendering on the server) - similar to
the
 RemoteFX project of HyperV?
 

I know I'm working on enabling both server side and client side
rendering, not aware of anyone else.

 
 Cheers Kai
 
 
  
  Thanks for enlightenment,
  
  Kai
  
  ___
  Spice-devel mailing list
  Spice-devel@lists.freedesktop.org
  http://lists.freedesktop.org/mailman/listinfo/spice-devel
 

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] OSX spice-gtk and pyparsing

2011-05-08 Thread Mosebach Kai
I think having a xcode project would be quite nice. Furthermore a cocoa
client completely based on spice-client-glib would be the better option
compared to (native) gtk imho. I guess having a look at the Cord project
(http://cord.sourceforge.net/) might be a good start (they ported freeRDP
into a really nice cocoa app).

Cheers Kai

PS : The spice-gtk-0.6 builds nearly without any hacks on osx. I will try
to provide a patch for the Makefile in ./gtk soon (regarding the sym-file
issue)...

On 5/4/11 10:41 AM, Christophe Fergeau cferg...@redhat.com wrote:

On Tue, May 03, 2011 at 05:32:12PM -0500, Cliff Sharp wrote:
 So, now I use the X11 environment that comes with osx when I actually
run
 spiced and/or spicy. But I feel you are correct in saying that it is
 better to use the X11 system that comes with osx.
 
 I was just attempting to notify others of these issues in hopes that it
 might help them to save some time.

Ah ok, thanks for that, I thought you wanted to fix things on the macports
X side :) Since spice-gtk-x11 on osx isn't that interesting to me (I'd
rather have a more native port using gtk-osx), if it works with Apple X11,
I'd leave it at that :)

 Do you feel it is worth the time to build an Xcode project for building
 spicec and spice-gtk to distribute?  The visual debugger is sure nice in
 Xcode.

I wouldn't spend too much time on an Xcode project for spicec. It might be
useful for spice-gtk, but it might be too early for that. In my opinion,
what would be really nice is
* a working spice-gtk using gtk-osx (spice-gtk currently has X11/windows
  specific bits that needs to be ported)
* when we have that, having some kind of bundle that people can install to
  use in xcode would be great (I think the gtk-osx project has some tools
  to help in doing that)
* longer term, a cocoa spice client (probably using spice-client-glib for
  the low-level spice stuff) would be even better (I assume this would
ease
  iOS porting)

Christophe
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Spice on OS/X

2011-04-27 Thread Mosebach Kai
I finally build it on OSX 10.6.6 successfully :-)

From the patches below I only used :

common/lines.c
gtk/Makefile.am


Then a 

./configure --with-audio=gstreamer --without-python
--with-coroutine=gthread

did the trick, I think --with-coroutine=gthread avoid the _XOPEN_SOURCE
patches.

Best Kai


On 4/27/11 10:47 AM, Christophe Fergeau cferg...@redhat.com wrote:

On Tue, Apr 26, 2011 at 08:39:13PM +0200, Attila Sukosd wrote:
 Also I've attached the patch which fixes a few things here and there...
With
 this it builds fine.

Ah, so you've already built spice-gtk on macosx? How well did it work?

I had some questions about your patch, it would be really helpful if you
remembered why you had to change these things :)

Thanks for the patch,

Christophe

diff --git a/common/lines.c b/common/lines.c
index 1a14c18..59d0689 100644
--- a/common/lines.c
+++ b/common/lines.c
@@ -2985,7 +2985,7 @@ miWideDashSegment (GCPtr pGC,
 double L, l;
 double k;
 PolyVertexRec vertices[4];
-PolyVertexRec saveRight = { 0 }, saveBottom;
+PolyVertexRec saveRight = { 0 }, saveBottom = { 0 };
 PolySlopeRec slopes[4];
 PolyEdgeRec left[2], right[2];
 LineFaceRec lcapFace, rcapFace;

I assume this bit is to avoid a saveBottom can be used without being
initialized gcc warning?



diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 7ce8a65..e5f3c1c 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -27,6 +27,7 @@ if HAVE_LD_VERSION_SCRIPT
 VERSION_LDFLAGS = -Wl,--version-script=${srcdir}/map-file
 else
 VERSION_LDFLAGS = -export-symbols ${srcdir}/sym-file
+#VERSION_LDFLAGS =
 endif
 
 KEYMAP_GEN = $(srcdir)/keymap-gen.pl


macosx ld indeed doesn't have any of --version-script nor -export-symbols,
but it does have --exported_symbols_list which seems to be equivalent to
what we are trying to do here. This means m4/ld-version.m4 could be
improved to deal with this.


@@ -420,7 +421,6 @@ INTROSPECTION_GIRS =
 INTROSPECTION_SCANNER_ARGS = --add-include-path=$(builddir)
$(PREFIX_ARGS)
 INTROSPECTION_COMPILER_ARGS = --includedir=$(builddir)
 
-if HAVE_INTROSPECTION
 glib_introspection_files = $(libspice_client_glibinclude_HEADERS)
 gtk_introspection_files = $(libspice_client_gtkinclude_HEADERS)
 
@@ -453,7 +453,6 @@ typelibsdir = $(libdir)/girepository-1.0
 typelibs_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
 
 CLEANFILES += $(gir_DATA) $(typelibs_DATA)
-endif

I'm not sure why you needed this change.
My first guess was that this change is needed to prevent autoconf from
complaining that HAVE_INTROSPECTION is not present in an AM_CONDITIONAL
when gobject-introspection (and introspection.m4) are not installed.
However, this would mean that unconditionally building the introspection
stuff would fail, and moreover, when I tested just this change without
introspection, configure didn't succeed. Can you tell more about why this
change was needed?


diff --git a/gtk/continuation.c b/gtk/continuation.c
index 4f5b027..3aefa54 100644
--- a/gtk/continuation.c
+++ b/gtk/continuation.c
@@ -21,7 +21,10 @@
 #include config.h
 
 #include continuation.h
-
+#ifdef __MACH__
+#define _XOPEN_SOURCE
+#include ucontext.h
+#endif

continuation.h already has the #include ucontext.h, including it again
shouldn't do much. Does something like
--- a/gtk/continuation.c
+++ b/gtk/continuation.c
@@ -21,7 +21,10 @@
 #include config.h
 
+#define _XOPEN_SOURCE
 #include continuation.h

help with the issue you were having?


diff --git a/gtk/continuation.h b/gtk/continuation.h
index 585788e..6822757 100644
--- a/gtk/continuation.h
+++ b/gtk/continuation.h
@@ -21,7 +21,8 @@
 #ifndef _CONTINUATION_H_
 #define _CONTINUATION_H_
 
-#include ucontext.h
+#include string.h
+#include sys/ucontext.h

Ah, this explains the #include ucontext.h you added in the previous
hunk.
I suspect dropping both hunks and only adding the #define _XOPEN_SOURCE
here would fix your issues. Though nothing in ucontext.h nor in
sys/ucontext.h on a macosx box depends on _XOPEN_SOURCE, so I'm not sure
what issues you were seeing here?


diff --git a/gtk/coroutine_ucontext.c b/gtk/coroutine_ucontext.c
index 91059ad..ee48249 100644
--- a/gtk/coroutine_ucontext.c
+++ b/gtk/coroutine_ucontext.c
@@ -25,6 +25,9 @@
 #include stdio.h
 #include stdlib.h
 #include coroutine.h
+#ifndef MAP_ANONYMOUS
+# define MAP_ANONYMOUS MAP_ANON
+#endif

Yep, macosx has MAP_ANON but no MAP_ANONYMOUS


diff --git a/gtk/spice-client-gtk.override b/gtk/spice-client-gtk.override
index 7b3543a..e634f78 100644
--- a/gtk/spice-client-gtk.override
+++ b/gtk/spice-client-gtk.override
@@ -1,6 +1,7 @@
 %%
 headers
 #include Python.h
+#define NO_IMPORT_PYGOBJECT

This one seems to be here for the same kind of issues as what led to
https://gitorious.org/rb-lastfm/rb-lastfm/commit/ab102ef5a954eb87354c3467d
1a35c8fa596242b
but I must say I don't understand very well the issue/what's going on. Do
you happen to have the compile error handy (just for my knowledge). I'm
happy to take this one as is whatsoever.


Re: [Spice-devel] [CIFEX] A file available for download from Kai Mosebach

2011-04-27 Thread Mosebach Kai
For this you should have a working build process and then write some
after processing script which packs things together automatically (such
as the binaries below) + all needed libs and the throw it into a pkg or
dmg automatically. It'd be a nice to have but surely takes more than some
minutes ...

On 4/27/11 11:57 AM, Federico Alves sa...@minixel.com wrote:

I get this error
Last login: Sat Apr 23 00:23:34 on ttys003
/Users/federico/Downloads/spice-gtk-0.5-darwin/bin/spicy ; exit;
192:~ federico$ /Users/federico/Downloads/spice-gtk-0.5-darwin/bin/spicy ;
exit;dyld: Library not loaded:
/usr/local/lib/libspice-client-gtk-2.0.1.dylib
  Referenced from:
/Users/federico/Downloads/spice-gtk-0.5-darwin/bin/spicy
  Reason: image not found
Trace/BPT trap
Logout

I was referring not exactly to a binary version, but to an installer. Just
like a real software product. In fact, I want to put such a thing in the
Apple store, free. It would be great.

Is that possible?

Federico




On 4/27/11 5:51 AM, Kai Mosebach kai.moseb...@bsse.ethz.ch wrote:

Hello sa...@minixel.com,

Kai Mosebach kai.moseb...@bsse.ethz.ch has stored a file on our server
for you to download. File information appears below.



From: Kai Mosebach
Email:kai.moseb...@bsse.ethz.ch

The file is (follow link to download):

spice-gtk-0.5-darwin.tgz
https://cifex.ethz.ch:443/?fileId=11135user=sales%40minixel.com


Expiration: The file will be removed on 2011-05-04 at 23:59:59

For downloading you have to enter the following password:
DDIFfmQlBic~R@3l@z

Link to login to the system:
https://cifex.ethz.ch:443/?user=sales%40minixel.com



We recommend that you keep your antivirus software up-to-date when
downloading any files from the internet.


CIFEX - CISD File EXchanger
Center for Information Sciences and Databases
ETH Zurich




___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] OSX spice-gtk and pyparsing

2011-04-27 Thread Mosebach Kai
As Cliff stated on the very end of the mail, taking pyparsing from the original 
website and manually installing it resolved the problem…

Cheers Kai

From: Attila Sukosd attila.suk...@gmail.commailto:attila.suk...@gmail.com
Date: Wed, 27 Apr 2011 18:30:58 +0200
To: Cliff Sharp csh...@vbridges.commailto:csh...@vbridges.com, 
spice-de...@freedesktop.orgmailto:spice-de...@freedesktop.org, Kai Mosebach 
k...@freshx.demailto:k...@freshx.de
Subject: Re: [Spice-devel] OSX spice-gtk and pyparsing

Yea, you can even just take the pyparsing.py from the .tgz and put it in the 
source base dir. (where you run make from)

Best Regards,

Attila Sukosd

-
DTU Computing Center - www.cc.dtu.dkhttp://www.cc.dtu.dk
att...@cc.dtu.dkmailto:att...@cc.dtu.dk, 
gba...@student.dtu.dkmailto:gba...@student.dtu.dk, 
s070...@student.dtu.dkmailto:s070...@student.dtu.dk




On Wed, Apr 27, 2011 at 6:28 PM, Alon Levy 
al...@redhat.commailto:al...@redhat.com wrote:
On Wed, Apr 27, 2011 at 11:07:55AM -0500, Cliff Sharp wrote:
 When building spice-gtk after loading tons of MacPorts dependencies -- I was 
 getting the following error.

To build from git (not from source tar balls) you need pyparsing. I think it's 
pure python, so should pose
absolutely no problem to install even if no MacPort exists. I don't have a mac 
so I can't check.

http://pyparsing.wikispaces.com/


 make  all-recursive
 Making all in common
 Making all in win
 Making all in my_getopt-1.5
 make[4]: Nothing to be done for `all'.
 make[4]: Nothing to be done for `all-am'.
 make[3]: Nothing to be done for `all-am'.
 Making all in gtk
   GENspice-marshal.c
   GENspice-marshal.h
   GENgenerated_demarshallers.c
 Traceback (most recent call last):
   File ../spice_codegen.py, line 7, in module
 from python_modules import spice_parser
   File 
 /Users/csharp/src/spice-gtk/spice-gtk-0.5/python_modules/spice_parser.py, 
 line 1, in module
 from pyparsing import Literal, CaselessLiteral, Word, OneOrMore, 
 ZeroOrMore, \
 ImportError: No module named pyparsing
 make[2]: *** [generated_demarshallers.c] Error 1
 make[1]: *** [all-recursive] Error 1
 make: *** [all] Error 2

 I could not find pyparsing in MacPorts via the port list command. I did find 
 and load
 py-parsing @1.5.1  python/py-parsing
 py25-parsing   @1.5.1  python/py25-parsing
 py26-parsing   @1.5.2  python/py26-parsing
 py27-parsing   @1.5.5  python/py27-parsing

 But none of these resolved the issue.

 So I downloaded pyparsing-1.5.5.tar.gz from 
 http://distfiles.macports.org/python/
 and installed it via python setup.py install which resolved the issue.


 

 Cliff Sharp | csh...@vbridges.commailto:csh...@vbridges.com








 ___
 Spice-devel mailing list
 Spice-devel@lists.freedesktop.orgmailto:Spice-devel@lists.freedesktop.org
 http://lists.freedesktop.org/mailman/listinfo/spice-devel

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.orgmailto:Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] androidSpice-0.1.4 released

2011-04-26 Thread Mosebach Kai
Hey Lin,

Just gave it a quick shot :

- DNS resolving not working?
- access to server w/o password not supported?
- access w/ password produces a force kill after a vibration
- some traffic is seen on the spice-server side though

(couldn’t connect therefore)

Any logfiles I can provide?

HW/SW : Android V2.2 on Samsung Galaxy Tab

Cheers Kai

On 4/26/11 9:43 AM, Shuxiang Lim shohyang...@gmail.com wrote:

Released with src  .apk files with button-double-click fixed.
--Lin--

On 4/26/11, Shuxiang Lim shohyang...@gmail.com wrote:
 Hi,all!
   After I workaround the bug input will choke output,I'm glad to
 release the USABLE androidSpice-0.1.4 on google code:

 http://code.google.com/p/spice-client-android/

 You shall check the wiki page of it for the build/install/use of it.
 Any use or improvement will be appreciated!
 Best Regards.
 --Lin-林

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel