1d514b0f3Smrgcommit f6f75e1b03ca0d25d546cf9e80d0317bd644bc8d 2d514b0f3SmrgAuthor: Peter Hutterer <peter.hutterer@who-t.net> 3d514b0f3SmrgDate: Tue Jan 24 14:28:12 2023 +1000 4d514b0f3Smrg 5d514b0f3Smrg qxl 0.1.6 6d514b0f3Smrg 7d514b0f3Smrg Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> 8d514b0f3Smrg 9d514b0f3Smrgcommit ca70ff93dd8bbf35104d0f48b23a81aebf58bfac 10d514b0f3SmrgAuthor: Joachim Breuer <git@jmbreuer.net> 11d514b0f3SmrgDate: Tue Apr 12 19:35:21 2022 +0200 12d514b0f3Smrg 13d514b0f3Smrg Default to one head if there is no NUM_HEADS option 14d514b0f3Smrg 15d514b0f3Smrgcommit 9d0ddb12cb74a04ccd007ad884137a4fdaf39b44 16d514b0f3SmrgAuthor: Joachim Breuer <git@jmbreuer.net> 17d514b0f3SmrgDate: Tue Apr 12 19:33:45 2022 +0200 18d514b0f3Smrg 19d514b0f3Smrg Initialize pScrn->{width, height} from primary 20d514b0f3Smrg 21d514b0f3Smrg ... instead of pScrn->currentMode, the latter is not initialized 22d514b0f3Smrg in xorg-server-21.1.3 23d514b0f3Smrg 24d514b0f3Smrgcommit fe3acdf9503b836111fb20c4839a25562d0484f7 25d514b0f3SmrgAuthor: Joachim Breuer <git@jmbreuer.net> 26d514b0f3SmrgDate: Tue Apr 12 19:32:40 2022 +0200 27d514b0f3Smrg 28d514b0f3Smrg fix pScrn->modes == NULL in xf86InitViewport() 29d514b0f3Smrg 30d514b0f3Smrg track pScrn->modes along with qxl->x_modes 31d514b0f3Smrg 32d514b0f3Smrgcommit 52e975263fe88105d151297768c7ac675ed94122 33d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 34d514b0f3SmrgDate: Wed Feb 10 14:49:48 2021 -0500 35d514b0f3Smrg 36d514b0f3Smrg configure: Simplify fragile libdrm detection 37d514b0f3Smrg 38d514b0f3Smrg libdrm 2.4.46 always installs qxl_drm.h 39d514b0f3Smrg 40d514b0f3Smrgcommit 670992bf6effa0f8e81b429cddf9609aa1b3bcd9 41d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 42d514b0f3SmrgDate: Wed Apr 6 14:41:16 2022 -0700 43d514b0f3Smrg 44d514b0f3Smrg gitlab CI: stop requiring Signed-off-by in commits 45d514b0f3Smrg 46d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 47d514b0f3Smrg 48d514b0f3Smrgcommit 0a2e96d823e54a99b2079446f53aaf9cac15c279 49d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 50d514b0f3SmrgDate: Sat Feb 19 09:31:00 2022 -0800 51d514b0f3Smrg 52d514b0f3Smrg uxa: Convert source files from ISO-8859-1 to UTF-8 53d514b0f3Smrg 54d514b0f3Smrg Clears errors from FlawFinder in gitlab CI: 55d514b0f3Smrg Error: encoding error in ./src/uxa/uxa-unaccel.c 56d514b0f3Smrg 'utf-8' codec can't decode byte 0xa9 in position 19: invalid start byte 57d514b0f3Smrg 58d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 59d514b0f3Smrg 60d514b0f3Smrgcommit 92984f5a3f3afc9352f6dbc405ae9287f02abd38 61d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 62d514b0f3SmrgDate: Sun Jan 23 13:33:04 2022 -0800 63d514b0f3Smrg 64d514b0f3Smrg gitlab CI: add a basic build test 65d514b0f3Smrg 66d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 67d514b0f3Smrg 68d514b0f3Smrgcommit 4e1963a812f2c1777ba5d56ea9e939a3e40a0496 69d514b0f3SmrgAuthor: Zoltán Böszörményi <zboszor@gmail.com> 70d514b0f3SmrgDate: Sat Aug 28 15:38:40 2021 +0200 71d514b0f3Smrg 72d514b0f3Smrg Fix a build error with Xorg master 73d514b0f3Smrg 74d514b0f3Smrg Use xf86ReturnOptValBool() in get_bool_option() instead of 75d514b0f3Smrg options[option_index].value.bool to fix a compiler error with 76d514b0f3Smrg current Xorg xserver master branch. 77d514b0f3Smrg 78d514b0f3Smrg Also use xf86GetOptValInteger() in get_int_option() and 79d514b0f3Smrg xf86GetOptValString() in get_str_option() for consistency. 80d514b0f3Smrg 81d514b0f3Smrg The change causes a slight performance drop during option parsing 82d514b0f3Smrg because the passed-in index_value is no longer used as an index 83d514b0f3Smrg into the options array. 84d514b0f3Smrg 85d514b0f3Smrg Instead, it's used as a token now for the standard option getter 86d514b0f3Smrg functions which works since the index_value to the get_*_option() 87d514b0f3Smrg functions are identical to the value of options[n].token in the 88d514b0f3Smrg passed-in OptionInfoRec array. 89d514b0f3Smrg 90d514b0f3Smrg Also rename "int option_index" to "int token" for clarity in all 91d514b0f3Smrg three functions. 92d514b0f3Smrg 93d514b0f3Smrg Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> 94d514b0f3Smrg 95d514b0f3Smrgcommit 24f35015dca33564ce9ded309909b4b6c17763be 96d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 97d514b0f3SmrgDate: Sun Jan 23 13:24:29 2022 -0800 98d514b0f3Smrg 99d514b0f3Smrg Fix spelling/wording issues 100d514b0f3Smrg 101d514b0f3Smrg Found by using: 102d514b0f3Smrg codespell --builtin clear,rare,usage,informal,code,names 103d514b0f3Smrg 104d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 105d514b0f3Smrg 106d514b0f3Smrgcommit cdcfd033cc7dc8522c4532ffe7b8374eaeb29e7a 107d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 108d514b0f3SmrgDate: Sun Jan 23 13:21:52 2022 -0800 109d514b0f3Smrg 110d514b0f3Smrg Build xz tarballs instead of bzip2 111d514b0f3Smrg 112d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 113d514b0f3Smrg 114d514b0f3Smrgcommit 52c421c650f8813665b31890df691b31fabc366a 115d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 116d514b0f3SmrgDate: Wed Feb 5 12:55:01 2020 -0500 117d514b0f3Smrg 118d514b0f3Smrg qxl: Include only the dpms headers we need 119d514b0f3Smrg 120d514b0f3Smrg dpms.h is provided by libXext, but nothing in our configure.ac is 121d514b0f3Smrg verifying that we have libXext's headers. Fortunately we only need the 122d514b0f3Smrg definitions in dpmsconst.h (which dpms.h included for us), which is in 123d514b0f3Smrg xorgproto and thus implied by having an xserver DDK to build against. 124d514b0f3Smrg 125d514b0f3Smrg And we're even trying to include dpmsconst.h when we think we have it, 126d514b0f3Smrg meaning when HAVE_XEXTPROTO_71 is defined, but while many other drivers 127d514b0f3Smrg define that macro in their configure.ac, we for no particularly good 128d514b0f3Smrg reason do not. Oops. But since xextproto is about ten years old by now 129d514b0f3Smrg we can probably just safely include it unconditionally. 130d514b0f3Smrg 131d514b0f3Smrgcommit 922ec516beaae0c0735bbd46d470908f243e3605 132d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 133d514b0f3SmrgDate: Fri Apr 5 09:38:31 2019 -0500 134d514b0f3Smrg 135d514b0f3Smrg Correct a long standing led state bug in XSpice. 136d514b0f3Smrg 137d514b0f3Smrg The CtrlProc for our keyboard driver incorrectly mapped 138d514b0f3Smrg the device private to a SpiceKbd* intead of to a InputInfoPtr. 139d514b0f3Smrg 140d514b0f3Smrg That resulted in led state being written into the driver name 141d514b0f3Smrg for our driver structure, instead of into the led state. 142d514b0f3Smrg 143d514b0f3Smrg That, in turn, led to a cool bug where if you pressed caps lock, 144d514b0f3Smrg the two second sync timer in the spice server would cause it to 145d514b0f3Smrg attempt to correct the state by pressing caps lock to get the 146d514b0f3Smrg states to match. Since the states will never match, the caps 147d514b0f3Smrg lock effectively cycles on and off every two seconds. 148d514b0f3Smrg 149d514b0f3Smrg Signed-off-by: Jeremy White <jwhite@codeweavers.com> 150d514b0f3Smrg Acked-by: Victor Toso <victortoso@redhat.com> 151d514b0f3Smrg 152d514b0f3Smrgcommit e2981166c10c38b89adc35f106e20b95b15ac47e 153d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 154d514b0f3SmrgDate: Thu Dec 6 15:55:07 2018 -0800 155d514b0f3Smrg 156d514b0f3Smrg Update configure.ac bug URL for gitlab migration 157d514b0f3Smrg 158d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 159d514b0f3Smrg 160d514b0f3Smrgcommit d92e9a8f798bf5d5375da2bbc0fc5ac5586765d7 161d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@oracle.com> 162d514b0f3SmrgDate: Sun Nov 18 13:39:37 2018 -0800 163d514b0f3Smrg 164d514b0f3Smrg Update README for gitlab migration 165d514b0f3Smrg 166d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 167d514b0f3Smrg 168d514b0f3Smrgcommit cf2254c13497049a8dbc73a3b031f4cd43403ab1 169d514b0f3SmrgAuthor: Victor Toso <me@victortoso.com> 170d514b0f3SmrgDate: Tue Oct 23 13:48:58 2018 +0200 171d514b0f3Smrg 172d514b0f3Smrg qxl: Initialize prev field while dup surface list 173d514b0f3Smrg 174d514b0f3Smrg Otherwise we will can hit a segfault qxl_surface_kill() 175d514b0f3Smrg 176d514b0f3Smrg │717 void 177d514b0f3Smrg │718 qxl_surface_kill (qxl_surface_t *surface) 178d514b0f3Smrg │719 { 179d514b0f3Smrg │720 struct evacuated_surface_t *ev = surface->evacuated; 180d514b0f3Smrg │721 181d514b0f3Smrg │722 if (ev) 182d514b0f3Smrg │723 { 183d514b0f3Smrg │724 /* server side surface is already destroyed (via reset), don't 184d514b0f3Smrg │725 * resend a destroy. Just mark surface as not to be recreated */ 185d514b0f3Smrg │726 ev->pixmap = NULL;│ 186d514b0f3Smrg │727 if (ev->image)│ 187d514b0f3Smrg │728 pixman_image_unref (ev->image); 188d514b0f3Smrg │729 if (ev->next) 189d514b0f3Smrg │730 ev->next->prev = ev->prev; 190d514b0f3Smrg │731 if (ev->prev) 191d514b0f3Smrg >│732 ev->prev->next = ev->next; 192d514b0f3Smrg │733 free(ev); 193d514b0f3Smrg │734 surface->evacuated = NULL; 194d514b0f3Smrg │735 return; 195d514b0f3Smrg │736 } 196d514b0f3Smrg 197d514b0f3Smrg Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1641793 198d514b0f3Smrg 199d514b0f3Smrg Signed-off-by: Victor Toso <victortoso@redhat.com> 200d514b0f3Smrg 201d514b0f3Smrgcommit 64cb597c7f7fa1493aea95aa3656e2cae66728d2 202d514b0f3SmrgAuthor: Jonathon Jongsma <jjongsma@redhat.com> 203d514b0f3SmrgDate: Mon Nov 12 14:06:14 2018 -0600 204d514b0f3Smrg 205d514b0f3Smrg Make output names match modesetting driver 206d514b0f3Smrg 207d514b0f3Smrg The xrandr output name used by the QXL driver is based on the drm 208d514b0f3Smrg connector type, but the names do not match the kernel names (see 209d514b0f3Smrg /drivers/gpu/drm/drm_connector.c) or the modesetting driver names (see 210d514b0f3Smrg hw/xfree86/drivers/modesetting/drmmode_display.c). Making these more 211d514b0f3Smrg consistent will require less driver-specific special-case code if a user 212d514b0f3Smrg wants to match an xrandr output to a drm connector. 213d514b0f3Smrg 214d514b0f3Smrg Note that this patch should not actually change any behavior, since the 215d514b0f3Smrg QXL driver only uses the 'Virtual' connector type, so this is done only 216d514b0f3Smrg for consistency. 217d514b0f3Smrg 218d514b0f3Smrg Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com> 219d514b0f3Smrg Acked-by: Frediano Ziglio <fziglio@redhat.com> 220d514b0f3Smrg 221d514b0f3Smrgcommit 505a8bb0cd82e2a50fcf18ed4647788adacef6ee 222d514b0f3SmrgAuthor: Jonathon Jongsma <jjongsma@redhat.com> 223d514b0f3SmrgDate: Mon Nov 12 14:06:13 2018 -0600 224d514b0f3Smrg 225d514b0f3Smrg Make output name numbering 1-based 226d514b0f3Smrg 227d514b0f3Smrg The QXL driver names its outputs starting at 0 (e.g. Virtual-0, 228d514b0f3Smrg Virtual-1, etc). This code was presumably copy/pasted from a different 229d514b0f3Smrg driver, and is not necessary for the QXL driver. Other drivers simply 230d514b0f3Smrg use the kernel connector_type_id which starts at 1. For example, the 231d514b0f3Smrg modesetting driver changed from 0-based names to 1-based names for the 232d514b0f3Smrg same reason in xserver commit 139e36dd. 233d514b0f3Smrg 234d514b0f3Smrg This will help to make it easier to identify which xrandr outputs belong 235d514b0f3Smrg to which drm connector without requiring as many driver-specific 236d514b0f3Smrg special-cases. 237d514b0f3Smrg 238d514b0f3Smrg This change might effect custom xorg configurations that references a 239d514b0f3Smrg specific output name. But the same change was made in modesetting driver 240d514b0f3Smrg despite that possibility. 241d514b0f3Smrg 242d514b0f3Smrg Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com> 243d514b0f3Smrg Acked-by: Frediano Ziglio <fziglio@redhat.com> 244d514b0f3Smrg 245d514b0f3Smrgcommit ee8f904ab0d590c741e640e9548c472e6a58b3cc 246d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 247d514b0f3SmrgDate: Wed Mar 8 10:50:56 2017 +1000 248d514b0f3Smrg 249d514b0f3Smrg qxl: call provider init 250d514b0f3Smrg 251d514b0f3Smrg This prevents crashes when multiple QXL devices are configured in a VM. 252d514b0f3Smrg 253d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=1428340 254d514b0f3Smrg 255d514b0f3Smrgcommit 78abd5221f7efd87383aa357590efff083449aa3 256d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 257d514b0f3SmrgDate: Tue Jun 13 09:29:28 2017 -0400 258d514b0f3Smrg 259d514b0f3Smrg modesetting: Validate the atom for enum properties 260d514b0f3Smrg 261d514b0f3Smrg The client could have said anything here, and if what they said doesn't 262d514b0f3Smrg actually name an atom NameForAtom() will return NULL, and strcmp() will 263d514b0f3Smrg be unhappy about that. 264d514b0f3Smrg 265d514b0f3Smrg [copied from xserver d4995a3936ae283b9080fdaa0905daa669ebacfc] 266d514b0f3Smrg 267d514b0f3Smrg Signed-off-by: Adam Jackson <ajax@redhat.com> 268d514b0f3Smrg 269d514b0f3Smrgcommit 0728e0851f776a273e5c559a23dca7ef40be405f 270d514b0f3SmrgAuthor: Frediano Ziglio <fziglio@redhat.com> 271d514b0f3SmrgDate: Fri Apr 7 12:05:23 2017 +0100 272d514b0f3Smrg 273d514b0f3Smrg Make some variables static 274d514b0f3Smrg 275d514b0f3Smrg Signed-off-by: Frediano Ziglio <fziglio@redhat.com> 276d514b0f3Smrg Acked-by: Christophe Fergeau <cfergeau@redhat.com> 277d514b0f3Smrg 278d514b0f3Smrgcommit 0e86e9d2672c5d033845f1cc0ecb7f3669de050f 279d514b0f3SmrgAuthor: Frediano Ziglio <fziglio@redhat.com> 280d514b0f3SmrgDate: Fri Apr 7 12:05:22 2017 +0100 281d514b0f3Smrg 282d514b0f3Smrg Make some function static 283d514b0f3Smrg 284d514b0f3Smrg Signed-off-by: Frediano Ziglio <fziglio@redhat.com> 285d514b0f3Smrg Acked-by: Christophe Fergeau <cfergeau@redhat.com> 286d514b0f3Smrg 287d514b0f3Smrgcommit aa4359f8947f69ef884c89a2729adf2ce3723681 288d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 289d514b0f3SmrgDate: Tue Apr 4 17:02:27 2017 +0200 290d514b0f3Smrg 291d514b0f3Smrg Spelling and typo fixes in some comments 292d514b0f3Smrg 293d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 294d514b0f3Smrg Acked-by: Jonathon Jongsma <jjongsma@redhat.com> 295d514b0f3Smrg 296d514b0f3Smrgcommit eaefd19bb40ec5f7b069e4f3278e974fb3e2e839 297d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 298d514b0f3SmrgDate: Tue Apr 4 17:00:43 2017 +0200 299d514b0f3Smrg 300d514b0f3Smrg Spelling fixes in the READMEs and configuration samples 301d514b0f3Smrg 302d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 303d514b0f3Smrg Acked-by: Jonathon Jongsma <jjongsma@redhat.com> 304d514b0f3Smrg 305d514b0f3Smrgcommit 9a7eb40fa23b908d9f62a8f04933fdafd04d6b88 306d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 307d514b0f3SmrgDate: Wed Feb 8 17:07:56 2017 +0100 308d514b0f3Smrg 309d514b0f3Smrg Xspice: Fix Python3 str() vs bytes() confusion 310d514b0f3Smrg 311d514b0f3Smrg With python3, without universal_newlines=True, Popen().stdout.read() 312d514b0f3Smrg will return a byte array, while find(str) expects to operate on a 313d514b0f3Smrg string. 314d514b0f3Smrg I've checked that this still works with python2 as well. 315d514b0f3Smrg 316d514b0f3Smrgcommit b9955a35b42c156c343bd6f673c3e973397ce654 317d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 318d514b0f3SmrgDate: Wed Feb 8 17:07:39 2017 +0100 319d514b0f3Smrg 320d514b0f3Smrg Xspice: Remove extra space before assignment 321d514b0f3Smrg 322d514b0f3Smrgcommit 69cf5e40b2b6a0188b9aa88b66b683bd461afbd1 323d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 324d514b0f3SmrgDate: Wed Feb 8 15:23:56 2017 +0100 325d514b0f3Smrg 326d514b0f3Smrg Xspice: Use print("") instead of print "" 327d514b0f3Smrg 328d514b0f3Smrg This allows Xspice to run when using python3 instead of python2 329d514b0f3Smrg 330d514b0f3Smrgcommit 8d344cf49fdb021ab80354eaaa57a419a6746a56 331d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 332d514b0f3SmrgDate: Mon Dec 19 17:36:36 2016 +0100 333d514b0f3Smrg 334d514b0f3Smrg NEWS: Xspice now works with X.org 1.19 335d514b0f3Smrg 336d514b0f3Smrgcommit a283cda0c4dbacb1d4b398b45f271275a3d1121a 337d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 338d514b0f3SmrgDate: Mon Dec 19 17:28:41 2016 +0100 339d514b0f3Smrg 340d514b0f3Smrg Revert "Remove unused 'event_mask' field" 341d514b0f3Smrg 342d514b0f3Smrg This reverts commit bfb724076d575d5a49d08913b86885688251a176. 343d514b0f3Smrg This was pushed by mistake. 344d514b0f3Smrg 345d514b0f3Smrgcommit bfb724076d575d5a49d08913b86885688251a176 346d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 347d514b0f3SmrgDate: Mon Dec 19 10:51:09 2016 +0100 348d514b0f3Smrg 349d514b0f3Smrg Remove unused 'event_mask' field 350d514b0f3Smrg 351d514b0f3Smrg With the Xorg 1.19 codepaths, the 'event_mask' field of SpiceWatch is 352d514b0f3Smrg only useful for sanity checking the event we get from Xorg. This commit 353d514b0f3Smrg assumes Xorg is sane, and removes this extra field. 354d514b0f3Smrg 355d514b0f3Smrgcommit 009776a8a3fb096b11ec95033d1e1a366e26f188 356d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 357d514b0f3SmrgDate: Thu Dec 15 10:47:51 2016 +0100 358d514b0f3Smrg 359d514b0f3Smrg Xspice: Replace malloc/strdup use with xnfalloc/xnfstrdup 360d514b0f3Smrg 361d514b0f3Smrg spiceqxl_*.c files are Xspice-only code. They contain a few uses of 362d514b0f3Smrg malloc/strdup, and none of these are checked for failure. It's better to 363d514b0f3Smrg replace these with xfnalloc/xnfstrdup which are provided by the X server 364d514b0f3Smrg and cannot fail (aborts on failure). 365d514b0f3Smrg 366d514b0f3Smrg Signed-off-by: Christophe Fergeau <cfergeau@redhat.com> 367d514b0f3Smrg Reviewed-by: Hans de Goede <hdegoede@redhat.com> 368d514b0f3Smrg 369d514b0f3Smrgcommit db353f559d32119e811eab71a9d3128847a64609 370d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 371d514b0f3SmrgDate: Wed Dec 14 10:37:03 2016 +0100 372d514b0f3Smrg 373d514b0f3Smrg xspice: Adjust to X.org 1.19 changes 374d514b0f3Smrg 375d514b0f3Smrg In newer X.org versions, it's no longer supported to modify the set of 376d514b0f3Smrg FDs passed to a BlockHandler method to get notified when the FD has data 377d514b0f3Smrg to be read. This was limited anyway as we could only get read events 378d514b0f3Smrg this way, and had to do our own polling to get notified about socket 379d514b0f3Smrg writeability. 380d514b0f3Smrg 381d514b0f3Smrg Starting from xserver 1.19, the supported way of doing this is to use 382d514b0f3Smrg the SetNotifyFd/RemoveNotifyFd API, which is actually a much better way 383d514b0f3Smrg as it matches very well the 'watch' API spice-server expects Xspice to 384d514b0f3Smrg implement. 385d514b0f3Smrg 386d514b0f3Smrg This commit switches to that new API, which removes the need for 387d514b0f3Smrg RegisterBlockAndWakeupHandlers(). 388d514b0f3Smrg 389d514b0f3Smrg Signed-off-by: Christophe Fergeau <cfergeau@redhat.com> 390d514b0f3Smrg Reviewed-by: Hans de Goede <hdegoede@redhat.com> 391d514b0f3Smrg Acked-by: Uri Lublin <uril@redhat.com> 392d514b0f3Smrg 393d514b0f3Smrgcommit 13d4afc1ba55eaed3e7ed4da8c948d3f334598d3 394d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 395d514b0f3SmrgDate: Thu Apr 14 18:05:59 2016 +0200 396d514b0f3Smrg 397d514b0f3Smrg build-sys: Update for 0.1.5 release 398d514b0f3Smrg 399d514b0f3Smrgcommit ce00ab5df8cee45b0dc029973d6eeb937547144d 400d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 401d514b0f3SmrgDate: Thu Dec 8 09:15:55 2016 +0100 402d514b0f3Smrg 403d514b0f3Smrg spiceqxl: Improve the Xspice and Xorg configuration option descriptions 404d514b0f3Smrg 405d514b0f3Smrg Group the options more logically and improve their descriptions. 406d514b0f3Smrg Add the missing help strings for Xspice --help and standardize the 407d514b0f3Smrg messages to start with a lowercase and not end with a period. 408d514b0f3Smrg In the Xorg configuration, always show the default in the 409d514b0f3Smrg commented-out sample. 410d514b0f3Smrg 411d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 412d514b0f3Smrg Acked-by: Christophe Fergeau <cfergeau@redhat.com> 413d514b0f3Smrg 414d514b0f3Smrgcommit 7657ffb8a5cba20f221c2af93e0c83b81356053c 415d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 416d514b0f3SmrgDate: Fri Oct 28 11:56:47 2016 +0200 417d514b0f3Smrg 418d514b0f3Smrg build: Error out when enabling xspice with X.Org 1.19 419d514b0f3Smrg 420d514b0f3Smrg xspice needs to be updated to cope with some X.Org 1.19 API changes, 421d514b0f3Smrg better to make that explicit at configure time rather than letting 422d514b0f3Smrg people discover the hard way (it builds with warnings but will not work) 423d514b0f3Smrg that it's broken. 424d514b0f3Smrg 425d514b0f3Smrgcommit 4783c5439552a461516a6d917765000a9b60c295 426d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 427d514b0f3SmrgDate: Fri Oct 28 10:54:55 2016 +0200 428d514b0f3Smrg 429d514b0f3Smrg Fix "calles" typo in comment 430d514b0f3Smrg 431d514b0f3Smrgcommit 4fbe63601d5806814b9bcaef07349759a4b0834d 432d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 433d514b0f3SmrgDate: Fri Aug 5 16:58:04 2016 +0200 434d514b0f3Smrg 435d514b0f3Smrg Disable composite/a8 surfaces for KMS 436d514b0f3Smrg 437d514b0f3Smrg This should help with bug #974198 438d514b0f3Smrg 439d514b0f3Smrgcommit 0daf59bd23b8b92b69a28b7bb1fa5961a8e86d97 440d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 441d514b0f3SmrgDate: Fri Aug 5 16:55:31 2016 +0200 442d514b0f3Smrg 443d514b0f3Smrg Disable surfaces when KMS is used 444d514b0f3Smrg 445d514b0f3Smrg This is not working properly at the moment. 446d514b0f3Smrg 447d514b0f3Smrgcommit 4d7160c49614c9132e7b7ae4ccfda952daffeefb 448d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 449d514b0f3SmrgDate: Fri Oct 28 16:50:18 2016 +0200 450d514b0f3Smrg 451d514b0f3Smrg spiceqxl: Remove an unused macro 452d514b0f3Smrg 453d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 454d514b0f3Smrg 455d514b0f3Smrgcommit 9739b6a60459f48044d7ef7fff393e631bcef5bf 456d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 457d514b0f3SmrgDate: Tue Oct 4 13:29:29 2016 +0200 458d514b0f3Smrg 459d514b0f3Smrg Fix crash caused by attempting to access the screen pixmap before it is created 460d514b0f3Smrg 461d514b0f3Smrg qxl_resize_primary_to_virtual() was using pScrn->pScreen != NULL to check 462d514b0f3Smrg if createScreenResources has been called. But starting with xserver 1.19 463d514b0f3Smrg pScrn->pScreen is non NULL even before createScreenResources is called, 464d514b0f3Smrg causing an invalid access to the screenPixmap in 465d514b0f3Smrg qxl_resize_primary_to_virtual(). 466d514b0f3Smrg 467d514b0f3Smrg This commit fixes this. 468d514b0f3Smrg 469d514b0f3Smrg BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1381045 470d514b0f3Smrg Signed-off-by: Hans de Goede <hdegoede@redhat.com> 471d514b0f3Smrg Acked-by: Christophe Fergeau <cfergeau@redhat.com> 472d514b0f3Smrg 473d514b0f3Smrgcommit e13d28ee5d8724fc4b22f26bce01a7d36355f272 474d514b0f3SmrgAuthor: Owen W. Taylor <otaylor@fishsoup.net> 475d514b0f3SmrgDate: Fri Aug 26 11:44:55 2016 -0400 476d514b0f3Smrg 477d514b0f3Smrg Check for either xfont.pc or xfont2.pc 478d514b0f3Smrg 479d514b0f3Smrg More recent versions of Xfont have a different API (with namespacing 480d514b0f3Smrg for libXfont functions.) Check for xfont2.pc and if found, use that, and 481d514b0f3Smrg use the new API. The rational for preferring libXfont2 is that as a recent 482d514b0f3Smrg change the xserver module looks for and requires libXfont2, and it's better 483d514b0f3Smrg not to have both versions of the library in process. 484d514b0f3Smrg 485d514b0f3Smrgcommit 2b7e4fb2c93a2061b79ac8fb37628698d49618cc 486d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 487d514b0f3SmrgDate: Wed Jul 6 16:17:52 2016 +0200 488d514b0f3Smrg 489d514b0f3Smrg Xspice: Add --video-codecs to specify encoder and codec preferences 490d514b0f3Smrg 491d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 492d514b0f3Smrg Acked-by: Jeremy White <jwhite@codeweavers.com> 493d514b0f3Smrg 494d514b0f3Smrgcommit 14ff3c26e204d334a9c110debfaa2ef8cab97bf6 495d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 496d514b0f3SmrgDate: Thu Jul 7 15:23:56 2016 +0200 497d514b0f3Smrg 498d514b0f3Smrg spiceqxl: Add SpiceVideoCodecs to specify video codec preference 499d514b0f3Smrg 500d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 501d514b0f3Smrg Signed-off-by: Jeremy White <jwhite@codeweavers.com> 502d514b0f3Smrg 503d514b0f3Smrgcommit edd1a409f879f74193c2789f50240005bcf00783 504d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 505d514b0f3SmrgDate: Tue Apr 5 18:17:26 2016 +0200 506d514b0f3Smrg 507d514b0f3Smrg xspice: Don't create Xorg time in timer_add 508d514b0f3Smrg 509d514b0f3Smrg SpiceCoreInterface::timer_add() is used by spice-server for integration 510d514b0f3Smrg with external mainloops. timer_add() is only meant to create a disabled 511d514b0f3Smrg timer, this timer will then be started with a call to timer_start(). 512d514b0f3Smrg 513d514b0f3Smrg The current implementation in Xspice creates a timer which will trigger 514d514b0f3Smrg in a very long time, assuming this will never happen. This 'forever' is 515d514b0f3Smrg 1,000,000 seconds, which amounts to 11 days. After that time, some 516d514b0f3Smrg timers which are meant to be disabled (eg migration related timers in 517d514b0f3Smrg spice-server) fire, then causing a crash with some failed assertions. 518d514b0f3Smrg 519d514b0f3Smrg Instead of creating the X timer right away in timer_add(), we can wait 520d514b0f3Smrg until timer_start() is called before starting it, which avoids this 521d514b0f3Smrg issue. 522d514b0f3Smrg 523d514b0f3Smrgcommit 76fd0a374f6879fba6f1d281d06003937ad4980c 524d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 525d514b0f3SmrgDate: Fri Mar 18 15:32:22 2016 +0100 526d514b0f3Smrg 527d514b0f3Smrg spiceqxl_audio: Stop the playback channel if there is nothing to play 528d514b0f3Smrg 529d514b0f3Smrg This lets the client free the audio resources when an audio application 530d514b0f3Smrg is not actually playing anything, typically because playback is paused. 531d514b0f3Smrg This matches QEMU's behavior. 532d514b0f3Smrg As a side benefit it stops the client's mm-time from being stuck (due 533d514b0f3Smrg to the audio backend's delay updates being applied to the mm-time of 534d514b0f3Smrg the last audio message) which lets video streams play in this situation. 535d514b0f3Smrg 536d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 537d514b0f3Smrg 538d514b0f3Smrgcommit 5f5b502ecdae7fb4e37e9285be9ee7a2107aff28 539d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 540d514b0f3SmrgDate: Fri Mar 18 15:32:17 2016 +0100 541d514b0f3Smrg 542d514b0f3Smrg spiceqxl_audio: Only start the playback channel when fifos are present 543d514b0f3Smrg 544d514b0f3Smrg This lets the client free the audio resources when they are not needed. 545d514b0f3Smrg This matches QEMU's behavior. 546d514b0f3Smrg As a side benefit it stops the client's mm-time from being stuck (due 547d514b0f3Smrg to the audio backend's delay updates being applied to the mm-time of 548d514b0f3Smrg the last audio message, that is the channel's creation) when no audio 549d514b0f3Smrg application is running. 550d514b0f3Smrg 551d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 552d514b0f3Smrg 553d514b0f3Smrgcommit 5671929aecb742e7aaee4f4caf5e00cff344769a 554d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 555d514b0f3SmrgDate: Fri Mar 18 15:32:11 2016 +0100 556d514b0f3Smrg 557d514b0f3Smrg spiceqxl_audio: Fix a race condition in the audio playback 558d514b0f3Smrg 559d514b0f3Smrg can_feed() depends on the time and thus could return false in 560d514b0f3Smrg process_fifos(), causing it to stop reading from the fifos, and then 561d514b0f3Smrg true in watch_or_wait() so that the wall_timer would not be set, but 562d514b0f3Smrg the fifos would not be watched either because they already contain 563d514b0f3Smrg data to process. The audio playback would then come to a stop. 564d514b0f3Smrg 565d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 566d514b0f3Smrg 567d514b0f3Smrgcommit 0d20d7d8425f397bdb15288747321fbc6d01820e 568d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 569d514b0f3SmrgDate: Fri Mar 18 15:32:07 2016 +0100 570d514b0f3Smrg 571d514b0f3Smrg spiceqxl_audio: Only condense the fifo list when one has been closed 572d514b0f3Smrg 573d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 574d514b0f3Smrg 575d514b0f3Smrgcommit 692df47b261d38dcd2df23d855032a262359fd5e 576d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 577d514b0f3SmrgDate: Fri Mar 18 15:32:03 2016 +0100 578d514b0f3Smrg 579d514b0f3Smrg spiceqxl_audio: Let the audio play when no client is connected 580d514b0f3Smrg 581d514b0f3Smrg Simply keep reading from the fifos in reasonably sized chunks. 582d514b0f3Smrg 583d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 584d514b0f3Smrg 585d514b0f3Smrgcommit 91ee004cda2fb31de75508c44710ac09256edab4 586d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 587d514b0f3SmrgDate: Mon Jan 11 02:21:50 2016 +0100 588d514b0f3Smrg 589d514b0f3Smrg server: Convert qxl->monitors_config to a QXLPHYSICAL using physical_address() 590d514b0f3Smrg 591d514b0f3Smrg This avoids compilation errors with -Werror on 32 bit systems and is 592d514b0f3Smrg more correct than a direct cast. 593d514b0f3Smrg 594d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 595d514b0f3Smrg 596d514b0f3Smrgcommit 67d8beb98cb81d88273ba12f07a270bed9787473 597d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 598d514b0f3SmrgDate: Wed Nov 25 13:36:00 2015 -0600 599d514b0f3Smrg 600d514b0f3Smrg Optimize dfps mode to send updates only for the primary pixmap. 601d514b0f3Smrg 602d514b0f3Smrg We don't need to update the screen when we use a temporary or 603d514b0f3Smrg offscreen pixmap. 604d514b0f3Smrg 605d514b0f3Smrgcommit a8213444463690e4a7a851bd0a41008818bc5c97 606d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 607d514b0f3SmrgDate: Wed Nov 25 11:47:00 2015 -0600 608d514b0f3Smrg 609d514b0f3Smrg Provide an implementation for put_image in dfps mode. 610d514b0f3Smrg 611d514b0f3Smrg This prevents the fallback from calling prepare_access 612d514b0f3Smrg against the whole screen, which in turn keeps us from 613d514b0f3Smrg transmitting the whole screen more than necessary. 614d514b0f3Smrg 615d514b0f3Smrgcommit f448032adebac799830f3ed275a334393c77cef1 616d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 617d514b0f3SmrgDate: Mon Nov 9 10:08:57 2015 -0600 618d514b0f3Smrg 619d514b0f3Smrg XSpice: auto generate temp files for the vdagent process. 620d514b0f3Smrg 621d514b0f3Smrg Signed-off-by: Jeremy White <jwhite@codeweavers.com> 622d514b0f3Smrg 623d514b0f3Smrgcommit b86e2c1b40f6aff42a03dfce9a099c4742a6ee8d 624d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 625d514b0f3SmrgDate: Mon Nov 9 10:08:56 2015 -0600 626d514b0f3Smrg 627d514b0f3Smrg Revise Xspice --auto to use a temporary directory. 628d514b0f3Smrg 629d514b0f3Smrg We will put auto session related items in that directory. 630d514b0f3Smrg 631d514b0f3Smrg Signed-off-by: Jeremy White <jwhite@codeweavers.com> 632d514b0f3Smrg 633d514b0f3Smrgcommit 2448bd2125260376f5ecb7e7dac2a9ef8f953c75 634d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 635d514b0f3SmrgDate: Wed Oct 21 13:25:11 2015 -0500 636d514b0f3Smrg 637d514b0f3Smrg XSpice: allow the udcs socket to be specified, rather than hard coded. 638d514b0f3Smrg 639d514b0f3Smrgcommit 8aabc4ae6150b169cac99285d144b04474e05c0b 640d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 641d514b0f3SmrgDate: Wed Oct 21 13:18:44 2015 -0500 642d514b0f3Smrg 643d514b0f3Smrg Add support for a --numheads option to the Xspice script. 644d514b0f3Smrg 645d514b0f3Smrgcommit 88c3df4a78a165afa7ddde851f047bbb125c1c7d 646d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 647d514b0f3SmrgDate: Mon Nov 2 16:07:43 2015 -0600 648d514b0f3Smrg 649d514b0f3Smrg Xspice: handle parameters with value 0, allows --port 0 650d514b0f3Smrg 651d514b0f3Smrg As of commit f73ca7e4cc090772652611a4e2b8b95ae64319bc, you can now 652d514b0f3Smrg disable the regular port by specifying 0. This change to the Xspice 653d514b0f3Smrg script permits us to take advantage of that change. 654d514b0f3Smrg 655d514b0f3Smrgcommit f73ca7e4cc090772652611a4e2b8b95ae64319bc 656d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 657d514b0f3SmrgDate: Fri Oct 30 10:44:17 2015 -0500 658d514b0f3Smrg 659d514b0f3Smrg Set the regular spice port only once, and then only if it 660d514b0f3Smrg is not disabled. 661d514b0f3Smrg 662d514b0f3Smrg This fixes a bug where Xspice had to listen on two ports, even in an 663d514b0f3Smrg SSL only configuration. 664d514b0f3Smrg 665d514b0f3Smrgcommit 3475eb2cd7b251dd49989c079a2452df67a85b14 666d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 667d514b0f3SmrgDate: Fri Oct 2 11:17:33 2015 -0500 668d514b0f3Smrg 669d514b0f3Smrg Document a number of missing XSpice vdagent options in the example xorg.conf. 670d514b0f3Smrg 671d514b0f3Smrg Also revise the expression of the default value to be consistent. 672d514b0f3Smrg 673d514b0f3Smrgcommit f9652ebbe45d5f313633bd41f15a55cad59b7a68 674d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 675d514b0f3SmrgDate: Mon Oct 19 14:19:36 2015 -0500 676d514b0f3Smrg 677d514b0f3Smrg Correct the XSpice AgentMouse configuration options. 678d514b0f3Smrg 679d514b0f3Smrg Since the introduction of vdagent support in commit 680d514b0f3Smrg 294daff7ea930f338ec6d77ec3465b6f727c168e, the 681d514b0f3Smrg SpiceAgentMouse setting has not really operated correctly. 682d514b0f3Smrg 683d514b0f3Smrg That is, if SpiceVdagentEnabled was true, the value 684d514b0f3Smrg of SpiceAgentMouse was overridden. 685d514b0f3Smrg 686d514b0f3Smrg This patch corrects that. 687d514b0f3Smrg 688d514b0f3Smrg It also shifts the default; that matches qemu, and effectively 689d514b0f3Smrg preserves the current default behavior. 690d514b0f3Smrg 691d514b0f3Smrgcommit 6fa56701128d3050945d7fdf0eae7b74cb34097a 692d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 693d514b0f3SmrgDate: Mon Oct 19 14:11:58 2015 -0500 694d514b0f3Smrg 695d514b0f3Smrg Only watch the uinput channel when an agent is connected. 696d514b0f3Smrg 697d514b0f3Smrg Otherwise, you constantly spin loop, getting a return code of 0, 698d514b0f3Smrg and pegging CPU usage at 100%. 699d514b0f3Smrg 700d514b0f3Smrgcommit 6e588d2a2fe824f8306bfccc647b25fd49841af2 701d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 702d514b0f3SmrgDate: Mon Oct 19 13:57:59 2015 -0500 703d514b0f3Smrg 704d514b0f3Smrg Add and remove the vdagent interface as the vdagent 705d514b0f3Smrg actually connects and disconnects. 706d514b0f3Smrg 707d514b0f3Smrg This means that we do not attempt to use agent mouse 708d514b0f3Smrg mode if there is no connected agent. 709d514b0f3Smrg 710d514b0f3Smrg It fixes a bug which would occur if an agent disconnected 711d514b0f3Smrg after session startup which would result in having no 712d514b0f3Smrg useful mouse. 713d514b0f3Smrg 714d514b0f3Smrgcommit ebd5ef7c18d7c361a31d530b307d36217cc68428 715d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 716d514b0f3SmrgDate: Fri Oct 16 09:16:44 2015 -0500 717d514b0f3Smrg 718d514b0f3Smrg Bug fix: libcacard headers and libraries were not correctly used. 719d514b0f3Smrg 720d514b0f3Smrg Also shift to libspiceccid_la_CFLAGS. 721d514b0f3Smrg 722d514b0f3Smrgcommit dcd02ad2b3b786c6a953e0e02848ae115975fbbf 723d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 724d514b0f3SmrgDate: Mon Aug 31 15:27:11 2015 +0200 725d514b0f3Smrg 726d514b0f3Smrg spiceqxl: Fix formatting of a couple of function calls. 727d514b0f3Smrg 728d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 729d514b0f3Smrg 730d514b0f3Smrgcommit b8f8233d45a4315d4347d59fe0f1987df8d79b76 731d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 732d514b0f3SmrgDate: Mon Aug 31 15:26:43 2015 +0200 733d514b0f3Smrg 734d514b0f3Smrg Xspice: Don't set defaults for the options. 735d514b0f3Smrg 736d514b0f3Smrg Otherwise they override Spice server's real builtin defaults, the Xorg configuration file settings, and even the XSPICE_XXX environment variables. 737d514b0f3Smrg For instance, without this patch calling Xspice _without_ the '--streaming-video' option forces this setting to 'filter', overriding the XSPICE_STREAMING_VIDEO environment variable and the SpiceStreamingVideo spiceqxl.xorg.conf setting. 738d514b0f3Smrg Note that this does not change the option defaults (the Xspice ones matched the spice server ones). 739d514b0f3Smrg 740d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 741d514b0f3Smrg 742d514b0f3Smrgcommit 7dbf51e3ecb0a73b87b88d143bedf27e70cbcfa7 743d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 744d514b0f3SmrgDate: Mon Aug 31 15:29:39 2015 +0200 745d514b0f3Smrg 746d514b0f3Smrg spiceqxl: Reject invalid boolean values, just like for other options. 747d514b0f3Smrg 748d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 749d514b0f3Smrg 750d514b0f3Smrgcommit d3260f741934be08dc033d8d818c383ca42d02ae 751d514b0f3SmrgAuthor: Francois Gouget <fgouget@codeweavers.com> 752d514b0f3SmrgDate: Mon Aug 31 15:29:29 2015 +0200 753d514b0f3Smrg 754d514b0f3Smrg spiceqxl: Recognize the same set of boolean values as in xorg.conf. 755d514b0f3Smrg 756d514b0f3Smrg Issue a warning for invalid values but treat them as TRUE for backward compatibility. 757d514b0f3Smrg 758d514b0f3Smrg Signed-off-by: Francois Gouget <fgouget@codeweavers.com> 759d514b0f3Smrg 760d514b0f3Smrgcommit 2f4a2fe26fb48b4a093426cf4efe14664f779501 761d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 762d514b0f3SmrgDate: Sun Jan 4 14:22:28 2015 +0200 763d514b0f3Smrg 764d514b0f3Smrg uxa: fix compiler warnings (initialize width, height, [xy]Dst_copy) 765d514b0f3Smrg 766d514b0f3Smrg Some compiler warnings for example: 767d514b0f3Smrg uxa-glyphs.c:1045: warning: ‘width’ may be used uninitialized in this function 768d514b0f3Smrg uxa-glyphs.c:1045: warning: ‘height’ may be used uninitialized in this function 769d514b0f3Smrg uxa-render.c:1090: warning: ‘xDst_copy’ may be used uninitialized in this function 770d514b0f3Smrg uxa-render.c:1090: warning: ‘yDst_copy’ may be used uninitialized in this function 771d514b0f3Smrg 772d514b0f3Smrg I think these can never actually happen as the code protects use of 773d514b0f3Smrg those uninitialized variables, but I'd not "argue" with the compiler. 774d514b0f3Smrg 775d514b0f3Smrgcommit e8afc2cd2406fa8ce95d277b18a692a65a833295 776d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 777d514b0f3SmrgDate: Mon Aug 10 17:40:31 2015 +0200 778d514b0f3Smrg 779d514b0f3Smrg Xspice: Fix 'erorr' typo in error message 780d514b0f3Smrg 781d514b0f3Smrgcommit a9fa26cf13c5b02101bc7eb111a0dfe092542977 782d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 783d514b0f3SmrgDate: Mon Jun 22 19:17:25 2015 +0200 784d514b0f3Smrg 785d514b0f3Smrg Add note about deprecated setting of mm_time 786d514b0f3Smrg 787d514b0f3Smrg spice-server now ignores this mm_time value and sets it itself as it 788d514b0f3Smrg maintains its own timer (see spice-server commit c541d7e2 'Remove guest 789d514b0f3Smrg side video time-stamping') 790d514b0f3Smrg 791d514b0f3Smrgcommit 95f69ec6ed6c59e4a65cdb8ddb0203eb2890ffa6 792d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 793d514b0f3SmrgDate: Fri May 29 15:12:32 2015 +0200 794d514b0f3Smrg 795d514b0f3Smrg Add missing licence header 796d514b0f3Smrg 797d514b0f3Smrgcommit a184774ad161031cceed264d62d48ebd019ac800 798d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 799d514b0f3SmrgDate: Mon Aug 3 20:12:05 2015 +0200 800d514b0f3Smrg 801d514b0f3Smrg Fix compilation with newer Xorg versions 802d514b0f3Smrg 803d514b0f3Smrg Xorg 1.18 stopped exporting some xfont related symbols in its 804d514b0f3Smrg headers/shared libraries, which causes QXL to fail to build: 805d514b0f3Smrg 806d514b0f3Smrg uxa-damage.c:947:5: error: implicit declaration of function 'QueryGlyphExtents' [-Werror=implicit-function-declaration] 807d514b0f3Smrg QueryGlyphExtents(font, charinfo, n, &extents); 808d514b0f3Smrg 809d514b0f3Smrg The missing definition can be found in xfont, so this commit addes the 810d514b0f3Smrg needed configure.ac checks and includes. 811d514b0f3Smrg Note that dixfontstr.h must be included before the xfont headers or this 812d514b0f3Smrg will cause compile-time warnings on older Xorg versions (eg 1.17) 813d514b0f3Smrg 814d514b0f3Smrgcommit 83e00bb5f9b74c0d7059c189d747ec3c24c7798a 815d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 816d514b0f3SmrgDate: Tue Aug 4 17:36:12 2015 +0200 817d514b0f3Smrg 818d514b0f3Smrg Use <> for system-includes 819d514b0f3Smrg 820d514b0f3Smrg These headers come from /usr/include/xorg/ so it's clearer if they are 821d514b0f3Smrg included using <>. While at it, I've reordered them alphabetically. 822d514b0f3Smrg 823d514b0f3Smrgcommit e765cc5ea35bfab017201307b280368400cf1d10 824d514b0f3SmrgAuthor: Javier Celaya <javier.celaya@flexvdi.com> 825d514b0f3SmrgDate: Fri Jun 19 14:05:10 2015 +0200 826d514b0f3Smrg 827d514b0f3Smrg Fix drawable mm_time with KMS 828d514b0f3Smrg 829d514b0f3Smrg When KMS is enabled, the mm_time value of a QXLDrawable is undefined. 830d514b0f3Smrg This results in severe synchronization problems. This patch sets it to 831d514b0f3Smrg zero to force the spice-server to use the local clock. 832d514b0f3Smrg 833d514b0f3Smrgcommit d99213d4a6fe407d4392dcb78c01f58c03b97086 834d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 835d514b0f3SmrgDate: Wed May 27 13:56:20 2015 -0500 836d514b0f3Smrg 837d514b0f3Smrg Do not process watches on select() error. 838d514b0f3Smrg 839d514b0f3Smrg This enables a kill of an Xorg process to propagate further. 840d514b0f3Smrg Without this, the read masks would be set, and we could end up 841d514b0f3Smrg blocking in an accept() call and not exiting from the signal. 842d514b0f3Smrg 843d514b0f3Smrgcommit 8babd05ea9c196390570928a386f5a17a8a37fb9 844d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 845d514b0f3SmrgDate: Wed May 13 19:10:06 2015 +0200 846d514b0f3Smrg 847d514b0f3Smrg kms: do not overwrite screen virtualX/Y 848d514b0f3Smrg 849d514b0f3Smrg The pScrn->currentMode is the resolution of the first monitor, 850d514b0f3Smrg not the resolution of the whole virtual screen. 851d514b0f3Smrg 852d514b0f3Smrg This fixes restarting X when several monitors are enabled. 853d514b0f3Smrg 854d514b0f3Smrgcommit 16ac8fa8fac56a01050ffa9f0978ae04b1a1efa4 855d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 856d514b0f3SmrgDate: Wed May 13 18:12:26 2015 +0200 857d514b0f3Smrg 858d514b0f3Smrg kms: initialize primary surface to screen virtual size 859d514b0f3Smrg 860d514b0f3Smrg The pScrn->virtualX/Y are set after drmmode_pre_init(), use that 861d514b0f3Smrg resolution instead of hard-coded 1024x768. 862d514b0f3Smrg 863d514b0f3Smrg This fixes rendering glitches when restarting X server with 864d514b0f3Smrg different primary size than actual monitor modes. 865d514b0f3Smrg 866d514b0f3Smrgcommit c1e88427d1763bf9bbf9f2dd738980cee644443f 867d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 868d514b0f3SmrgDate: Thu Apr 30 14:32:16 2015 +0200 869d514b0f3Smrg 870d514b0f3Smrg Use pci_io_write8 instead of outb 871d514b0f3Smrg 872d514b0f3Smrg This ensures better portability as some arches (eg aarch64) don't have 873d514b0f3Smrg outb. 874d514b0f3Smrg On linux pci_io_* try to open the sysfs map file corresponding to the 875d514b0f3Smrg I/O port range, which the kernel translates arch-appropriately. If 876d514b0f3Smrg there is no such file then it'll try to use port instructions if that's 877d514b0f3Smrg a thing the architecture has. So you only need one path, pciaccess 878d514b0f3Smrg exists to get the portability right for you. 879d514b0f3Smrg 880d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=1201877 881d514b0f3Smrg 882d514b0f3Smrgcommit 0d96e0f91ecdac46232890ab74b2e624bb4b8bd1 883d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 884d514b0f3SmrgDate: Wed Dec 17 17:06:16 2014 +0100 885d514b0f3Smrg 886d514b0f3Smrg Remove stray blank comment line 887d514b0f3Smrg 888d514b0f3Smrgcommit 5466448f147cd6ec21e11eb2c7d02d541f7667d2 889d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 890d514b0f3SmrgDate: Wed Dec 17 17:05:58 2014 +0100 891d514b0f3Smrg 892d514b0f3Smrg Remove unused variables 893d514b0f3Smrg 894d514b0f3Smrgcommit fc5327bc568a06ed27b536453d26214fad4409c8 895d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 896d514b0f3SmrgDate: Mon Mar 30 17:52:52 2015 +0200 897d514b0f3Smrg 898d514b0f3Smrg Prepare for 0.1.4 release 899d514b0f3Smrg 900d514b0f3Smrgcommit 6af2315d59c6c7f54199c5a264eef90b7dd82cfe 901d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 902d514b0f3SmrgDate: Wed Apr 1 13:54:25 2015 +0200 903d514b0f3Smrg 904d514b0f3Smrg build-sys: use regular variables for LIBUDEV_CFLAGS 905d514b0f3Smrg 906d514b0f3Smrg No need for hardcoded variant here. 907d514b0f3Smrg 908d514b0f3Smrgcommit dce9cf050f1d76a668d2cffc729380e3992607ac 909d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 910d514b0f3SmrgDate: Wed Apr 1 13:53:40 2015 +0200 911d514b0f3Smrg 912d514b0f3Smrg build-sys: misc aligning and trailing ws 913d514b0f3Smrg 914d514b0f3Smrgcommit e4597f711d9e7586adf5fc58887bc3407869361d 915d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 916d514b0f3SmrgDate: Thu Jan 29 14:09:40 2015 +0100 917d514b0f3Smrg 918d514b0f3Smrg Remove image cache 919d514b0f3Smrg 920d514b0f3Smrg While looking for leaks, I realized that the image cache looks 921d514b0f3Smrg quite suspicious. 922d514b0f3Smrg 923d514b0f3Smrg Not only it leaks when qxl_drop_image_cache() is called, 924d514b0f3Smrg since all the allocated image_info_t references are lost. 925d514b0f3Smrg But it is also useless: "The name implies it's a cache of some 926d514b0f3Smrg sort, but data is only added to it. The only time data is looked up in 927d514b0f3Smrg that cache is when it needs to be destroyed, and this is not done 928d514b0f3Smrg correctly and causes leaks. Since the cached data is never used and 929d514b0f3Smrg since it's leaky, it's better to remove it altogether" 930d514b0f3Smrg 931d514b0f3Smrgcommit 2bed9bffd92a1422a460dad37e5fffe820ef2df3 932d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 933d514b0f3SmrgDate: Tue Mar 24 14:13:30 2015 +0100 934d514b0f3Smrg 935d514b0f3Smrg Don't leak ARGB cursor data bo 936d514b0f3Smrg 937d514b0f3Smrg qxl_load_cursor_argb() owns 2 references on the cursor_bo it creates: 938d514b0f3Smrg - one from the call to bo_alloc() 939d514b0f3Smrg - the second from a call to bo_output_bo_reloc() 940d514b0f3Smrg 941d514b0f3Smrg qxl_garbage_collect() release one of these refs, but the other one is 942d514b0f3Smrg never released, so ARGB cursor bos are leaked. This can cause out of 943d514b0f3Smrg memory issues, for example when running EL6 anaconda installer on a 2TB 944d514b0f3Smrg disk image (see bug https://bugzilla.redhat.com/show_bug.cgi?id=1199355 945d514b0f3Smrg ). 946d514b0f3Smrg 947d514b0f3Smrg This commit release the extra ref right after calling push_cursor(). 948d514b0f3Smrg This is similar to what is done in qxl_surface_put_image(). 949d514b0f3Smrg 950d514b0f3Smrgcommit c2879c19331bba3670b01942b13f03cec678a91a 951d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 952d514b0f3SmrgDate: Fri Mar 20 14:23:51 2015 +0100 953d514b0f3Smrg 954d514b0f3Smrg build-sys: Fix indentation of trailing \ in Makefile.am 955d514b0f3Smrg 956d514b0f3Smrg Make sure they are indented with tabs and aligned. 957d514b0f3Smrg 958d514b0f3Smrgcommit 8744beef5a0abacddf1445b1ecc049f42fa14db2 959d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 960d514b0f3SmrgDate: Fri Mar 20 14:21:05 2015 +0100 961d514b0f3Smrg 962d514b0f3Smrg build-sys: Add spiceqxl_smartcard.h to _SOURCES 963d514b0f3Smrg 964d514b0f3Smrg This file needs to be listed in Makefile.am otherwise it will not be 965d514b0f3Smrg added to the tarballs make dist generates. 966d514b0f3Smrg 967d514b0f3Smrgcommit 2dea0e31cd8d33a852d844a51b164873863ad7f0 968d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 969d514b0f3SmrgDate: Fri Mar 13 11:25:35 2015 -0500 970d514b0f3Smrg 971d514b0f3Smrg Spice CCID: Handle server termination. 972d514b0f3Smrg 973d514b0f3Smrgcommit 1cc78bec229dc1ac3867ae3e276d1ca4a309c2c3 974d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 975d514b0f3SmrgDate: Fri Jan 30 08:52:46 2015 -0600 976d514b0f3Smrg 977d514b0f3Smrg Support IFD_RESET, print a diagnostic for unknown power sequences. 978d514b0f3Smrg 979d514b0f3Smrg Also add a message for apdus that come in while a reader is inactive. 980d514b0f3Smrg 981d514b0f3Smrg Remove an obviously unnecessary if stanza. 982d514b0f3Smrg 983d514b0f3Smrgcommit 6f45e758f0a5d7915144250c4032e1ac4fb8c29f 984d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 985d514b0f3SmrgDate: Mon Jan 19 00:17:15 2015 +0200 986d514b0f3Smrg 987d514b0f3Smrg README.xspice: clone and install xkeyboard-config 988d514b0f3Smrg 989d514b0f3Smrg Instead of copying /usr/share/X11/xkb 990d514b0f3Smrg 991d514b0f3Smrgcommit e7b315dfe468eb6212e30c41a61e72486017ee57 992d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 993d514b0f3SmrgDate: Sun Jan 4 18:12:25 2015 +0200 994d514b0f3Smrg 995d514b0f3Smrg README.xspice: clone more repos, add some script lines and more 996d514b0f3Smrg 997d514b0f3Smrg This helps build on a RHEL-6 machine 998d514b0f3Smrg 999d514b0f3Smrgcommit 3a81e5faf0d386885d81ec3f03ad644b93ac0250 1000d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 1001d514b0f3SmrgDate: Sun Jan 4 14:20:46 2015 +0200 1002d514b0f3Smrg 1003d514b0f3Smrg vmc_read: rename variable "read" to "nbytes" 1004d514b0f3Smrg 1005d514b0f3Smrg This fixes the following compiler warning. 1006d514b0f3Smrg spiceqxl_vdagent.c:49: warning: declaration of ‘read’ shadows a global declaration 1007d514b0f3Smrg /usr/include/unistd.h:357: warning: shadowed declaration is here 1008d514b0f3Smrg 1009d514b0f3Smrgcommit 7486ea4dfc7b4c26ef85a1a8a97d54b1cb17ed8b 1010d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 1011d514b0f3SmrgDate: Sun Jan 4 14:19:57 2015 +0200 1012d514b0f3Smrg 1013d514b0f3Smrg playback_dir_changed: rename variable "index" to "offset" 1014d514b0f3Smrg 1015d514b0f3Smrg This fixes the following compiler warning. 1016d514b0f3Smrg spiceqxl_audio.c: In function ‘playback_dir_changed’: 1017d514b0f3Smrg spiceqxl_audio.c:386: warning: declaration of ‘index’ shadows a global declaration 1018d514b0f3Smrg 1019d514b0f3Smrgcommit dde71a523676ea825019786777d6942aecd62f85 1020d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 1021d514b0f3SmrgDate: Sun Dec 28 16:58:45 2014 +0200 1022d514b0f3Smrg 1023d514b0f3Smrg scripts/Xspice: run vdagentd with -f command line option (fake uinput) 1024d514b0f3Smrg 1025d514b0f3Smrg From: "Charles Ricketts <githlar@gmail.com>" 1026d514b0f3Smrg 1027d514b0f3Smrgcommit 0b0cb8e3f8fbb06ab292fa24c2b4e9893a726ca6 1028d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 1029d514b0f3SmrgDate: Mon Jan 5 12:45:03 2015 +0200 1030d514b0f3Smrg 1031d514b0f3Smrg scripts/Xspice: add default spice-vdagent executable names 1032d514b0f3Smrg 1033d514b0f3Smrgcommit e0db34c29c12501bb62eccb66de1cbe0ea0067bd 1034d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 1035d514b0f3SmrgDate: Sun Dec 28 16:57:41 2014 +0200 1036d514b0f3Smrg 1037d514b0f3Smrg scripts/Xspice: better error messages for missing vdagent binaries 1038d514b0f3Smrg 1039d514b0f3Smrg Also added a check for the case variables are uninitialized (or 1040d514b0f3Smrg when the executables are not found and which returns None) 1041d514b0f3Smrg 1042d514b0f3Smrgcommit c096f37454332fa897b5a875e0c3a9fb7d09deb9 1043d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 1044d514b0f3SmrgDate: Sun Jan 18 14:43:35 2015 +0200 1045d514b0f3Smrg 1046d514b0f3Smrg scripts/Xspice: which: warn if executable is not found 1047d514b0f3Smrg 1048d514b0f3Smrg Also handle None parameter case. 1049d514b0f3Smrg 1050d514b0f3Smrgcommit cd96284cf17524a3618ae542d53fa3c987e85a75 1051d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1052d514b0f3SmrgDate: Mon Dec 15 16:24:45 2014 -0600 1053d514b0f3Smrg 1054d514b0f3Smrg Enable smartcard support for XSpice. 1055d514b0f3Smrg 1056d514b0f3Smrg This is done by creating a Unix domain socket to which smartcard 1057d514b0f3Smrg messages are transferred, using the vscard protocol. 1058d514b0f3Smrg 1059d514b0f3Smrg A further system library, spiceccid, is used to provide an interface into 1060d514b0f3Smrg pcsc-lite, specifically the pcsc-lite daemon, so that regular Unix applications 1061d514b0f3Smrg can access the passed through smartcard information. 1062d514b0f3Smrg 1063d514b0f3Smrg Signed-off-by: Jeremy White <jwhite@codeweavers.com> 1064d514b0f3Smrg 1065d514b0f3Smrgcommit 9368451e74c77b3d04383b5b98a1d71e6f12eb55 1066d514b0f3SmrgAuthor: Jonathon Jongsma <jjongsma@redhat.com> 1067d514b0f3SmrgDate: Thu Nov 6 15:40:59 2014 -0600 1068d514b0f3Smrg 1069d514b0f3Smrg Update drm properties correctly 1070d514b0f3Smrg 1071d514b0f3Smrg When connector properties got changed, those changes were not being 1072d514b0f3Smrg propagated to user-space. This pushes those changes up so that e.g. new 1073d514b0f3Smrg "suggested X|Y" properties can be used to help lay out multiple displays 1074d514b0f3Smrg properly. This code is based on similar code from the nouveau driver. 1075d514b0f3Smrg 1076d514b0f3Smrgcommit 97c7c183d7d8585d93eab4f13645acb2d47ca763 1077d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 1078d514b0f3SmrgDate: Mon Nov 3 01:14:48 2014 +0100 1079d514b0f3Smrg 1080d514b0f3Smrg Xspice: fail if server can't be initialized 1081d514b0f3Smrg 1082d514b0f3Smrg Failure to bind to port should be an error, not a warning. 1083d514b0f3Smrg 1084d514b0f3Smrg https://bugs.freedesktop.org/show_bug.cgi?id=65185 1085d514b0f3Smrg 1086d514b0f3Smrgcommit f4964c5666fb61f513d563a5a12463bed1119ea4 1087d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 1088d514b0f3SmrgDate: Thu Oct 30 14:45:31 2014 +0100 1089d514b0f3Smrg 1090d514b0f3Smrg xf86-video-qxl 0.1.3 1091d514b0f3Smrg 1092d514b0f3Smrgcommit 69a273a27242534ebf5535a886e26adfc8f608a0 1093d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1094d514b0f3SmrgDate: Mon Oct 13 18:04:16 2014 -0500 1095d514b0f3Smrg 1096d514b0f3Smrg Revise the XSpice audio processing to avoid the use of pthreads. 1097d514b0f3Smrg 1098d514b0f3Smrg The initial implementation used a separate thread to drive the audio 1099d514b0f3Smrg playback channel. But if you have adaptive streaming turned on, 1100d514b0f3Smrg you will eventually get a update_client_playback_latency message on the 1101d514b0f3Smrg display channel (which in the Xspice case is being driven by the main, 1102d514b0f3Smrg Xorg, thread). 1103d514b0f3Smrg 1104d514b0f3Smrg After enough time you would get a thread collision and bad things 1105d514b0f3Smrg would result. I saw this manifest as infinite spin loops in snd_send_data. 1106d514b0f3Smrg 1107d514b0f3Smrg This patch eliminates the use of threading altogether, making everything 1108d514b0f3Smrg run in the main Xorg thread using watches and timers, eliminating the 1109d514b0f3Smrg possibility of thread collision. 1110d514b0f3Smrg 1111d514b0f3Smrgcommit 0703b14280733142016ae45435a1e54e327dbac5 1112d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 1113d514b0f3SmrgDate: Wed Oct 22 12:10:46 2014 +0200 1114d514b0f3Smrg 1115d514b0f3Smrg drmmode: Fix compilation warning 1116d514b0f3Smrg 1117d514b0f3Smrg One recent change introduced a gcc compilation warning: 1118d514b0f3Smrg 1119d514b0f3Smrg CC qxl_drmmode.lo 1120d514b0f3Smrg qxl_drmmode.c: In function 'drmmode_set_mode_major': 1121d514b0f3Smrg qxl_drmmode.c:251:9: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] 1122d514b0f3Smrg CursorPtr cursor = xf86_config->cursor; 1123d514b0f3Smrg 1124d514b0f3Smrg This commit moves the CursorPtr declaration to the top of the 1125d514b0f3Smrg drmmode_set_mode_major function in order to fix that warning. 1126d514b0f3Smrg 1127d514b0f3Smrgcommit 57ec67c56ea05480eef2df730cef8b0dc790d8ba 1128d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 1129d514b0f3SmrgDate: Thu Oct 16 11:19:05 2014 +0200 1130d514b0f3Smrg 1131d514b0f3Smrg Remove call to CrtcRotate() 1132d514b0f3Smrg 1133d514b0f3Smrg Our driver doesn't support rotation, and calling CrtcRotoate() 1134d514b0f3Smrg may result in crash. Let's remove that useless call. 1135d514b0f3Smrg 1136d514b0f3Smrg Fixes: 1137d514b0f3Smrg http://bugzilla.redhat.com/1067709 1138d514b0f3Smrg 1139d514b0f3Smrgcommit 04f2a5096718b462ca7a38973fdb72df32b21850 1140d514b0f3SmrgAuthor: Marc-Andre Lureau <marcandre.lureau@redhat.com> 1141d514b0f3SmrgDate: Sat Oct 11 21:29:35 2014 +0200 1142d514b0f3Smrg 1143d514b0f3Smrg Check qxl_download_box() arguments 1144d514b0f3Smrg 1145d514b0f3Smrg Sending empty region is invalid and the server returns an error (this 1146d514b0f3Smrg can be triggered by typing space in xfig) 1147d514b0f3Smrg 1148d514b0f3Smrg Without the previous patch, error was ignored and the driver would enter 1149d514b0f3Smrg an infinite loop. 1150d514b0f3Smrg 1151d514b0f3Smrg Assert on valid arguments, and return early if the given region is empty. 1152d514b0f3Smrg 1153d514b0f3Smrg Fixes: 1154d514b0f3Smrg http://bugzilla.redhat.com/1151559 1155d514b0f3Smrg 1156d514b0f3Smrgcommit 41838c66d84c567c086ad236410b659d326ec360 1157d514b0f3SmrgAuthor: Marc-Andre Lureau <marcandre.lureau@redhat.com> 1158d514b0f3SmrgDate: Fri Oct 10 19:22:03 2014 +0200 1159d514b0f3Smrg 1160d514b0f3Smrg Assert on QXL_INTERRUPT_ERROR 1161d514b0f3Smrg 1162d514b0f3Smrg When qemu qxl device reaches a guest bug, it might set the 1163d514b0f3Smrg QXL_INTERRUPT_ERROR interrupt flag, and stops processing guest 1164d514b0f3Smrg commands. Therefore, it makes sense to check that flag in the guest and 1165d514b0f3Smrg quit, instead of running in infinite loop in X and consuming CPU. 1166d514b0f3Smrg 1167d514b0f3Smrg Related to: 1168d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=1151559 1169d514b0f3Smrg 1170d514b0f3Smrgcommit a3704bda41737263e8a547fb3d97ba818935d768 1171d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@redhat.com> 1172d514b0f3SmrgDate: Fri Aug 8 19:24:28 2014 +0200 1173d514b0f3Smrg 1174d514b0f3Smrg drm: fail gracefuly on monitor resize 1175d514b0f3Smrg 1176d514b0f3Smrg If drmModeSetCrtc() failed, try to fallback to previous working 1177d514b0f3Smrg configuration. 1178d514b0f3Smrg 1179d514b0f3Smrg Related to: 1180d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=1127552 1181d514b0f3Smrg 1182d514b0f3Smrgcommit 1df926cae94cbd9e677209fa164e38af9cbaeead 1183d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1184d514b0f3SmrgDate: Mon Sep 15 11:25:14 2014 -0500 1185d514b0f3Smrg 1186d514b0f3Smrg In XSpice audio, fully clear the data structure; silences valgrind warnings. 1187d514b0f3Smrg 1188d514b0f3Smrgcommit 32512fc645286512c35a6da754ab1bc36be54f8f 1189d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1190d514b0f3SmrgDate: Fri Sep 12 14:22:45 2014 -0500 1191d514b0f3Smrg 1192d514b0f3Smrg When uploading a region, do not go outside the source image size. 1193d514b0f3Smrg 1194d514b0f3Smrg This problem was exposed (and probably only occurs) when using XSpice 1195d514b0f3Smrg in dfps mode with spice-html5, and resizing from larger to smaller. 1196d514b0f3Smrg The screen would be resized, but the update region would still attempt 1197d514b0f3Smrg to transmit any pending changes to the (now) truncated surface. This 1198d514b0f3Smrg would often lead to a crash. 1199d514b0f3Smrg 1200d514b0f3Smrgcommit f4fdad43dfb7eb45e7208e3cc867d3b6b93dacdb 1201d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1202d514b0f3SmrgDate: Fri Sep 12 14:19:41 2014 -0500 1203d514b0f3Smrg 1204d514b0f3Smrg Initialize the frame buffer used in dfps mode; this silences a number 1205d514b0f3Smrg of valgrind errors. 1206d514b0f3Smrg 1207d514b0f3Smrgcommit 09144c43a2306db0615cf3564db67cf6b4c5f0a5 1208d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1209d514b0f3SmrgDate: Fri Sep 19 10:34:26 2014 -0500 1210d514b0f3Smrg 1211d514b0f3Smrg Tune the dfps region tracking to collapse to the bounding rectangle 1212d514b0f3Smrg if too many small, incremental, updates are provided. 1213d514b0f3Smrg 1214d514b0f3Smrg Attempting to use x11perf to measure performance revealed a fairly 1215d514b0f3Smrg serious weakness in the dfps code in that use case. In between 1216d514b0f3Smrg fps ticks, the updated_region would grow to have thousands of 1217d514b0f3Smrg rectangles, which made processing extraordinarily slow. 1218d514b0f3Smrg 1219d514b0f3Smrg This patch provides a cap on the number of rectangles inside 1220d514b0f3Smrg a region; once it reaches the cap, we collapse the update_region 1221d514b0f3Smrg to just transmit the bounding rectangle instead. 1222d514b0f3Smrg 1223d514b0f3Smrgcommit 1c29941d7a9fd2204daf29bdd530bf18216f1f91 1224d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1225d514b0f3SmrgDate: Fri Sep 19 10:33:16 2014 -0500 1226d514b0f3Smrg 1227d514b0f3Smrg Add helper functions for updating the boxes and regions; makes the 1228d514b0f3Smrg code a bit cleaner. 1229d514b0f3Smrg 1230d514b0f3Smrgcommit 9ab3f1bcb970e1cec0865f0fafbcc88f8022f9e5 1231d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1232d514b0f3SmrgDate: Fri Aug 22 10:07:34 2014 -0500 1233d514b0f3Smrg 1234d514b0f3Smrg In XSpice mode, enable the ability to specify the various ram buffer sizes. 1235d514b0f3Smrg 1236d514b0f3Smrg Also adjust the mode selection to fit, and add a few larger modes. 1237d514b0f3Smrg 1238d514b0f3Smrgcommit 539ca283380c197d4c3ba612ca90b26d1f696b01 1239d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1240d514b0f3SmrgDate: Fri Aug 22 09:45:49 2014 -0500 1241d514b0f3Smrg 1242d514b0f3Smrg The display of the RAM size subtracts the frame buffer, but it has 1243d514b0f3Smrg already been subtracted in setting the num_pages field. 1244d514b0f3Smrg 1245d514b0f3Smrgcommit c63b2fc540a844196f5f015853ca69f9b91e4fed 1246d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1247d514b0f3SmrgDate: Thu Aug 21 13:45:02 2014 -0500 1248d514b0f3Smrg 1249d514b0f3Smrg Skip modes more precisely. 1250d514b0f3Smrg 1251d514b0f3Smrgcommit fc0a006e4996bebd147216ffde184b4fda0f71bf 1252d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1253d514b0f3SmrgDate: Mon Aug 18 13:38:09 2014 -0500 1254d514b0f3Smrg 1255d514b0f3Smrg Free the region pointer as well; eliminates a memory leak in dfps mode. 1256d514b0f3Smrg 1257d514b0f3Smrgcommit 6210f34e3570341e0b6318c3fc2e2cc2cf6e5d82 1258d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1259d514b0f3SmrgDate: Wed Jul 23 11:21:03 2014 +0300 1260d514b0f3Smrg 1261d514b0f3Smrg Release 0.1.2 1262d514b0f3Smrg 1263d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1264d514b0f3Smrg 1265d514b0f3Smrgcommit 76d82060dff80417cdc58de49acd72b9ce91bf4c 1266d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1267d514b0f3SmrgDate: Mon Jun 9 16:08:13 2014 +0300 1268d514b0f3Smrg 1269d514b0f3Smrg qxl_driver.c: fix compiler warning 'defined but not used' qxl_kernel_mode_enabled 1270d514b0f3Smrg 1271d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1272d514b0f3Smrg 1273d514b0f3Smrgcommit cf16a40ebde42478a1edd5fbfe841f69b2c9c37f 1274d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1275d514b0f3SmrgDate: Wed Jun 25 14:53:14 2014 +0300 1276d514b0f3Smrg 1277d514b0f3Smrg qxl_image.c: fix compilation break 1278d514b0f3Smrg 1279d514b0f3Smrg Since 3d511c30206bd8c9a207c436186a03af0bb02962 Xspice building is broken 1280d514b0f3Smrg due to undefined MAX_RELOCS when not building with XF86DRM_MODE. 1281d514b0f3Smrg 1282d514b0f3Smrgcommit 17e2ee0d904f35d4fe756ca2d9cd100e15663018 1283d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 1284d514b0f3SmrgDate: Wed Jul 2 12:22:46 2014 +0200 1285d514b0f3Smrg 1286d514b0f3Smrg drm: restore cursor after resolution change 1287d514b0f3Smrg 1288d514b0f3Smrg The Spice server & qemu reset the cursor state when 1289d514b0f3Smrg changing resolution. Although X does restore the 1290d514b0f3Smrg cursor on framebuffer changes, it doesn't for crtc 1291d514b0f3Smrg config. Restoring the cursor here is the simplest 1292d514b0f3Smrg way to solve the "invisible cursor" after resolution 1293d514b0f3Smrg change bug with DRM driver. 1294d514b0f3Smrg 1295d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=1030531 1296d514b0f3Smrg 1297d514b0f3Smrgcommit 3d511c30206bd8c9a207c436186a03af0bb02962 1298d514b0f3SmrgAuthor: David Mansfield <spice@dm.cobite.com> 1299d514b0f3SmrgDate: Tue Jun 3 10:05:42 2014 -0400 1300d514b0f3Smrg 1301d514b0f3Smrg Dynamically adjust chunk size to avoid command buffer overflow. 1302d514b0f3Smrg 1303d514b0f3Smrg The maximum number of "commands" that can be queued at once is 1304d514b0f3Smrg fixed at compile time at MAX_RELOCS. However, during the creation 1305d514b0f3Smrg of an image object in qxl_image_create(), the image is split into 1306d514b0f3Smrg commands of maximum size 512*512. For a large dual-head system, 1307d514b0f3Smrg it is easy to create an image for which the number of chunks will 1308d514b0f3Smrg result in an overflow of MAX_RELOCS number of "commands". 1309d514b0f3Smrg 1310d514b0f3Smrg Identify this scenario and dynamically increase the chunk size to 1311d514b0f3Smrg avoid the overflow, and the resulting assert() which crashes Xorg. 1312d514b0f3Smrg 1313d514b0f3Smrg Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=79317 1314d514b0f3Smrg Signed-off-by: David Mansfield <spice@dm.cobite.com> 1315d514b0f3Smrg 1316d514b0f3Smrgcommit cbe70e99136eca3f1eb00048e98ccad653897dd5 1317d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 1318d514b0f3SmrgDate: Wed Apr 23 17:50:41 2014 +0200 1319d514b0f3Smrg 1320d514b0f3Smrg Add support for server managed fds 1321d514b0f3Smrg 1322d514b0f3Smrg Signed-off-by: Hans de Goede <hdegoede@redhat.com> 1323d514b0f3Smrg 1324d514b0f3Smrgcommit a7115f636bc1054c350b7a6a9557ecb944188596 1325d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 1326d514b0f3SmrgDate: Wed Apr 23 17:35:24 2014 +0200 1327d514b0f3Smrg 1328d514b0f3Smrg Fix qxl_driver_func to adhere to the API 1329d514b0f3Smrg 1330d514b0f3Smrg The driverFunc callback MUST check the passed in operand and only return 1331d514b0f3Smrg TRUE it if understands it and has handled it. It must NOT blindly assume the 1332d514b0f3Smrg op is GET_REQUIRED_HW_INTERFACES. 1333d514b0f3Smrg 1334d514b0f3Smrg While at also always define driverFunc, and welcome qxl to the 21st century. 1335d514b0f3Smrg 1336d514b0f3Smrg Signed-off-by: Hans de Goede <hdegoede@redhat.com> 1337d514b0f3Smrg 1338d514b0f3Smrgcommit 463084aa8e73fbafb8dc404e2bd458548d04e9dc 1339d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 1340d514b0f3SmrgDate: Wed Apr 23 17:28:28 2014 +0200 1341d514b0f3Smrg 1342d514b0f3Smrg Add support for XSERVER_PLATFORM_BUS 1343d514b0f3Smrg 1344d514b0f3Smrg This is a preparation patch for adding support for server managed fds. 1345d514b0f3Smrg 1346d514b0f3Smrg Signed-off-by: Hans de Goede <hdegoede@redhat.com> 1347d514b0f3Smrg 1348d514b0f3Smrgcommit 9123b177eeeae53c5faf106eaf6d0f811efd6186 1349d514b0f3SmrgAuthor: longguang.yue <longguang.yue@gmail.com> 1350d514b0f3SmrgDate: Thu Mar 27 00:21:05 2014 +0800 1351d514b0f3Smrg 1352d514b0f3Smrg fix memory leak when alloc uxa 1353d514b0f3Smrg 1354d514b0f3Smrgcommit 9971a5ce9007c23fffb4221cbff7c125660929bd 1355d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1356d514b0f3SmrgDate: Mon Mar 31 09:53:24 2014 -0500 1357d514b0f3Smrg 1358d514b0f3Smrg Make use of the new playback rate interface, if available. 1359d514b0f3Smrg 1360d514b0f3Smrgcommit e543c6ba78d0be27d29a4f50a6641208161556c2 1361d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1362d514b0f3SmrgDate: Fri Feb 28 11:59:15 2014 +1000 1363d514b0f3Smrg 1364d514b0f3Smrg qxl: fix set cursor2 support for older kernel 1365d514b0f3Smrg 1366d514b0f3Smrg On older kernels we were getting -EINVAL not -ENOSYS, 1367d514b0f3Smrg so we'd never render the cursor, gnome continuous uses a 3.10 1368d514b0f3Smrg kernel. 1369d514b0f3Smrg 1370d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1371d514b0f3Smrg 1372d514b0f3Smrgcommit 9f9709b3dcdf2c8475d67cb42c8765ce17165b8b 1373d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1374d514b0f3SmrgDate: Sun Oct 27 12:01:46 2013 +0200 1375d514b0f3Smrg 1376d514b0f3Smrg Xspice: add better doc strings for audio & vdagent 1377d514b0f3Smrg 1378d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1379d514b0f3Smrg 1380d514b0f3Smrgcommit d6066e77c12f6a6273b7b57c3d3a37df2be9a0b4 1381d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1382d514b0f3SmrgDate: Sun Oct 27 11:50:28 2013 +0200 1383d514b0f3Smrg 1384d514b0f3Smrg spiceqxl_util.[hc]: add copyright & license headers 1385d514b0f3Smrg 1386d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1387d514b0f3Smrg 1388d514b0f3Smrgcommit c1b698baf3a5d653854c69a12f2d3cb76991b406 1389d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1390d514b0f3SmrgDate: Mon Oct 21 18:26:12 2013 +0300 1391d514b0f3Smrg 1392d514b0f3Smrg Xspice: cleanup vdagent files 1393d514b0f3Smrg 1394d514b0f3Smrgcommit eb437149e26c995aac780dc8bb67ea41275d0429 1395d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1396d514b0f3SmrgDate: Mon Oct 21 18:26:02 2013 +0300 1397d514b0f3Smrg 1398d514b0f3Smrg Xspice: fix cleanup when some processes are already dead 1399d514b0f3Smrg 1400d514b0f3Smrgcommit a778d9da649b16098ab3721f135bd7508bc32167 1401d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1402d514b0f3SmrgDate: Mon Oct 21 18:25:47 2013 +0300 1403d514b0f3Smrg 1404d514b0f3Smrg Xspice: cleanup non regular files too 1405d514b0f3Smrg 1406d514b0f3Smrgcommit e1b4022a0d2c598e5d5dead8d770f5e7d0de5a0c 1407d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1408d514b0f3SmrgDate: Mon Oct 21 18:22:15 2013 +0300 1409d514b0f3Smrg 1410d514b0f3Smrg xspice: chown both files used by vdagent for suid Xorg case 1411d514b0f3Smrg 1412d514b0f3Smrg When running a suid Xorg mkfifo and bind produce files owned by root. 1413d514b0f3Smrg Change the ownership so that the user launched vdagent & vdagentd can 1414d514b0f3Smrg write to them. This also makes it easier to cleanup the files from the 1415d514b0f3Smrg Xspice process that is not running as root (and is launching both 1416d514b0f3Smrg vdagent & vdagentd, hence they are not running as root either). 1417d514b0f3Smrg 1418d514b0f3Smrg The patch adds two new parameters, uid and gid of the agent used files, 1419d514b0f3Smrg namely the virtio unix domain socket and the uinput fifo. 1420d514b0f3Smrg 1421d514b0f3Smrgcommit 5f23159d86e94d599301581f25a6e13fe3a050b9 1422d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1423d514b0f3SmrgDate: Mon Oct 21 11:57:43 2013 +0300 1424d514b0f3Smrg 1425d514b0f3Smrg spiceqxl_spice_server: no need to call spice_server_set_noauth twice 1426d514b0f3Smrg 1427d514b0f3Smrgcommit 1b4c1dd47e7876f85a5e6338f3561e718cb39929 1428d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1429d514b0f3SmrgDate: Mon Oct 21 11:21:44 2013 +0300 1430d514b0f3Smrg 1431d514b0f3Smrg tests/xspice_util.py: fix hardcoded port 1432d514b0f3Smrg 1433d514b0f3Smrgcommit 516c07ea582db00aac75133e5bbd8f8647900bd7 1434d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1435d514b0f3SmrgDate: Sun Oct 20 18:39:14 2013 +0300 1436d514b0f3Smrg 1437d514b0f3Smrg fix make dist 1438d514b0f3Smrg 1439d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1440d514b0f3Smrg 1441d514b0f3Smrgcommit b8b67dc138092de488fb6ef62ce4bcb99aaa881a 1442d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1443d514b0f3SmrgDate: Sun Oct 20 17:59:07 2013 +0300 1444d514b0f3Smrg 1445d514b0f3Smrg Release 0.1.1 1446d514b0f3Smrg 1447d514b0f3Smrgcommit 27cb65b1ad669789bebef356ea9086491dbed382 1448d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1449d514b0f3SmrgDate: Sun Oct 20 16:33:39 2013 +0300 1450d514b0f3Smrg 1451d514b0f3Smrg xspice: add tests for audio remoting 1452d514b0f3Smrg 1453d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1454d514b0f3Smrg 1455d514b0f3Smrgcommit 7d84ff3a11d61d0619ab3492097b493d08e97ad2 1456d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1457d514b0f3SmrgDate: Sun Oct 20 16:32:54 2013 +0300 1458d514b0f3Smrg 1459d514b0f3Smrg Xspice: kill Xorg process on SIGTERM 1460d514b0f3Smrg 1461d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1462d514b0f3Smrg 1463d514b0f3Smrgcommit 715707cf3038447138c5408e6ed91d788c7e37fa 1464d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1465d514b0f3SmrgDate: Sun Oct 20 15:36:30 2013 +0300 1466d514b0f3Smrg 1467d514b0f3Smrg qxl_image: fix build break once MIN/MAX switched to spice-protocol 1468d514b0f3Smrg 1469d514b0f3Smrg In commit 5e122e4ab1ac35186cc610cd0d518cfd5e78d902 1470d514b0f3Smrg 1471d514b0f3Smrgcommit 48d762993653d1d88da4b93a646bafd844507f26 1472d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1473d514b0f3SmrgDate: Sun Oct 13 15:39:43 2013 +0300 1474d514b0f3Smrg 1475d514b0f3Smrg spiceqxl_audio: fix possible buffer overflow (clang) 1476d514b0f3Smrg 1477d514b0f3Smrg I've tested this. Previously strncat was used incorrectly, it is 1478d514b0f3Smrg replaced with snprintf per Uri's suggestion. 1479d514b0f3Smrg 1480d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1481d514b0f3Smrg 1482d514b0f3Smrgcommit 2ed03db1ae39f26b4ba62a7db140a56f9acbe4bc 1483d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1484d514b0f3SmrgDate: Wed Oct 16 15:22:26 2013 +0300 1485d514b0f3Smrg 1486d514b0f3Smrg Xspice: add --audio-fifo-dir 1487d514b0f3Smrg 1488d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1489d514b0f3Smrg 1490d514b0f3Smrgcommit a6ce6b285e6f4783b63cc0af309562771b516dfc 1491d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1492d514b0f3SmrgDate: Sun Oct 13 15:39:11 2013 +0300 1493d514b0f3Smrg 1494d514b0f3Smrg uxa: use PIXMAN consts instead of PICT in some places (silence clang warning) 1495d514b0f3Smrg 1496d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1497d514b0f3Smrg 1498d514b0f3Smrgcommit 8afb354f094e253585b93108175793fe7bf13606 1499d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1500d514b0f3SmrgDate: Sun Oct 13 15:38:35 2013 +0300 1501d514b0f3Smrg 1502d514b0f3Smrg spiceqxl_display: add noreturn attribute (silence clang warning) 1503d514b0f3Smrg 1504d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1505d514b0f3Smrg 1506d514b0f3Smrgcommit 2f7e4c845366328e4f561654e0c38314c7aafe69 1507d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1508d514b0f3SmrgDate: Sun Oct 13 15:38:16 2013 +0300 1509d514b0f3Smrg 1510d514b0f3Smrg qxl_get_formats: use surface enum, not bitmap (fixes clang warning) 1511d514b0f3Smrg 1512d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1513d514b0f3Smrg 1514d514b0f3Smrgcommit 70884bd353c34c0be23c2b21eec320cd8c637f4f 1515d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1516d514b0f3SmrgDate: Thu Oct 17 14:08:06 2013 -0500 1517d514b0f3Smrg 1518d514b0f3Smrg Use non deprecated functions, removes warnings from build. 1519d514b0f3Smrg 1520d514b0f3Smrgcommit 5e122e4ab1ac35186cc610cd0d518cfd5e78d902 1521d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1522d514b0f3SmrgDate: Thu Oct 17 14:07:29 2013 -0500 1523d514b0f3Smrg 1524d514b0f3Smrg Remove MAX/MIN macros that are now included via spice/macros.h. 1525d514b0f3Smrg 1526d514b0f3Smrgcommit 78f1115d11bea8be572e6959fa4db0313454b318 1527d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1528d514b0f3SmrgDate: Mon Sep 2 17:40:20 2013 +0300 1529d514b0f3Smrg 1530d514b0f3Smrg Xspice: vdagent{,d} launching support 1531d514b0f3Smrg 1532d514b0f3Smrg It checks for a new enough vdagentd/vdagent via the new -S command line 1533d514b0f3Smrg parameter available via "vdagentd -h" and "vdagent -h". 1534d514b0f3Smrg 1535d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1536d514b0f3Smrg 1537d514b0f3Smrgcommit aa9d1cc75d494ae2d33ee2c925a35338ce85f4c2 1538d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1539d514b0f3SmrgDate: Mon Sep 2 17:39:51 2013 +0300 1540d514b0f3Smrg 1541d514b0f3Smrg Xspice: require display parameter, and set if earlier in environment 1542d514b0f3Smrg 1543d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1544d514b0f3Smrg 1545d514b0f3Smrgcommit dc451204ec5a4abceac977d99893918091324271 1546d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1547d514b0f3SmrgDate: Mon Sep 2 17:39:11 2013 +0300 1548d514b0f3Smrg 1549d514b0f3Smrg Xspice: correct doc string 1550d514b0f3Smrg 1551d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1552d514b0f3Smrg 1553d514b0f3Smrgcommit 9f4e429c13fd6e56a200d58c735b37d7eeb671fe 1554d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1555d514b0f3SmrgDate: Mon Sep 2 17:38:45 2013 +0300 1556d514b0f3Smrg 1557d514b0f3Smrg Xspice: use subprocess.Popen, nicer cleanup of files/processes 1558d514b0f3Smrg 1559d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1560d514b0f3Smrg 1561d514b0f3Smrgcommit a6d00dccbf8257c0d225e0886cb2d4a8ba60fe38 1562d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1563d514b0f3SmrgDate: Mon Sep 2 17:28:50 2013 +0300 1564d514b0f3Smrg 1565d514b0f3Smrg xspice: add uinput support to vdagent support 1566d514b0f3Smrg 1567d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1568d514b0f3Smrg 1569d514b0f3Smrgcommit 294daff7ea930f338ec6d77ec3465b6f727c168e 1570d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1571d514b0f3SmrgDate: Mon Sep 2 17:32:16 2013 +0300 1572d514b0f3Smrg 1573d514b0f3Smrg xspice: add vdagent support 1574d514b0f3Smrg 1575d514b0f3Smrg Adds a configurable virtio path used to communicate with the vdagentd, 1576d514b0f3Smrg and a configuration variable for enabling the thing. 1577d514b0f3Smrg 1578d514b0f3Smrg With this you can have multiple monitors, but due to usage of a tablet 1579d514b0f3Smrg you cannot generate pointer events on and monitors besides the first. 1580d514b0f3Smrg 1581d514b0f3Smrg clipboard already works. 1582d514b0f3Smrg 1583d514b0f3Smrg The next patch adds uinput emulation to let vdagentd generate uinput 1584d514b0f3Smrg events and fix this glitch. 1585d514b0f3Smrg 1586d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1587d514b0f3Smrg 1588d514b0f3Smrgcommit 9d8a953c8c64cb3d896ad5ae9a534e6a5b71a2f5 1589d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1590d514b0f3SmrgDate: Mon Sep 2 17:45:38 2013 +0300 1591d514b0f3Smrg 1592d514b0f3Smrg qxl_option_helpers: add required includes 1593d514b0f3Smrg 1594d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1595d514b0f3Smrg 1596d514b0f3Smrgcommit cfdd8e58df1afd073abf6b0db804f3e10724317d 1597d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1598d514b0f3SmrgDate: Mon Sep 2 16:34:41 2013 +0300 1599d514b0f3Smrg 1600d514b0f3Smrg spiceqxl_inputs: expose buttons & position api for agent usage 1601d514b0f3Smrg 1602d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1603d514b0f3Smrg 1604d514b0f3Smrgcommit 9f4c7aed3c75e4214cd16f28b890d6b99f6a2946 1605d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1606d514b0f3SmrgDate: Mon Sep 2 16:32:22 2013 +0300 1607d514b0f3Smrg 1608d514b0f3Smrg xspice: zero memory on allocation, fix uninitialized use (valgrind reported) 1609d514b0f3Smrg 1610d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1611d514b0f3Smrg 1612d514b0f3Smrgcommit 9bc5e720f20caf91f95c1fb56bc6ac8c24725eb8 1613d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1614d514b0f3SmrgDate: Sun Sep 1 17:43:00 2013 +0300 1615d514b0f3Smrg 1616d514b0f3Smrg xspice: support sending monitors config 1617d514b0f3Smrg 1618d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1619d514b0f3Smrg 1620d514b0f3Smrgcommit 751d51c3a5cb67d9d1e14d9fc43da20b226a99f3 1621d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1622d514b0f3SmrgDate: Mon Oct 14 12:26:06 2013 +0300 1623d514b0f3Smrg 1624d514b0f3Smrg fix undefined symbol qxl_enter_vt_kms for XSPICE 1625d514b0f3Smrg 1626d514b0f3Smrgcommit d38b40046df43810ae79628b5424d7b621307795 1627d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1628d514b0f3SmrgDate: Tue Oct 1 14:00:38 2013 -0500 1629d514b0f3Smrg 1630d514b0f3Smrg Handle a missed case where lack of kms doesn't work with XSpice. 1631d514b0f3Smrg 1632d514b0f3Smrgcommit 14dcb4016ec2f940dbef175b55875f0ac8c14f5c 1633d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1634d514b0f3SmrgDate: Wed Sep 25 08:31:14 2013 +1000 1635d514b0f3Smrg 1636d514b0f3Smrg fix build with --disable-kms 1637d514b0f3Smrg 1638d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1639d514b0f3Smrg 1640d514b0f3Smrgcommit 86a1751ca6d6b08caa6f060b977f079a4f05b384 1641d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1642d514b0f3SmrgDate: Thu May 23 09:23:22 2013 -0500 1643d514b0f3Smrg 1644d514b0f3Smrg Provide compatibility for Xorg list code with Xorg < 1.12, for RHEL 6 support 1645d514b0f3Smrg 1646d514b0f3Smrgcommit d261a3aef5a5d470057ffd9691af52c214681257 1647d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1648d514b0f3SmrgDate: Sun Sep 8 14:51:38 2013 +0300 1649d514b0f3Smrg 1650d514b0f3Smrg fix a bunch of warnings - unused variables, labels, code 1651d514b0f3Smrg 1652d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1653d514b0f3Smrg 1654d514b0f3Smrgcommit abe9cd20186fa810aaf880222d1c9ab3ab6bd379 1655d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1656d514b0f3SmrgDate: Wed Jul 3 15:28:10 2013 +1000 1657d514b0f3Smrg 1658d514b0f3Smrg qxl: fix broken cursor hotspot on KMS driver 1659d514b0f3Smrg 1660d514b0f3Smrg bugzilla: http://bugzilla.redhat.com/974662 1661d514b0f3Smrg 1662d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1663d514b0f3Smrg 1664d514b0f3Smrgcommit 96e6be278896ea6ecb43984d7e6fe8eea3b75ab1 1665d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1666d514b0f3SmrgDate: Tue Jul 9 07:33:34 2013 +1000 1667d514b0f3Smrg 1668d514b0f3Smrg qxl: drop GPL code from qxl driver 1669d514b0f3Smrg 1670d514b0f3Smrg This code was added due to lack of oversight on commits, remove it, 1671d514b0f3Smrg 1672d514b0f3Smrg this loses this feature for now, a clean implementation using MIT licensed 1673d514b0f3Smrg code will be written later. 1674d514b0f3Smrg 1675d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1676d514b0f3Smrg 1677d514b0f3Smrgcommit 8b03ec16acece636f96cf30362061716f6b596c2 1678d514b0f3SmrgAuthor: Cole Robinson <crobinso@redhat.com> 1679d514b0f3SmrgDate: Tue Jul 2 16:19:13 2013 -0400 1680d514b0f3Smrg 1681d514b0f3Smrg qxl: Report actual module version 1682d514b0f3Smrg 1683d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=813684 1684d514b0f3Smrg 1685d514b0f3Smrg Signed-off-by: Cole Robinson <crobinso@redhat.com> 1686d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1687d514b0f3Smrg 1688d514b0f3Smrgcommit 131b7a87506adb304be9c479803d6952dce599cd 1689d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1690d514b0f3SmrgDate: Mon Jul 1 13:21:13 2013 +1000 1691d514b0f3Smrg 1692d514b0f3Smrg qxl: add uevent handler support 1693d514b0f3Smrg 1694d514b0f3Smrg This allows the driver to process uevents from the kernel when the mode 1695d514b0f3Smrg changes. 1696d514b0f3Smrg 1697d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1698d514b0f3Smrg 1699d514b0f3Smrgcommit 9075ac50655b1035275a4b79d6cfdc0de38dcca0 1700d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 1701d514b0f3SmrgDate: Thu May 30 14:45:27 2013 -0400 1702d514b0f3Smrg 1703d514b0f3Smrg spiceqxl_main_loop: fix use of watch after removal 1704d514b0f3Smrg 1705d514b0f3Smrg rhbz 968931 1706d514b0f3Smrg 1707d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 1708d514b0f3Smrg 1709d514b0f3Smrgcommit 5376ed35a16516bcf97cc13666593d1518231d1f 1710d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1711d514b0f3SmrgDate: Sat Jun 29 21:28:33 2013 +1000 1712d514b0f3Smrg 1713d514b0f3Smrg qxl: fix issue with resizing dev_image improperly 1714d514b0f3Smrg 1715d514b0f3Smrg this could result in a segfault when resizing. 1716d514b0f3Smrg 1717d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1718d514b0f3Smrg 1719d514b0f3Smrgcommit a391983e75d62bc1cfc2bab366ba983c2cd0954b 1720d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1721d514b0f3SmrgDate: Tue May 28 13:53:06 2013 +1000 1722d514b0f3Smrg 1723d514b0f3Smrg qxl: fix 32-bit mmaps 1724d514b0f3Smrg 1725d514b0f3Smrg 32-bit mmaps were broken, and I really thought I'd applied this before, 1726d514b0f3Smrg but must not have made it across. 1727d514b0f3Smrg 1728d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1729d514b0f3Smrg 1730d514b0f3Smrgcommit aead20f14a912879a297d77e85d9b029fd5f4e1e 1731d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1732d514b0f3SmrgDate: Thu May 23 05:19:39 2013 +0100 1733d514b0f3Smrg 1734d514b0f3Smrg qxl: don't enable kms unless we can find qxl_drm.h 1735d514b0f3Smrg 1736d514b0f3Smrg Reported-by: Jeremy White 1737d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1738d514b0f3Smrg 1739d514b0f3Smrgcommit 1b4d51be0502224c5b6c165b7aaec02d7e782c8c 1740d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1741d514b0f3SmrgDate: Tue May 14 11:13:00 2013 +1000 1742d514b0f3Smrg 1743d514b0f3Smrg qxl/kms: recreate the host image upon resize 1744d514b0f3Smrg 1745d514b0f3Smrg The code was just missing this, it was freeing stuff but never 1746d514b0f3Smrg reallocating it, oops. This along with the kernel side fix should 1747d514b0f3Smrg allow better randr support under KMS. 1748d514b0f3Smrg 1749d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1750d514b0f3Smrg 1751d514b0f3Smrgcommit 3e37b2c38f661b0b8e285cfa7f0549aa3d216eb5 1752d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1753d514b0f3SmrgDate: Thu May 9 13:43:57 2013 +1000 1754d514b0f3Smrg 1755d514b0f3Smrg qxl: add KMS support v1.2 1756d514b0f3Smrg 1757d514b0f3Smrg Avoid DRI create busid symbol for now. 1758d514b0f3Smrg fix warnings. 1759d514b0f3Smrg 1760d514b0f3Smrgcommit 77a159451578d0e5773b2af6ed181ad076a6c7a5 1761d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1762d514b0f3SmrgDate: Mon Apr 29 14:16:40 2013 -0500 1763d514b0f3Smrg 1764d514b0f3Smrg Set -noreset on invocation 1765d514b0f3Smrg 1766d514b0f3Smrgcommit 1263b3934c695e124d09a850a4530b17bddcbf51 1767d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1768d514b0f3SmrgDate: Mon Apr 29 14:07:03 2013 -0500 1769d514b0f3Smrg 1770d514b0f3Smrg Modify X interfaces to better enable Xorg resets. 1771d514b0f3Smrg 1772d514b0f3Smrg However, it still crashes, most likely due to the xorg_timer 1773d514b0f3Smrg in the watch structure. Those timers become invalid at Xorg 1774d514b0f3Smrg server reset (it clears all timers), but we go on to continue 1775d514b0f3Smrg to use them. 1776d514b0f3Smrg 1777d514b0f3Smrg As fixing this fully will likely require some messy rework, 1778d514b0f3Smrg simply documenting -noreset seems like the best choice for now. 1779d514b0f3Smrg 1780d514b0f3Smrgcommit 11802306622f5580cd211aec175f9fef714e66e4 1781d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 1782d514b0f3SmrgDate: Thu Mar 28 08:44:49 2013 -0400 1783d514b0f3Smrg 1784d514b0f3Smrg When DebugRenderFallbacks is turned on, print debug spew in many cases 1785d514b0f3Smrg 1786d514b0f3Smrg Whenever we can't accelerate, and DebugRenderFallbacks is turned on, 1787d514b0f3Smrg print out the reason we couldn't accelerate. 1788d514b0f3Smrg 1789d514b0f3Smrgcommit 6b5df7bb359b548b65033b16ac539bf3dd91793a 1790d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 1791d514b0f3SmrgDate: Thu Mar 28 08:44:48 2013 -0400 1792d514b0f3Smrg 1793d514b0f3Smrg Add new DebugRenderFallbacks option 1794d514b0f3Smrg 1795d514b0f3Smrg This option defaults to off. When enabled, uxa_set_fallback_debug() is 1796d514b0f3Smrg set to true. Later on more debug information may be turned on 1797d514b0f3Smrg conditional on this option. 1798d514b0f3Smrg 1799d514b0f3Smrgcommit 3cbd14b93925c70f32a132082a8eae59380ec4bf 1800d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1801d514b0f3SmrgDate: Wed Mar 27 13:28:57 2013 -0500 1802d514b0f3Smrg 1803d514b0f3Smrg Make the Deferred FPS mode available in all cases, not just XSPICE. 1804d514b0f3Smrg 1805d514b0f3Smrgcommit f6aebb149e4ddffe303f5cfdeb8b24c79416db60 1806d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1807d514b0f3SmrgDate: Thu Mar 21 12:58:12 2013 -0500 1808d514b0f3Smrg 1809d514b0f3Smrg Eliminate gcc warning "initialization discards 'const' qualifier from pointer target type" 1810d514b0f3Smrg 1811d514b0f3Smrgcommit 742a032bcd58534631095dafa89d24c076c43ffe 1812d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1813d514b0f3SmrgDate: Sun Sep 9 10:50:19 2012 -0500 1814d514b0f3Smrg 1815d514b0f3Smrg Eliminate a gcc "cast discards '__attribute__((const))'" warning 1816d514b0f3Smrg 1817d514b0f3Smrgcommit eca99cb6827511a0750e21a09f3f00043966dcc4 1818d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1819d514b0f3SmrgDate: Thu Mar 21 10:44:46 2013 -0500 1820d514b0f3Smrg 1821d514b0f3Smrg Actually request the forcibly inline functions to be inline. 1822d514b0f3Smrg 1823d514b0f3Smrg Silences a gcc warning (-Wattributes). 1824d514b0f3Smrg 1825d514b0f3Smrgcommit 48170807029bf0a13f60b2d89047474b05168c84 1826d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1827d514b0f3SmrgDate: Sun Sep 9 11:14:14 2012 -0500 1828d514b0f3Smrg 1829d514b0f3Smrg Eliminate a printf format warning on 32 bit systems. 1830d514b0f3Smrg 1831d514b0f3Smrgcommit 8f8f600719cae19b2bc3c5afa7dfd7f4d1c3ac19 1832d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1833d514b0f3SmrgDate: Sun Sep 9 15:27:14 2012 -0500 1834d514b0f3Smrg 1835d514b0f3Smrg Document a meaningful warning. 1836d514b0f3Smrg 1837d514b0f3Smrgcommit 60e1dc6fb66c23b3bfb8511073866a468a73a599 1838d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1839d514b0f3SmrgDate: Thu Mar 21 10:33:01 2013 -0500 1840d514b0f3Smrg 1841d514b0f3Smrg Removed unused local variables 1842d514b0f3Smrg 1843d514b0f3Smrgcommit 274a08685b3bf709cd08a74c082f1253ee46d43a 1844d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1845d514b0f3SmrgDate: Sun Sep 9 10:34:52 2012 -0500 1846d514b0f3Smrg 1847d514b0f3Smrg Eliminate gcc warning on duplicate use of ARRAY_SIZE by Xorg. 1848d514b0f3Smrg 1849d514b0f3Smrgcommit 42c88ddaccd3a286c6637aa82248e5eb1cc75006 1850d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1851d514b0f3SmrgDate: Wed Mar 20 15:00:15 2013 -0500 1852d514b0f3Smrg 1853d514b0f3Smrg More correctly signal that we only want the first head connected at start. 1854d514b0f3Smrg 1855d514b0f3Smrg This prevents a bug when using old versions of qemu (< 1.2) and the latest 1856d514b0f3Smrg driver version. 1857d514b0f3Smrg 1858d514b0f3Smrg This was uncovered when I found that my patch beccf8e8: 1859d514b0f3Smrg Establish a preferred default of 1024x768 correctly. 1860d514b0f3Smrg causes a failure when running with the qemu in Debian. 1861d514b0f3Smrg 1862d514b0f3Smrg The video ram allocated by older qemu versions (8M) is not enough to hold the 1863d514b0f3Smrg default heads (4) times the default screen size (1024x768). 1864d514b0f3Smrg 1865d514b0f3Smrg It worked prior to my patch because the previous code was a bit of a mess. 1866d514b0f3Smrg It would hard code 1024x768 for Virtual Size, hack some crtcs to disabled, 1867d514b0f3Smrg and sorta kinda have 4 heads connected. Later resizes would come through and 1868d514b0f3Smrg mostly fix things up, so we largely got away with. 1869d514b0f3Smrg 1870d514b0f3Smrg This change should correctly signal that we start with only one head 1871d514b0f3Smrg connected. 1872d514b0f3Smrg 1873d514b0f3Smrg There is still more that could be done with the randr code; we have 1874d514b0f3Smrg unimplemented functions that I suspect would allow us to fail more 1875d514b0f3Smrg graciously when the user tries to create displays in excess of our RAM. 1876d514b0f3Smrg 1877d514b0f3Smrgcommit 475f3b73345dd0bc480f0761e41a35e7ce0c80b8 1878d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1879d514b0f3SmrgDate: Tue Mar 19 08:47:32 2013 -0500 1880d514b0f3Smrg 1881d514b0f3Smrg Add an example stanza for the FIFO dir logic. 1882d514b0f3Smrg 1883d514b0f3Smrgcommit 9f18384a9b34da4eed3690f11575b6633c61f1a0 1884d514b0f3SmrgAuthor: Andrew Eikum <aeikum@codeweavers.com> 1885d514b0f3SmrgDate: Fri Mar 15 09:19:49 2013 -0500 1886d514b0f3Smrg 1887d514b0f3Smrg Implement sending audio to the client from a directory of FIFO queues 1888d514b0f3Smrg 1889d514b0f3Smrg This introduces a new Xorg.conf option, SpicePlaybackFIFODir, which will 1890d514b0f3Smrg be monitored for files. The XSpice driver will mix and forward the audio 1891d514b0f3Smrg data sent to those pipes to the Spice client. 1892d514b0f3Smrg 1893d514b0f3Smrg This is designed to work with PulseAudio's module-pipe-sink, but should 1894d514b0f3Smrg work with any audio output to a pipe. For example, use with this PA 1895d514b0f3Smrg configuration option: 1896d514b0f3Smrg 1897d514b0f3Smrg load-module module-pipe-sink file=$FIFO_DIR/playback.fifo format=s16 rate=44100 channels=2 1898d514b0f3Smrg 1899d514b0f3Smrg making sure the format, rate, and channels match the Spice protocol 1900d514b0f3Smrg settings. 1901d514b0f3Smrg 1902d514b0f3Smrgcommit 56623b13a860a9b76ca59d5e9e7d14c80d72d245 1903d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1904d514b0f3SmrgDate: Thu Mar 14 12:47:13 2013 -0500 1905d514b0f3Smrg 1906d514b0f3Smrg Add a --xsession option, to allow for an automatic start of an xsession script 1907d514b0f3Smrg 1908d514b0f3Smrgcommit d540f7e91e39db6eec752e698252b6efb83ed950 1909d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1910d514b0f3SmrgDate: Thu Mar 14 11:30:39 2013 -0500 1911d514b0f3Smrg 1912d514b0f3Smrg Enable the deferred-fps and exit-on-disconnect options 1913d514b0f3Smrg 1914d514b0f3Smrgcommit 6d480421cd307e4cce91e6f6da85890715c8d676 1915d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1916d514b0f3SmrgDate: Thu Mar 14 10:50:44 2013 -0500 1917d514b0f3Smrg 1918d514b0f3Smrg Add a '--auto' flag to create a temporary xorg.conf file. 1919d514b0f3Smrg 1920d514b0f3Smrgcommit 7038ec9eb6bdff60623f38462376acb2de1e2272 1921d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1922d514b0f3SmrgDate: Thu Mar 14 10:20:03 2013 -0500 1923d514b0f3Smrg 1924d514b0f3Smrg Consolidate and document the missing parameters 1925d514b0f3Smrg 1926d514b0f3Smrgcommit 60d9b28cc02e2560b7a96826be5283df6014fb14 1927d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1928d514b0f3SmrgDate: Wed Mar 13 14:43:09 2013 -0500 1929d514b0f3Smrg 1930d514b0f3Smrg Add missing options to the example xorg.conf file. 1931d514b0f3Smrg 1932d514b0f3Smrg Poor man's documentation for the win! 1933d514b0f3Smrg 1934d514b0f3Smrgcommit 45a862ef5c75a913628155ed65344ad4f3bc94a0 1935d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1936d514b0f3SmrgDate: Wed Mar 13 14:25:45 2013 -0500 1937d514b0f3Smrg 1938d514b0f3Smrg Handle cache and surface options the same way we handle all options. 1939d514b0f3Smrg 1940d514b0f3Smrg Add comment lines for them to the example xorg.conf file. 1941d514b0f3Smrg 1942d514b0f3Smrgcommit cee2fe80480db851402186096f8fc433306d330e 1943d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1944d514b0f3SmrgDate: Wed Mar 6 12:30:36 2013 -0600 1945d514b0f3Smrg 1946d514b0f3Smrg Initialize our update region at surface creation, avoids 0 size regions 1947d514b0f3Smrg 1948d514b0f3Smrgcommit c36be89ea4f5bbfb81bc2eee4af130d2e9553e7e 1949d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 1950d514b0f3SmrgDate: Wed Mar 6 12:30:01 2013 -0600 1951d514b0f3Smrg 1952d514b0f3Smrg We're uploading a drawable from the primary surface, use it. 1953d514b0f3Smrg 1954d514b0f3Smrgcommit 7a7b12762904eea329f678987565d89db56421b6 1955d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 1956d514b0f3SmrgDate: Tue Mar 12 10:27:19 2013 +1000 1957d514b0f3Smrg 1958d514b0f3Smrg qxl: drop pointless and wrong memset. 1959d514b0f3Smrg 1960d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1961d514b0f3Smrg 1962d514b0f3Smrgcommit a474a718e118895978beb19d77d730f578c201ef 1963d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 1964d514b0f3SmrgDate: Wed Mar 6 13:54:22 2013 +1000 1965d514b0f3Smrg 1966d514b0f3Smrg qxl: use u64_to_pointer to avoid warnings when building on i686 1967d514b0f3Smrg 1968d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1969d514b0f3Smrg 1970d514b0f3Smrgcommit 5d73de5e250350e10d0dc8b000ce1d3a21eeb2b5 1971d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 1972d514b0f3SmrgDate: Wed Mar 6 13:33:50 2013 +1000 1973d514b0f3Smrg 1974d514b0f3Smrg qxl: fix xspice build due to missing include. 1975d514b0f3Smrg 1976d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1977d514b0f3Smrg 1978d514b0f3Smrgcommit 6400c31454483aa2a8edd828579d9a2e7190df1c 1979d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 1980d514b0f3SmrgDate: Wed Mar 6 13:31:30 2013 +1000 1981d514b0f3Smrg 1982d514b0f3Smrg qxl: fix build in koji 1983d514b0f3Smrg 1984d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1985d514b0f3Smrg 1986d514b0f3Smrgcommit 9d45cc50c0f7302a649a5ae5b850f0bdbb9a2771 1987d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 1988d514b0f3SmrgDate: Tue Feb 26 15:03:37 2013 +1000 1989d514b0f3Smrg 1990d514b0f3Smrg qxl: separate surface ums code out into separate file 1991d514b0f3Smrg 1992d514b0f3Smrg All the surface cache code is UMS specific, so separate most of it out. 1993d514b0f3Smrg 1994d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 1995d514b0f3Smrg 1996d514b0f3Smrgcommit 8c7fada8f42cc4a741f7f1d210b50f754ef8805e 1997d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 1998d514b0f3SmrgDate: Tue Feb 26 14:03:40 2013 +1000 1999d514b0f3Smrg 2000d514b0f3Smrg qxl: abstract object allocation away from surface/image/cursor code 2001d514b0f3Smrg 2002d514b0f3Smrg This abstracts the object bo/surface allocation away from the user code. 2003d514b0f3Smrg 2004d514b0f3Smrg The idea is we can then plug in a KMS backend for this abstraction and mostly 2005d514b0f3Smrg keep the surrounding code intact. 2006d514b0f3Smrg 2007d514b0f3Smrg This is probably the biggest change to the driver in terms of impact of KMS 2008d514b0f3Smrg code on UMS code. At the moment I'm storing linked list of bos for release 2009d514b0f3Smrg handling, and that might be better done with a different data structure, 2010d514b0f3Smrg since we are looking them up by phy_addr, either a hash table or some sort 2011d514b0f3Smrg of rb tree perhaps, rather than a linear search. 2012d514b0f3Smrg 2013d514b0f3Smrg This commit also starts usign the xorg list macros, which may require 2014d514b0f3Smrg some compat code to work in history. 2015d514b0f3Smrg 2016d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2017d514b0f3Smrg 2018d514b0f3Smrgcommit f0e9d7bb9658a89909f97b485437a1375aa0267f 2019d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2020d514b0f3SmrgDate: Tue Feb 26 13:23:47 2013 +1000 2021d514b0f3Smrg 2022d514b0f3Smrg qxl: add direct pointer from qxl surface to qxl screen 2023d514b0f3Smrg 2024d514b0f3Smrg This is prep work to allow the cache to be bypassed for kms. 2025d514b0f3Smrg 2026d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2027d514b0f3Smrg 2028d514b0f3Smrgcommit edea5bed01049ae9f62278fe998b13745c8ffa8c 2029d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2030d514b0f3SmrgDate: Tue Feb 26 13:11:08 2013 +1000 2031d514b0f3Smrg 2032d514b0f3Smrg qxl: pass surface struct instead of ids in drawable functions. 2033d514b0f3Smrg 2034d514b0f3Smrg this just changes it so we pass the surfaces not just the ids. 2035d514b0f3Smrg 2036d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2037d514b0f3Smrg 2038d514b0f3Smrgcommit 8b27ab5b956a0e4ca1dd14f26634d0159d0976dc 2039d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2040d514b0f3SmrgDate: Tue Feb 26 13:07:39 2013 +1000 2041d514b0f3Smrg 2042d514b0f3Smrg qxl_edid: add missing config.h 2043d514b0f3Smrg 2044d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2045d514b0f3Smrg 2046d514b0f3Smrgcommit 37bc463a553c03ea9a757ad2ebea056b42c6e8ad 2047d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2048d514b0f3SmrgDate: Tue Feb 26 13:04:20 2013 +1000 2049d514b0f3Smrg 2050d514b0f3Smrg qxl: split common pre init code out from qxl pre init 2051d514b0f3Smrg 2052d514b0f3Smrg This just moves the options parsing and color setup calls 2053d514b0f3Smrg to a separate function. 2054d514b0f3Smrg 2055d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2056d514b0f3Smrg 2057d514b0f3Smrgcommit 9a1914cff1200a58dab1edb939292f0fb96ec025 2058d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2059d514b0f3SmrgDate: Tue Feb 26 12:49:53 2013 +1000 2060d514b0f3Smrg 2061d514b0f3Smrg qxl: fix memory leak on driver exit. 2062d514b0f3Smrg 2063d514b0f3Smrg We were leaking two allocations on driver exit. 2064d514b0f3Smrg 2065d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2066d514b0f3Smrg 2067d514b0f3Smrgcommit e24b9ca438c17797012a48f9647682d382e44de0 2068d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2069d514b0f3SmrgDate: Tue Feb 26 12:48:36 2013 +1000 2070d514b0f3Smrg 2071d514b0f3Smrg qxl_surface: move to using struct to avoid ordering issues with typedef. 2072d514b0f3Smrg 2073d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2074d514b0f3Smrg 2075d514b0f3Smrgcommit 39b5c10ac426db8377389433d4d04f54c8b710ef 2076d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2077d514b0f3SmrgDate: Tue Feb 26 12:47:33 2013 +1000 2078d514b0f3Smrg 2079d514b0f3Smrg qxl: pass qxl instead of surface cache to some functions 2080d514b0f3Smrg 2081d514b0f3Smrg This is more preparation work for adding bo abstraction layer. 2082d514b0f3Smrg 2083d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2084d514b0f3Smrg 2085d514b0f3Smrgcommit b13a5e7cfead7d4de4d24d86f0eabeae76934fb9 2086d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2087d514b0f3SmrgDate: Tue Feb 26 12:26:45 2013 +1000 2088d514b0f3Smrg 2089d514b0f3Smrg qxl: split surface struct out into its own header file. 2090d514b0f3Smrg 2091d514b0f3Smrg This is just ground work for kms addition. 2092d514b0f3Smrg 2093d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2094d514b0f3Smrg 2095d514b0f3Smrgcommit 2753e5bf4cc6cdfaea50785cc70285a1bb995fcf 2096d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2097d514b0f3SmrgDate: Tue Nov 20 12:43:27 2012 +1000 2098d514b0f3Smrg 2099d514b0f3Smrg uxa: port over tiled fill code from EXA 2100d514b0f3Smrg 2101d514b0f3Smrg This makes X -retro actually render fast, as opposed to glacially slow. 2102d514b0f3Smrg 2103d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2104d514b0f3Smrg 2105d514b0f3Smrgcommit 3dfb0a968d572e8af2bc52c964beeaaab4675448 2106d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2107d514b0f3SmrgDate: Tue Nov 13 14:43:45 2012 +1000 2108d514b0f3Smrg 2109d514b0f3Smrg qxl: move mspace setup to qxl_mem.c 2110d514b0f3Smrg 2111d514b0f3Smrg removes mspace stuff from main qxl_driver.c 2112d514b0f3Smrg 2113d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2114d514b0f3Smrg 2115d514b0f3Smrgcommit 55c0b36c54fe6dfb25cdbcfad0add9707c4a734b 2116d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2117d514b0f3SmrgDate: Tue Nov 13 14:40:53 2012 +1000 2118d514b0f3Smrg 2119d514b0f3Smrg qxl: move garbage collector + alloc into qxl_mem.c 2120d514b0f3Smrg 2121d514b0f3Smrg This moves a lot more code out of the qxl_driver.c file. 2122d514b0f3Smrg 2123d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2124d514b0f3Smrg 2125d514b0f3Smrgcommit a604a002fda045c8166333d4f17925280844d26d 2126d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2127d514b0f3SmrgDate: Tue Nov 13 14:36:58 2012 +1000 2128d514b0f3Smrg 2129d514b0f3Smrg qxl: move mem slots code to qxl_mem.c 2130d514b0f3Smrg 2131d514b0f3Smrg This moves the mem slot setup code to qxl_mem.c. 2132d514b0f3Smrg 2133d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2134d514b0f3Smrg 2135d514b0f3Smrgcommit 338cfb89bb3f1e3ae4cbfdbf4c9640dde9707f5d 2136d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2137d514b0f3SmrgDate: Tue Nov 13 14:35:05 2012 +1000 2138d514b0f3Smrg 2139d514b0f3Smrg qxl_mem: drop unused if 0 code. 2140d514b0f3Smrg 2141d514b0f3Smrg Doesn't look we want this code anymore, so drop it. 2142d514b0f3Smrg 2143d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2144d514b0f3Smrg 2145d514b0f3Smrgcommit 120ca968123e5c1e9d355bc43826a92fdfdf7f2c 2146d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2147d514b0f3SmrgDate: Tue Nov 13 14:33:39 2012 +1000 2148d514b0f3Smrg 2149d514b0f3Smrg qxl: move io functions to a separate file 2150d514b0f3Smrg 2151d514b0f3Smrg this moves all the lowlevel ioport interaction code to a separate file. 2152d514b0f3Smrg 2153d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2154d514b0f3Smrg 2155d514b0f3Smrgcommit 43ff8209da8ca3770339bbc9b776e114b94a55a7 2156d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2157d514b0f3SmrgDate: Tue Nov 13 14:20:10 2012 +1000 2158d514b0f3Smrg 2159d514b0f3Smrg qxl: split user modesetting code and crtc code out. 2160d514b0f3Smrg 2161d514b0f3Smrg This splits the UMS modesetting and xf86Crtc code out into a separate file. 2162d514b0f3Smrg 2163d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2164d514b0f3Smrg 2165d514b0f3Smrgcommit 5f8e250927ebaf8a76621efb9294e527a7bde99b 2166d514b0f3SmrgAuthor: Dave Airlie <airlied@gmail.com> 2167d514b0f3SmrgDate: Tue Nov 13 14:04:17 2012 +1000 2168d514b0f3Smrg 2169d514b0f3Smrg qxl: split uxa related code into separate file 2170d514b0f3Smrg 2171d514b0f3Smrg qxl_driver.c is insane, it needs to be split out like other X.org drivers. 2172d514b0f3Smrg 2173d514b0f3Smrg This is step one, move the uxa interfacing code into its own file. 2174d514b0f3Smrg 2175d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2176d514b0f3Smrg 2177d514b0f3Smrgcommit beccf8e81ea6bb4c86bcaf3cd4aac5e18f6d3f0d 2178d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2179d514b0f3SmrgDate: Tue Jan 29 13:34:52 2013 -0600 2180d514b0f3Smrg 2181d514b0f3Smrg Establish a preferred default of 1024x768 correctly. 2182d514b0f3Smrg 2183d514b0f3Smrg This fixes a bug with x-spice where you could not specify 2184d514b0f3Smrg a default mode in an xorg.conf modeline that was greater 2185d514b0f3Smrg than 1024x768. This also eliminates (and partially 2186d514b0f3Smrg reverts) patch c1b537fc. 2187d514b0f3Smrg 2188d514b0f3Smrg It also fixes bug 894421, where gnome modes flicker 2189d514b0f3Smrg and work poorly. 2190d514b0f3Smrg 2191d514b0f3Smrgcommit c90bb813f3d30c8c800b1f56d77713cce417f1b2 2192d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 2193d514b0f3SmrgDate: Thu Jan 17 16:26:35 2013 +0200 2194d514b0f3Smrg 2195d514b0f3Smrg qxl_driver: monitors_config: adjust to memory-remap 2196d514b0f3Smrg 2197d514b0f3Smrg Resolves: rhbz#883578 2198d514b0f3Smrg 2199d514b0f3Smrg Call qxl_allocate_monitors_config upon memory-remap such 2200d514b0f3Smrg that qxl->monitors_config points to the start of 2201d514b0f3Smrg monitors_config segment in qxl RAM memory. 2202d514b0f3Smrg 2203d514b0f3Smrg Currently after memory remap, it's possible that monitors_config 2204d514b0f3Smrg memory and video-memory (or graphics) overlap, which means 2205d514b0f3Smrg that one may overwrite another. 2206d514b0f3Smrg Specifically in the bug above, monitors_config value are being 2207d514b0f3Smrg overwritten by video pages, and on the destination bad values 2208d514b0f3Smrg are read which cause problems on the server and client. 2209d514b0f3Smrg 2210d514b0f3Smrg It may be a good idea to add some protection on the server side, 2211d514b0f3Smrg e.g. calcluate checksum, compare values against modes, or limit 2212d514b0f3Smrg ->count and ->max_allowed and ignore bad monitors_config values 2213d514b0f3Smrg 2214d514b0f3Smrg Also do not memset-0 monitors-config upon allocation (remapping) 2215d514b0f3Smrg to not overwrite likely good configuration (in case it is 2216d514b0f3Smrg being read by the host, e.g. upon migration). 2217d514b0f3Smrg 2218d514b0f3Smrgcommit dadc1ad3f05633f926c9cb75a93367c5d52af988 2219d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 2220d514b0f3SmrgDate: Thu Jan 17 16:26:34 2013 +0200 2221d514b0f3Smrg 2222d514b0f3Smrg qxl_driver: simplify calling qxl_update_monitors_config 2223d514b0f3Smrg 2224d514b0f3Smrg Simplify by calling check_crtc from within qxl_update_monitors_config, 2225d514b0f3Smrg instead of calling check_crtc before every call to 2226d514b0f3Smrg qxl_update_monitors_config. 2227d514b0f3Smrg 2228d514b0f3Smrgcommit 3963ad1a140ef4b2a3f09471d0135311b9b36c87 2229d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 2230d514b0f3SmrgDate: Thu Jan 17 16:26:33 2013 +0200 2231d514b0f3Smrg 2232d514b0f3Smrg qxl_driver: check_crtc: handle qxl->crtcs == NULL 2233d514b0f3Smrg 2234d514b0f3Smrgcommit 1d5001116662ef832e010a098a68b81446c1c531 2235d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 2236d514b0f3SmrgDate: Thu Jan 17 16:26:32 2013 +0200 2237d514b0f3Smrg 2238d514b0f3Smrg qxl_pre_init: fix calculation of available video memory 2239d514b0f3Smrg 2240d514b0f3Smrg Don't forget to substract monitors_config area. 2241d514b0f3Smrg 2242d514b0f3Smrg Memory map of qxl RAM looks something like the following: 2243d514b0f3Smrg --------------------- 2244d514b0f3Smrg | | 2245d514b0f3Smrg | Surface0 Area | 2246d514b0f3Smrg | | 2247d514b0f3Smrg --------------------- 2248d514b0f3Smrg | | 2249d514b0f3Smrg | | 2250d514b0f3Smrg | Video Pages | 2251d514b0f3Smrg | | 2252d514b0f3Smrg | | 2253d514b0f3Smrg --------------------- 2254d514b0f3Smrg | Monitors Config | 2255d514b0f3Smrg --------------------- 2256d514b0f3Smrg | RAM Header | 2257d514b0f3Smrg --------------------- 2258d514b0f3Smrg 2259d514b0f3Smrgcommit 2e003fc6447128ca1035061a3f98fd57ee3bed24 2260d514b0f3SmrgAuthor: Uri Lublin <uril@redhat.com> 2261d514b0f3SmrgDate: Thu Jan 17 16:26:31 2013 +0200 2262d514b0f3Smrg 2263d514b0f3Smrg qxl_driver: remove unused enum ROPDescriptor 2264d514b0f3Smrg 2265d514b0f3Smrgcommit 4908d6c4d13014f38dadfd1020cd680e81f053b7 2266d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2267d514b0f3SmrgDate: Thu Sep 6 16:01:15 2012 -0500 2268d514b0f3Smrg 2269d514b0f3Smrg Enable the use of SpiceExitOnDisconnect so that Xspice can be configured 2270d514b0f3Smrg to allow exactly one server per client session. 2271d514b0f3Smrg 2272d514b0f3Smrgcommit 6677781531a8638c3813ee091881271d7d7e23b2 2273d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2274d514b0f3SmrgDate: Thu Sep 20 16:04:08 2012 -0500 2275d514b0f3Smrg 2276d514b0f3Smrg Implement prepare_copy using GC functions. 2277d514b0f3Smrg 2278d514b0f3Smrg This avoids having to screen out bad alu and planemasks; 2279d514b0f3Smrg we let the X driver take care of it. 2280d514b0f3Smrg 2281d514b0f3Smrgcommit 6130831c7341acee332e1c0dd7d3b74350e87fcc 2282d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2283d514b0f3SmrgDate: Thu Sep 20 15:52:31 2012 -0500 2284d514b0f3Smrg 2285d514b0f3Smrg Implement copy with fbFill. 2286d514b0f3Smrg 2287d514b0f3Smrg This fixes issues with 1 bit images; some pixman implementations 2288d514b0f3Smrg did not support 1 bit images - the general fbFill implementation 2289d514b0f3Smrg takes care of it for us. 2290d514b0f3Smrg 2291d514b0f3Smrgcommit 531a844ab9136d657f90a30bb049068e92629c65 2292d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2293d514b0f3SmrgDate: Tue Sep 11 12:56:19 2012 -0500 2294d514b0f3Smrg 2295d514b0f3Smrg Add a deferred frames mode. 2296d514b0f3Smrg 2297d514b0f3Smrg This renders all operations to a frame buffer, 2298d514b0f3Smrg and sends updates periodically. 2299d514b0f3Smrg 2300d514b0f3Smrgcommit 4301bff52bfec982b16896e395d9b4785c359a73 2301d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2302d514b0f3SmrgDate: Mon Sep 10 12:29:29 2012 -0500 2303d514b0f3Smrg 2304d514b0f3Smrg Shift the uxa function initialization to a separate function. 2305d514b0f3Smrg 2306d514b0f3Smrgcommit 7d62dcc6d400e3f96fb7921fbdb852f3b9024b17 2307d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2308d514b0f3SmrgDate: Mon Sep 10 10:36:39 2012 -0500 2309d514b0f3Smrg 2310d514b0f3Smrg Add a DeferredFPS option. 2311d514b0f3Smrg 2312d514b0f3Smrgcommit a44be4fd011cc0b80d0c8109589e7aa1c26cad1e 2313d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2314d514b0f3SmrgDate: Thu Sep 13 09:53:03 2012 -0500 2315d514b0f3Smrg 2316d514b0f3Smrg Unify memory management for the primary screen. 2317d514b0f3Smrg 2318d514b0f3Smrg We never actually connected the host_image pixmap to 2319d514b0f3Smrg the primary screen, because we never operate on the bits 2320d514b0f3Smrg of the primary screen. 2321d514b0f3Smrg 2322d514b0f3Smrg This causes problems if we wish to use traditional X 2323d514b0f3Smrg operations to modify the primary screen, as they will 2324d514b0f3Smrg fail and corrupt memory as they go. 2325d514b0f3Smrg 2326d514b0f3Smrgcommit 819b1f62efbecf33db7bb0b4402a798262ae4574 2327d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 2328d514b0f3SmrgDate: Wed Jan 9 22:55:47 2013 -0500 2329d514b0f3Smrg 2330d514b0f3Smrg Remove mibstore.h 2331d514b0f3Smrg 2332d514b0f3Smrg Signed-off-by: Adam Jackson <ajax@redhat.com> 2333d514b0f3Smrg 2334d514b0f3Smrgcommit b211ff37e1fdca853275e73e5cd089c0d713f521 2335d514b0f3SmrgAuthor: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> 2336d514b0f3SmrgDate: Fri Sep 28 14:06:07 2012 -0500 2337d514b0f3Smrg 2338d514b0f3Smrg Only include Xv headers if server supports it 2339d514b0f3Smrg 2340d514b0f3Smrg Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> 2341d514b0f3Smrg Reviewed-by: Søren Sandmann Pedersen <ssp@redhat.com> 2342d514b0f3Smrg 2343d514b0f3Smrgcommit 29ac84b5009ba83345200c1ca4511c2c86331624 2344d514b0f3SmrgAuthor: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> 2345d514b0f3SmrgDate: Fri Sep 28 13:35:33 2012 -0500 2346d514b0f3Smrg 2347d514b0f3Smrg Add XORG_LIBS to LIBADD 2348d514b0f3Smrg 2349d514b0f3Smrg This affects only Cygwin (on which only spiceqxl is supported), where 2350d514b0f3Smrg drivers must be linked against the Xorg implib. On other systems, 2351d514b0f3Smrg XORG_LIBS will be empty. 2352d514b0f3Smrg 2353d514b0f3Smrg Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> 2354d514b0f3Smrg Reviewed-by: Søren Sandmann Pedersen <ssp@redhat.com> 2355d514b0f3Smrg 2356d514b0f3Smrgcommit 10d6e8ee3e59655c32c2d518cc6686eff902c6dc 2357d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2358d514b0f3SmrgDate: Wed Aug 8 14:58:36 2012 -0500 2359d514b0f3Smrg 2360d514b0f3Smrg Change include paths to fix rare compilation issue. 2361d514b0f3Smrg 2362d514b0f3Smrg Technically, the xorg/ prefix should not be specified. It generally works, 2363d514b0f3Smrg because xorg/ is usually hung off /usr/include. This enables 2364d514b0f3Smrg compliation that correctly respects a pkg-config --cflags xorg-server. 2365d514b0f3Smrg 2366d514b0f3Smrgcommit d8bb331784792bfd35bf158875b434243f0fe019 2367d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 2368d514b0f3SmrgDate: Thu Sep 20 19:11:55 2012 -0400 2369d514b0f3Smrg 2370d514b0f3Smrg Version bump to 0.1.0 2371d514b0f3Smrg 2372d514b0f3Smrgcommit 6520293e1e1f57bafbcf99592e766f810ce3ad2d 2373d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 2374d514b0f3SmrgDate: Thu Sep 20 16:26:36 2012 -0400 2375d514b0f3Smrg 2376d514b0f3Smrg Make the checks for composite and a8 return FALSE for Xspice 2377d514b0f3Smrg 2378d514b0f3Smrg They depend on the PCI revision which is not available for Xspice. 2379d514b0f3Smrg 2380d514b0f3Smrgcommit 7f0b820d919eb944eae201de03b186bd247b0324 2381d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2382d514b0f3SmrgDate: Wed Sep 12 10:38:41 2012 -0500 2383d514b0f3Smrg 2384d514b0f3Smrg Only use dixScreenSpecificPrivatesSize if we have a new enough Xorg. 2385d514b0f3Smrg 2386d514b0f3Smrg This lets us continue to support older Xorg releases. 2387d514b0f3Smrg This reverts 4f37cd85 and partially reverts 4a43bd4. 2388d514b0f3Smrg 2389d514b0f3Smrgcommit fb038eb37906eba9a88e0cb6622a59f06dcc2a68 2390d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2391d514b0f3SmrgDate: Wed Sep 12 12:54:06 2012 -0400 2392d514b0f3Smrg 2393d514b0f3Smrg Don't issue composite commands or create a8 surfaces when not available 2394d514b0f3Smrg 2395d514b0f3Smrg When the device or the client are not capable of composite commands or a8 2396d514b0f3Smrg surfaces, don't issue these commands. 2397d514b0f3Smrg 2398d514b0f3Smrgcommit 4f37cd854f128714b8fcf3c0ab8afd72986407a0 2399d514b0f3SmrgAuthor: Johannes Obermayr <johannesobermayr@gmx.de> 2400d514b0f3SmrgDate: Fri Sep 7 18:05:21 2012 +0200 2401d514b0f3Smrg 2402d514b0f3Smrg Require XServer >= 1.12.99.901 in conjunction with commit 4a43bd4. 2403d514b0f3Smrg 2404d514b0f3Smrgcommit 7059cff787eef80f3d3345de705e912b292a9f97 2405d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2406d514b0f3SmrgDate: Thu Jul 12 09:53:31 2012 -0400 2407d514b0f3Smrg 2408d514b0f3Smrg Add Render support 2409d514b0f3Smrg 2410d514b0f3Smrg This commit adds support for using the new Composite command in spice 2411d514b0f3Smrg protocol 0.12.0. This command is similar to the Composite request in 2412d514b0f3Smrg the X Render protocol. 2413d514b0f3Smrg 2414d514b0f3Smrg By implementing the UXA composite stubs, we get acceleration for most 2415d514b0f3Smrg common Composite requests, including glyphs. 2416d514b0f3Smrg 2417d514b0f3Smrgcommit 2fecf3a171e64ca0dad5653ed740409dc5af2edf 2418d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2419d514b0f3SmrgDate: Tue Dec 20 09:01:17 2011 -0500 2420d514b0f3Smrg 2421d514b0f3Smrg Enable 8 bit pixmaps. 2422d514b0f3Smrg 2423d514b0f3Smrg a8 surfaces are now supported with the 8BIT_A format in spice, so we 2424d514b0f3Smrg can have support 8 bit pixmaps. 2425d514b0f3Smrg 2426d514b0f3Smrgcommit 37c97620da959d9214abfc760835aa3031d54daa 2427d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2428d514b0f3SmrgDate: Sun Aug 12 11:03:16 2012 -0400 2429d514b0f3Smrg 2430d514b0f3Smrg Use an RGBA format for 32 bit images 2431d514b0f3Smrg 2432d514b0f3Smrg With the upcoming Render changes, we can no longer assume that the 2433d514b0f3Smrg fourth channel of images is unused. 2434d514b0f3Smrg 2435d514b0f3Smrgcommit 1e89aab2dc0beb01f43a2397faa05a8cd01a7547 2436d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2437d514b0f3SmrgDate: Wed Aug 22 15:27:09 2012 -0400 2438d514b0f3Smrg 2439d514b0f3Smrg uxa: Plug leak in uxa_glyphs_via_masks 2440d514b0f3Smrg 2441d514b0f3Smrg If prepare_composite() fails, we need to free the temporary mask 2442d514b0f3Smrg before returning. 2443d514b0f3Smrg 2444d514b0f3Smrgcommit afd8d20b84a4b4e9b22483e379d594517333e8c7 2445d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2446d514b0f3SmrgDate: Tue Aug 14 14:20:11 2012 -0400 2447d514b0f3Smrg 2448d514b0f3Smrg uxa-glyphs: don't prepare composite when dest is not offscreen 2449d514b0f3Smrg 2450d514b0f3Smrg It is possbible for a pixmap to not be in video memory after 2451d514b0f3Smrg uxa_clear_pixmap() was called. When this happens, we need to destroy 2452d514b0f3Smrg the pixmap and return 1 to indicate that the operation can't be 2453d514b0f3Smrg accelerated. 2454d514b0f3Smrg 2455d514b0f3Smrgcommit e738d00e1fb3cd469f850765e2b42976c2a85764 2456d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 2457d514b0f3SmrgDate: Tue Aug 21 12:56:52 2012 -0400 2458d514b0f3Smrg 2459d514b0f3Smrg Improved support for memory debugging. 2460d514b0f3Smrg 2461d514b0f3Smrg Make all memory allocation functions take a string that will explain 2462d514b0f3Smrg what the memory will be used for. This allows debug print statements 2463d514b0f3Smrg to be added to the allocation functions and could later potentially be 2464d514b0f3Smrg used for more detailed statistics. 2465d514b0f3Smrg 2466d514b0f3Smrgcommit 4a43bd436c58dae72f91905657a36158efc68907 2467d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2468d514b0f3SmrgDate: Thu Aug 23 18:28:03 2012 +0300 2469d514b0f3Smrg 2470d514b0f3Smrg src/qxl_driver: use the new dixScreenSpecificPrivatesSize 2471d514b0f3Smrg 2472d514b0f3Smrg xserver introduces a new screen specific privates infrastructure, moving 2473d514b0f3Smrg the PRIVATE_PIXBUF over there, breaking qxl that was using the wrong 2474d514b0f3Smrg dixPrivatesSize to access it - there is a new array of screen specific/not 2475d514b0f3Smrg flags, and PRIVATE_PIXBUF is screen specific. 2476d514b0f3Smrg 2477d514b0f3Smrg xorg-xserver commit: 9d457f9c55f12106ba44c1c9db59d14f978f0ae8 2478d514b0f3Smrg 2479d514b0f3Smrg This fix breaks backward compat. The next release will only work with 2480d514b0f3Smrg xorg-xserver >= 1.12.99.901 2481d514b0f3Smrg 2482d514b0f3Smrg RHBZ: 844463 2483d514b0f3Smrg 2484d514b0f3Smrgcommit 0998bf63cd6c69a98f67094eba4e4edd2bf2a906 2485d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 2486d514b0f3SmrgDate: Thu Aug 23 17:24:51 2012 -0400 2487d514b0f3Smrg 2488d514b0f3Smrg Coding style fixes 2489d514b0f3Smrg 2490d514b0f3Smrg Undo most of the damage from 7f8d3ed05cbe891 2491d514b0f3Smrg 2492d514b0f3Smrgcommit 5554358fa3baf6616159b65f2f65a138f401aaf8 2493d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 2494d514b0f3SmrgDate: Thu Aug 23 17:22:58 2012 -0400 2495d514b0f3Smrg 2496d514b0f3Smrg Bump spice-protocol version requirement to 0.12.0 2497d514b0f3Smrg 2498d514b0f3Smrgcommit a261befde42d21f3fa9e4a56f121203cc67f3831 2499d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2500d514b0f3SmrgDate: Thu Aug 23 17:27:20 2012 +0300 2501d514b0f3Smrg 2502d514b0f3Smrg qxl_driver: Xspice: fix build breakage 2503d514b0f3Smrg 2504d514b0f3Smrgcommit c1b537fcafc3b9121d8c79cf5e98566158f34ab6 2505d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2506d514b0f3SmrgDate: Sun Jul 15 09:38:55 2012 -0400 2507d514b0f3Smrg 2508d514b0f3Smrg Return a preferred mode matching the current mode 2509d514b0f3Smrg 2510d514b0f3Smrg This make gnome-settings-daemon not switch resolution automatically to 2511d514b0f3Smrg the largest available. 2512d514b0f3Smrg 2513d514b0f3Smrgcommit ef4f158a18f03444d358b5ece39db636f76365f9 2514d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2515d514b0f3SmrgDate: Fri Jul 13 08:20:33 2012 -0400 2516d514b0f3Smrg 2517d514b0f3Smrg Change output status when update monitors config 2518d514b0f3Smrg 2519d514b0f3Smrgcommit 907d0ff0b0f6934d37fbab4a6889295d70ae3496 2520d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2521d514b0f3SmrgDate: Sun Jul 8 15:35:23 2012 -0400 2522d514b0f3Smrg 2523d514b0f3Smrg Bypass rrcrtc.c screen size bounds check 2524d514b0f3Smrg 2525d514b0f3Smrgcommit 557e23e82b6d738fab6fa6bd28b077dd81437b22 2526d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2527d514b0f3SmrgDate: Fri Jul 6 08:06:10 2012 -0400 2528d514b0f3Smrg 2529d514b0f3Smrg Avoid calling qxl_update_monitors_config() with invalid config 2530d514b0f3Smrg 2531d514b0f3Smrg During startup, the monitors are not yet enabled/set. and we 2532d514b0f3Smrg can avoid sending invalid/transient config. 2533d514b0f3Smrg 2534d514b0f3Smrgcommit 47b54dcfd9ba2aa78e0f154a288321bb0ff98dce 2535d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2536d514b0f3SmrgDate: Fri Jul 6 08:05:11 2012 -0400 2537d514b0f3Smrg 2538d514b0f3Smrg Split crtc_set_mode_major() 2539d514b0f3Smrg 2540d514b0f3Smrg Avoid sending many monitor config changes during qxl_create_desired_modes() 2541d514b0f3Smrg 2542d514b0f3Smrgcommit 6ee541636b6ed6846074afeb1c32d9e8e6a9bdda 2543d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2544d514b0f3SmrgDate: Fri Jul 6 08:02:21 2012 -0400 2545d514b0f3Smrg 2546d514b0f3Smrg Add check_crtc() helper, to catch crtc/monitor config errors 2547d514b0f3Smrg 2548d514b0f3Smrgcommit 7f8d3ed05cbe8914910e49b49ec44df15562bd16 2549d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2550d514b0f3SmrgDate: Wed Jul 4 14:56:07 2012 -0400 2551d514b0f3Smrg 2552d514b0f3Smrg Coding style improvement 2553d514b0f3Smrg 2554d514b0f3Smrgcommit f9980eec2287a01a918ff073a45f13d9dc66a1c6 2555d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2556d514b0f3SmrgDate: Wed Jul 4 14:01:45 2012 -0400 2557d514b0f3Smrg 2558d514b0f3Smrg get rid of one of the gcc warnings 2559d514b0f3Smrg 2560d514b0f3Smrgcommit 6c63d799a2b0f69485938dbae7975bf913284a23 2561d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2562d514b0f3SmrgDate: Wed Jun 27 15:53:41 2012 +0300 2563d514b0f3Smrg 2564d514b0f3Smrg qxl_driver/qxl_initialize_x_modes: remove modes not fitting framebuffer 2565d514b0f3Smrg 2566d514b0f3Smrgcommit f493653a5e09ae0e0fe1a5f70c3aba1dc9fe86fe 2567d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2568d514b0f3SmrgDate: Mon Jun 25 17:09:20 2012 +0300 2569d514b0f3Smrg 2570d514b0f3Smrg qxl_driver: add infra for surface0 resizing 2571d514b0f3Smrg 2572d514b0f3Smrg Most importantly, don't allow randr resize if it is too large for the 2573d514b0f3Smrg currently allocated mspace. Ifdeffed out almost working code for 2574d514b0f3Smrg reallocating the primary mspace (qxl->mem). 2575d514b0f3Smrg 2576d514b0f3Smrgcommit 75619d076bb029b76bed7a885864e191c386aa23 2577d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2578d514b0f3SmrgDate: Wed Jun 27 12:11:41 2012 +0300 2579d514b0f3Smrg 2580d514b0f3Smrg add qxl_edid 2581d514b0f3Smrg 2582d514b0f3Smrg Taken from Virtual Box, following exactly the same logic: 2583d514b0f3Smrg gnome-settings-daemon relies on the serial given in the edid to set the 2584d514b0f3Smrg resolution to the same one last used on that screen. Since this is not 2585d514b0f3Smrg what we want with a virtual machine, we produce a serial that is 2586d514b0f3Smrg different for every resolution. 2587d514b0f3Smrg 2588d514b0f3Smrgcommit de547245e75ea88f780205da072967bff119a636 2589d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2590d514b0f3SmrgDate: Mon Jun 25 16:13:29 2012 +0300 2591d514b0f3Smrg 2592d514b0f3Smrg (for later) qxl_ring: add helpers (debugging/unused) 2593d514b0f3Smrg 2594d514b0f3Smrgcommit b4e3f07474c919af0e484a71fb86c788a703ad8c 2595d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2596d514b0f3SmrgDate: Mon Jun 25 16:20:31 2012 +0300 2597d514b0f3Smrg 2598d514b0f3Smrg qxl_driver: qxl_init_randr: limit width/height to 8192, real check done on randr screen resize callback 2599d514b0f3Smrg 2600d514b0f3Smrgcommit d85e07921dda5e5401a336d415e8deee4b663252 2601d514b0f3SmrgAuthor: Marc-André Lureau <marcandre.lureau@gmail.com> 2602d514b0f3SmrgDate: Wed Jul 4 11:30:58 2012 -0400 2603d514b0f3Smrg 2604d514b0f3Smrg Add some error message if pci revision < 4 2605d514b0f3Smrg 2606d514b0f3Smrgcommit e6bfdd035f3692b712496069b9361d010526802a 2607d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2608d514b0f3SmrgDate: Wed Jun 27 14:33:46 2012 +0300 2609d514b0f3Smrg 2610d514b0f3Smrg qxl_driver: introduce qxl_crtc, crtc private 2611d514b0f3Smrg 2612d514b0f3Smrg Additionally prevents disabling of the primary crtc. 2613d514b0f3Smrg 2614d514b0f3Smrgcommit f106ea65cde61c8f3cf5819d8c127fb7912ec067 2615d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2616d514b0f3SmrgDate: Mon Apr 30 18:35:59 2012 +0300 2617d514b0f3Smrg 2618d514b0f3Smrg qxl_driver: implement randr, arbitrary resolution, multiple monitors (big dump) 2619d514b0f3Smrg 2620d514b0f3Smrg Send a MonitorsUpdate - this should definitely be split into it's own 2621d514b0f3Smrg patch. 2622d514b0f3Smrg 2623d514b0f3Smrg Require revision 4 - this is needed just for MonitorsUpdate, should go 2624d514b0f3Smrg with it. 2625d514b0f3Smrg 2626d514b0f3Smrg Adds new config: OPTION_NUM_HEADS, defaults to 4. 2627d514b0f3Smrg 2628d514b0f3Smrgcommit 21e5719f74749fa6187539dc0805cb12759d66da 2629d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2630d514b0f3SmrgDate: Thu May 24 09:56:06 2012 +0300 2631d514b0f3Smrg 2632d514b0f3Smrg qxl_surface: add download_box_no_update 2633d514b0f3Smrg 2634d514b0f3Smrgcommit 26b8b350628ec053217715e7a9cb77ff56e4f56e 2635d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2636d514b0f3SmrgDate: Thu May 24 09:55:27 2012 +0300 2637d514b0f3Smrg 2638d514b0f3Smrg qxl_surface: normalize surface_send names, add option to surface_destroy to send/not send destroy message 2639d514b0f3Smrg 2640d514b0f3Smrgcommit 1db72fdf45a3ebbf7f0687671c1def75309b9499 2641d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2642d514b0f3SmrgDate: Wed May 23 20:44:51 2012 +0300 2643d514b0f3Smrg 2644d514b0f3Smrg spiceqxl_io_port: mark FLUSH_SURFACES_ASYNC as unimplemented, do half of it 2645d514b0f3Smrg 2646d514b0f3Smrgcommit 5d78c4cac24ad3830dba1900d5d879551dcbb407 2647d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2648d514b0f3SmrgDate: Wed May 23 21:23:09 2012 +0300 2649d514b0f3Smrg 2650d514b0f3Smrg qxl_screen_init: move uxa_resources_init down to after qxl_switch_mode has run 2651d514b0f3Smrg 2652d514b0f3Smrgcommit f246a251f88dab6a9db83e2d8bbd699e29950459 2653d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2654d514b0f3SmrgDate: Wed May 23 21:20:23 2012 +0300 2655d514b0f3Smrg 2656d514b0f3Smrg qxl_close_screen: disable fb access, prevent segfaults in uxa later on 2657d514b0f3Smrg 2658d514b0f3Smrg I don't have a stacktrace to show any segfault unfortunately. 2659d514b0f3Smrg 2660d514b0f3Smrgcommit 6dedd9a3f997c0112e71cfd0b28465348dfbbc36 2661d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2662d514b0f3SmrgDate: Mon Jun 25 17:08:11 2012 +0300 2663d514b0f3Smrg 2664d514b0f3Smrg qxl_driver: move mspace_set_*_func earlier 2665d514b0f3Smrg 2666d514b0f3Smrgcommit f838df1589c63fba8e99200238cf0b4e3acac6b1 2667d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2668d514b0f3SmrgDate: Tue May 29 17:24:50 2012 +0300 2669d514b0f3Smrg 2670d514b0f3Smrg fix two segfaults in qxl_free_surface 2671d514b0f3Smrg 2672d514b0f3Smrg Both results from ProcFreePixmap being called in unanticipated 2673d514b0f3Smrg circumstances: 2674d514b0f3Smrg 2675d514b0f3Smrg cache->all_surfaces is NULL 2676d514b0f3Smrg surface->host_image is NULL 2677d514b0f3Smrg 2678d514b0f3Smrg To reproduce the following scripts work, in tandem: 2679d514b0f3Smrg 2680d514b0f3Smrg create xterms, destroy them 2681d514b0f3Smrg chvt 2682d514b0f3Smrg 2683d514b0f3Smrg ============ xterm_test ============ 2684d514b0f3Smrg import os 2685d514b0f3Smrg import subprocess 2686d514b0f3Smrg import time 2687d514b0f3Smrg import atexit 2688d514b0f3Smrg 2689d514b0f3Smrg env = os.environ 2690d514b0f3Smrg env['DISPLAY'] = ':0.0' 2691d514b0f3Smrg xterms = [] 2692d514b0f3Smrg 2693d514b0f3Smrg def kill_all(): 2694d514b0f3Smrg print "killing xterms" 2695d514b0f3Smrg for x in xterms: 2696d514b0f3Smrg x.kill() 2697d514b0f3Smrg del xterms[:] 2698d514b0f3Smrg 2699d514b0f3Smrg atexit.register(kill_all) 2700d514b0f3Smrg while True: 2701d514b0f3Smrg for i in range(10): 2702d514b0f3Smrg xterms.append(subprocess.Popen(['xterm', '+u8'])) 2703d514b0f3Smrg time.sleep(1) 2704d514b0f3Smrg kill_all() 2705d514b0f3Smrg 2706d514b0f3Smrg ============= chvt_test_helper ============ 2707d514b0f3Smrg XPID=`pgrep Xorg` 2708d514b0f3Smrg XTTY=`find /proc/$XPID/fd -lname "/dev/tty*"` 2709d514b0f3Smrg XTTY=`readlink $XTTY` 2710d514b0f3Smrg XTTY=${XTTY#/dev/tty} 2711d514b0f3Smrg echo "chvt 1 (from Xorg)" 2712d514b0f3Smrg chvt 1 2713d514b0f3Smrg sleep 2 2714d514b0f3Smrg echo "chvt $XTTY (to Xorg)" 2715d514b0f3Smrg chvt $XTTY 2716d514b0f3Smrg 2717d514b0f3Smrg ============== chvt_test ================= 2718d514b0f3Smrg while true; do ./chvt-test ; sleep 3; done 2719d514b0f3Smrg 2720d514b0f3Smrgcommit c60681561c9cf8317be4e84ac8ac2bb465e13eb0 2721d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2722d514b0f3SmrgDate: Mon Jun 11 10:13:39 2012 +0300 2723d514b0f3Smrg 2724d514b0f3Smrg qxl: remove qxl_screen_t->stride 2725d514b0f3Smrg 2726d514b0f3Smrgcommit 203f579fed5e0c8a9970bfabebc84c7d84578ee5 2727d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2728d514b0f3SmrgDate: Wed Jun 27 12:07:16 2012 +0300 2729d514b0f3Smrg 2730d514b0f3Smrg spiceqxl_inputs: don't hide the pointer global typedef 2731d514b0f3Smrg 2732d514b0f3Smrgcommit 5706a3765bead75999f6d0ca0b17fed6c30ad7ef 2733d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2734d514b0f3SmrgDate: Wed Jun 27 11:06:17 2012 +0300 2735d514b0f3Smrg 2736d514b0f3Smrg uxa: fix bad argument type from removed index API change (s/SCREEN_ARG_TYPE/SCRN_ARG_TYPE/) 2737d514b0f3Smrg 2738d514b0f3Smrgcommit ea676f67d4c8fc863a711fb8630c1afccfa0561c 2739d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2740d514b0f3SmrgDate: Wed Jun 27 12:19:01 2012 +0300 2741d514b0f3Smrg 2742d514b0f3Smrg whitespace fix 2743d514b0f3Smrg 2744d514b0f3Smrgcommit de66207883efc1f32e96907c3e64f17b2bdf6c3e 2745d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2746d514b0f3SmrgDate: Sun Jul 8 14:05:08 2012 +0300 2747d514b0f3Smrg 2748d514b0f3Smrg qxl_driver/qxl_switch_mode: destroy is not idempotent 2749d514b0f3Smrg 2750d514b0f3Smrgcommit 6267b1a56f6104409fcb970eddc4ea9606421331 2751d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2752d514b0f3SmrgDate: Wed Mar 7 14:30:58 2012 +0200 2753d514b0f3Smrg 2754d514b0f3Smrg spiceqxl_display: reformat & rephrase Xspice comment 2755d514b0f3Smrg 2756d514b0f3Smrgcommit e0f301fc0512502542573b3f8dd9452f5a7ea6e1 2757d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2758d514b0f3SmrgDate: Wed Jun 13 17:04:12 2012 -0500 2759d514b0f3Smrg 2760d514b0f3Smrg Compute totalPixmapSize using the same logic as in dix/pixmap.c, rather than hard coding 100. 2761d514b0f3Smrg 2762d514b0f3Smrg This was found while building with a modified X server; one with a PixmapRec size of 224, not 64 :-/. 2763d514b0f3Smrg 2764d514b0f3Smrgcommit 6832c0fd917556c52f56f8e82706a83942ed3dc1 2765d514b0f3SmrgAuthor: Jeremy White <jwhite@codeweavers.com> 2766d514b0f3SmrgDate: Sun Jun 3 10:28:05 2012 -0500 2767d514b0f3Smrg 2768d514b0f3Smrg Actually process write watches in the wakeup handler 2769d514b0f3Smrg 2770d514b0f3Smrg My apologies for the churn; this is, I think, a slightly better patch than 2771d514b0f3Smrg my previous patch, 'Process watches even when there is no X activity', in that 2772d514b0f3Smrg it avoids doing an extra polling select when we're idle. 2773d514b0f3Smrg 2774d514b0f3Smrgcommit 72a0def8114073c0051f3df880f731d3968cb344 2775d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2776d514b0f3SmrgDate: Wed May 30 13:44:40 2012 +0300 2777d514b0f3Smrg 2778d514b0f3Smrg qxl_switch_mode: don't evacuate, just recreate primary surface 2779d514b0f3Smrg 2780d514b0f3Smrg In summary, on vt enter we still: 2781d514b0f3Smrg reset 2782d514b0f3Smrg recreate memory slots 2783d514b0f3Smrg clear our mspace allocators 2784d514b0f3Smrg and then do what switch mode below says 2785d514b0f3Smrg 2786d514b0f3Smrg On vt leave we still: 2787d514b0f3Smrg reset (this is redundant since the first VGA access will trigger a 2788d514b0f3Smrg reset on the device side) 2789d514b0f3Smrg 2790d514b0f3Smrg On switch mode however we only: 2791d514b0f3Smrg destroy primary surface 2792d514b0f3Smrg create primary surface (different size) 2793d514b0f3Smrg 2794d514b0f3Smrgcommit 8df3eba368e80f60ce815300b85a567a9b02141c 2795d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2796d514b0f3SmrgDate: Thu May 31 13:04:01 2012 +0300 2797d514b0f3Smrg 2798d514b0f3Smrg qxl_surface: don't unlink surface 0 2799d514b0f3Smrg 2800d514b0f3Smrg The primary surface, i.e. qxl->primary, the only surface with id==0, is 2801d514b0f3Smrg allocated in qxl_surface_cache_create_primary with prev==next==NULL. 2802d514b0f3Smrg Unlinking it was producing a wrong cache->free_surfaces == NULL. This 2803d514b0f3Smrg was not a problem because unlinking the primary only happened in 2804d514b0f3Smrg switch_host, which then called surface_cache_init. In a following commit 2805d514b0f3Smrg switch_host is simplified to destroy-primary+create-primary, so this bug 2806d514b0f3Smrg needs to be fixed first to avoid leaking surfaces and reaching a no 2807d514b0f3Smrg surface available situation. 2808d514b0f3Smrg 2809d514b0f3Smrgcommit 22157d4750f9090927d2e3473aa3d3a4f5232792 2810d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2811d514b0f3SmrgDate: Thu May 31 13:03:54 2012 +0300 2812d514b0f3Smrg 2813d514b0f3Smrg qxl_surface: add DEBUG_SURFACE_LIFECYCLE helpers 2814d514b0f3Smrg 2815d514b0f3Smrgcommit 0f817bb4e1b4e33ef50c0399c92f1cc091840ef5 2816d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2817d514b0f3SmrgDate: Tue May 29 12:25:12 2012 +0300 2818d514b0f3Smrg 2819d514b0f3Smrg io: add qxl_io_destroy_primary 2820d514b0f3Smrg 2821d514b0f3Smrgcommit 326b80974b4080ed7519801f7d1c96077f5ae0b9 2822d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2823d514b0f3SmrgDate: Wed May 23 20:50:46 2012 +0300 2824d514b0f3Smrg 2825d514b0f3Smrg prefix io with qxl_io, add several 2826d514b0f3Smrg 2827d514b0f3Smrgcommit 73981e02c90cc81dd462f9fc2a00b5b11a9eab00 2828d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2829d514b0f3SmrgDate: Wed May 23 20:52:48 2012 +0300 2830d514b0f3Smrg 2831d514b0f3Smrg qxl.h: add device_primary tri state UNDEFINED/NONE/CREATED 2832d514b0f3Smrg 2833d514b0f3Smrgcommit b600edc48270a4a368add11ec02e6d365d5da60d 2834d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2835d514b0f3SmrgDate: Thu May 24 00:08:38 2012 +0300 2836d514b0f3Smrg 2837d514b0f3Smrg qxl_surface: logging: add function name to ErrorF 2838d514b0f3Smrg 2839d514b0f3Smrgcommit 3a87e765d91a26ead2cfc5ddad1ba4f3e7d21922 2840d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2841d514b0f3SmrgDate: Thu May 24 11:00:49 2012 +0300 2842d514b0f3Smrg 2843d514b0f3Smrg qxl_surface: cosmetics 2844d514b0f3Smrg 2845d514b0f3Smrgcommit 60478640a6c4d74c44fdf67350be6e180960cf5f 2846d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2847d514b0f3SmrgDate: Wed May 23 21:23:26 2012 +0300 2848d514b0f3Smrg 2849d514b0f3Smrg qxl_pre_init: memset qxl struct 2850d514b0f3Smrg 2851d514b0f3Smrgcommit 9d929ae1d1bb2e7f03221fcc4d70e761b6ff9242 2852d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2853d514b0f3SmrgDate: Wed May 23 20:46:34 2012 +0300 2854d514b0f3Smrg 2855d514b0f3Smrg qxl_driver: abort on mspace error, don't spin (default abort function) 2856d514b0f3Smrg 2857d514b0f3Smrgcommit 6aa3ceb2d3f25726424b03a68ef949deadf7125a 2858d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2859d514b0f3SmrgDate: Wed May 23 20:44:06 2012 +0300 2860d514b0f3Smrg 2861d514b0f3Smrg mspace: add mspace_malloc_stats_return 2862d514b0f3Smrg 2863d514b0f3Smrgcommit 5e505dc6572ee29d0ebe912a8160a8e09bfb5d3e 2864d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2865d514b0f3SmrgDate: Tue May 29 13:46:34 2012 +0300 2866d514b0f3Smrg 2867d514b0f3Smrg qxl_leave_vt: change outb to ioport_write (easier to grep / breakpoint on a single point) 2868d514b0f3Smrg 2869d514b0f3Smrgcommit 67f86dc1e824d00a06bdc51ba4c3e88cfbd82292 2870d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2871d514b0f3SmrgDate: Tue May 29 13:45:29 2012 +0300 2872d514b0f3Smrg 2873d514b0f3Smrg rename qxl_reset to qxl_reset_and_create_mem_slots 2874d514b0f3Smrg 2875d514b0f3Smrgcommit 21c1d576925e561551b91b44b0d286f0bdc689c4 2876d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2877d514b0f3SmrgDate: Wed May 23 20:54:44 2012 +0300 2878d514b0f3Smrg 2879d514b0f3Smrg qxl_mem: add debug flags, simple accounting and valgrind enabled 2880d514b0f3Smrg 2881d514b0f3Smrg adds preprocessor definitions DEBUG_QXL_MEM & DEBUG_QXL_MEM_VERBOSE 2882d514b0f3Smrg 2883d514b0f3Smrgcommit a313b5ef1b5b6dda1e6c0ab47f458d692a5462f7 2884d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2885d514b0f3SmrgDate: Wed May 30 10:46:54 2012 +0300 2886d514b0f3Smrg 2887d514b0f3Smrg qxl_surface: handle destroyed pixmaps while evacuated 2888d514b0f3Smrg 2889d514b0f3Smrg Prevent access to freed memory when: 2890d514b0f3Smrg 1. qxl_leave_vt/qxl_surface_cache_evacuate_all freed cache->all_surfaces 2891d514b0f3Smrg 2. ProcRenderDispatch/damageDestroyPixmap/qxl_destroy_pixmap/qxl_surface_kill 2892d514b0f3Smrg access a surface that pointed inside the all_surfaces array 2893d514b0f3Smrg 2894d514b0f3Smrg Solution in this patch: 2895d514b0f3Smrg 1. never free all_surfaces 2896d514b0f3Smrg 2. add an 'evacuated' field per surface, initialized to NULL, set during 2897d514b0f3Smrg evacuation. 2898d514b0f3Smrg 3. on qxl_surface_kill, if surface->evacuated is set, don't destroy the 2899d514b0f3Smrg surface (it is already destroyed by this point via a reset in 2900d514b0f3Smrg qxl_surface_cache_evacuate_all's caller, qxl_leave_vt), just unref the 2901d514b0f3Smrg host pixmap, free the evacuated_surface_t and unlink it from the 2902d514b0f3Smrg evacuated linked list, so it isn't recreated later on 2903d514b0f3Smrg qxl_surface_cache_replace_all. 2904d514b0f3Smrg 2905d514b0f3Smrgcommit c47ebff71878458ff6157aec7252999a6578fb97 2906d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2907d514b0f3SmrgDate: Wed May 30 10:09:47 2012 +0300 2908d514b0f3Smrg 2909d514b0f3Smrg qxl_driver: hide cursors on vt switch 2910d514b0f3Smrg 2911d514b0f3Smrg This is not enough to prevent any qxl_destroy_pixmap call during vt 2912d514b0f3Smrg switch, but it prevents those triggered by CursorDisplayCursor. 2913d514b0f3Smrg 2914d514b0f3Smrg Note: a matching xf86_show_cursors call doesn't hurt, but is not 2915d514b0f3Smrg required, so not adding it. 2916d514b0f3Smrg 2917d514b0f3Smrg It is still possible to access freed memory by the following trigger: 2918d514b0f3Smrg 2919d514b0f3Smrg ==4416== Invalid read of size 8 2920d514b0f3Smrg ==4416== at 0x5D15EC1: unlink_surface (qxl_surface.c:685) 2921d514b0f3Smrg ==4416== by 0x5D162F9: qxl_surface_kill (qxl_surface.c:799) 2922d514b0f3Smrg ==4416== by 0x5D12688: qxl_destroy_pixmap (qxl_driver.c:928) 2923d514b0f3Smrg ==4416== by 0x55730B: damageDestroyPixmap (damage.c:1556) 2924d514b0f3Smrg ==4416== by 0x51C77B: ShmDestroyPixmap (shm.c:273) 2925d514b0f3Smrg ==4416== by 0x54591B: FreePicture (picture.c:1465) 2926d514b0f3Smrg ==4416== by 0x467A32: doFreeResource (resource.c:873) 2927d514b0f3Smrg ==4416== by 0x467B7E: FreeResource (resource.c:903) 2928d514b0f3Smrg ==4416== by 0x547742: ProcRenderFreePicture (render.c:661) 2929d514b0f3Smrg ==4416== by 0x54B13A: ProcRenderDispatch (render.c:1988) 2930d514b0f3Smrg ==4416== by 0x430670: Dispatch (dispatch.c:428) 2931d514b0f3Smrg ==4416== by 0x492604: main (main.c:288) 2932d514b0f3Smrg ==4416== Address 0x121031e0 is 116,960 bytes inside a block of size 122,880 free'd 2933d514b0f3Smrg ==4416== at 0x4A079AE: free (vg_replace_malloc.c:427) 2934d514b0f3Smrg ==4416== by 0x5D16BDA: qxl_surface_cache_evacuate_all (qxl_surface.c:1060) 2935d514b0f3Smrg ==4416== by 0x5D13078: qxl_leave_vt (qxl_driver.c:1209) 2936d514b0f3Smrg ==4416== by 0x4A4D4F: xf86VTSwitch (xf86Events.c:462) 2937d514b0f3Smrg ==4416== by 0x4A4926: xf86Wakeup (xf86Events.c:285) 2938d514b0f3Smrg ==4416== by 0x43E2E1: WakeupHandler (dixutils.c:421) 2939d514b0f3Smrg ==4416== by 0x488A75: WaitForSomething (WaitFor.c:224) 2940d514b0f3Smrg ==4416== by 0x4303CF: Dispatch (dispatch.c:357) 2941d514b0f3Smrg ==4416== by 0x492604: main (main.c:288) 2942d514b0f3Smrg 2943d514b0f3Smrg This is fixed by a following patch to not free all_surfaces, instead 2944d514b0f3Smrg keeping pointers from it to the evacuated list. 2945d514b0f3Smrg 2946d514b0f3Smrgcommit fdf2274c9ff15fc5108b400b71120184d2651a21 2947d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2948d514b0f3SmrgDate: Mon May 21 11:31:23 2012 +0300 2949d514b0f3Smrg 2950d514b0f3Smrg qxl_surface: remove redundant qxl_garbage_collect, qxl_allocnf calls it 2951d514b0f3Smrg 2952d514b0f3Smrgcommit b26640c2d24e6094487ea323a08b539d66050d89 2953d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2954d514b0f3SmrgDate: Tue May 29 13:47:44 2012 +0300 2955d514b0f3Smrg 2956d514b0f3Smrg uxa-damage: remove unnecessary include (doesn't fix any warnings) 2957d514b0f3Smrg 2958d514b0f3Smrgcommit 8faf24226a20901e7a29019c922359365501ba69 2959d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 2960d514b0f3SmrgDate: Tue May 29 13:09:46 2012 +0300 2961d514b0f3Smrg 2962d514b0f3Smrg uxa: remove unnecessary includes, reduces warnings due to duplicate definitions 2963d514b0f3Smrg 2964d514b0f3Smrgcommit bb1b5865bc02341cfa1cc0d943fac59077643ea5 2965d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 2966d514b0f3SmrgDate: Wed Jun 6 17:17:09 2012 +0100 2967d514b0f3Smrg 2968d514b0f3Smrg qxl: fix spice build 2969d514b0f3Smrg 2970d514b0f3Smrg reported by jenkins. 2971d514b0f3Smrg 2972d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2973d514b0f3Smrg 2974d514b0f3Smrgcommit f1a9c1b33bff038807755824190c69889ef6d794 2975d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 2976d514b0f3SmrgDate: Wed Jun 6 14:19:04 2012 +0100 2977d514b0f3Smrg 2978d514b0f3Smrg qxl: add API compat for latest X server. 2979d514b0f3Smrg 2980d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 2981d514b0f3Smrg 2982d514b0f3Smrgcommit 40dc75db615c1161c38874c145770b8d77a995ad 2983d514b0f3SmrgAuthor: Yonit Halperin <yhalperi@redhat.com> 2984d514b0f3SmrgDate: Mon Apr 23 09:04:36 2012 +0300 2985d514b0f3Smrg 2986d514b0f3Smrg Do not call update_area when lacking device memory 2987d514b0f3Smrg 2988d514b0f3Smrg The QXL_IO_NOTIFY_OOM is intended exactly for handling occurrences of 2989d514b0f3Smrg lacking memory. The spice server tries to first release resources that 2990d514b0f3Smrg are no longer in the current tree (and thus, do not need rendering). 2991d514b0f3Smrg It renders drawables only as a last resort. And even then, 2992d514b0f3Smrg it does not update the whole primary surface, but rather renders 2993d514b0f3Smrg the oldest X drawables. 2994d514b0f3Smrg The call to update_area is redundant, and its effect on performance 2995d514b0f3Smrg is noticeable when playing full screen video. 2996d514b0f3Smrg 2997d514b0f3Smrg Signed-off-by: Yonit Halperin <yhalperi@redhat.com> 2998d514b0f3Smrg 2999d514b0f3Smrgcommit 1ad5c8633cc52aef5aa8a58bf529859caa8d1bd9 3000d514b0f3SmrgAuthor: Christophe Fergeau <cfergeau@redhat.com> 3001d514b0f3SmrgDate: Wed Apr 25 16:18:19 2012 +0200 3002d514b0f3Smrg 3003d514b0f3Smrg Distribution-agnostic XORG_MACROS_VERSION check message 3004d514b0f3Smrg 3005d514b0f3Smrgcommit b3caf8621d798ea3c5140b8adc193121c4c13c4a 3006d514b0f3SmrgAuthor: Yaniv Kaul <ykaul@redhat.com> 3007d514b0f3SmrgDate: Tue Apr 24 13:22:41 2012 +0300 3008d514b0f3Smrg 3009d514b0f3Smrg Change xorg-macros -> xorg-x11-util-macros in configure error message 3010d514b0f3Smrg 3011d514b0f3Smrg At least in Fedora 17, the correct RPM name is xorg-x11-util-macros 3012d514b0f3Smrg 3013d514b0f3Smrgcommit 315c7de54699a883ba91f906ab59985e4e5426c2 3014d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3015d514b0f3SmrgDate: Mon Apr 9 12:27:21 2012 +0300 3016d514b0f3Smrg 3017d514b0f3Smrg qxl_driver: ifdef out qxl_wait_for_io_command if not XSPICE 3018d514b0f3Smrg 3019d514b0f3Smrgcommit 5eae282231a7cd727ad3f3576ed0574a29d949b1 3020d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3021d514b0f3SmrgDate: Mon Apr 9 12:18:36 2012 +0300 3022d514b0f3Smrg 3023d514b0f3Smrg qxl_surface.c: fix -Wshadow warning 3024d514b0f3Smrg 3025d514b0f3Smrg qxl_surface.c:735:6: warning: declaration of 'i' shadows a previous 3026d514b0f3Smrg local [-Wshadow] 3027d514b0f3Smrg 3028d514b0f3Smrgcommit a4773c508735ec3e9779c46e966a07d388e265dc 3029d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3030d514b0f3SmrgDate: Wed Apr 4 15:45:12 2012 +0300 3031d514b0f3Smrg 3032d514b0f3Smrg mspace: no more warnings 3033d514b0f3Smrg 3034d514b0f3Smrgcommit 01f77c0c42e2b9058e48a9ac4ae171609119ce12 3035d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3036d514b0f3SmrgDate: Wed Apr 4 16:07:47 2012 +0300 3037d514b0f3Smrg 3038d514b0f3Smrg spiceqxl_io_port: use pointer_to_u64 (fix warning) 3039d514b0f3Smrg 3040d514b0f3Smrgcommit aa6cf3db29886ce964b9a5793e7ed0af6f213b57 3041d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3042d514b0f3SmrgDate: Wed Apr 4 16:07:29 2012 +0300 3043d514b0f3Smrg 3044d514b0f3Smrg spiceqxl_io_port: use attribute printf (fix warning) 3045d514b0f3Smrg 3046d514b0f3Smrgcommit f7949ea1488223b8fcbfd1cba2d344d811ee62ca 3047d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3048d514b0f3SmrgDate: Tue Apr 24 12:11:42 2012 +0300 3049d514b0f3Smrg 3050d514b0f3Smrg qxl_surface: qxl_surface_prepare_access: remove assigned but unused variables 3051d514b0f3Smrg 3052d514b0f3Smrgcommit ae50a549d6169d806105a2d6b8220002fda5d9de 3053d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3054d514b0f3SmrgDate: Fri Apr 6 10:30:12 2012 +0300 3055d514b0f3Smrg 3056d514b0f3Smrg spiceqxl: Xspice is spelled with a lower s 3057d514b0f3Smrg 3058d514b0f3Smrgcommit ea37df4b4bccd4e2b9dbd590607737b18ec11ee9 3059d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3060d514b0f3SmrgDate: Sun Apr 15 11:53:51 2012 +0300 3061d514b0f3Smrg 3062d514b0f3Smrg README.xspice: updpate repository 3063d514b0f3Smrg 3064d514b0f3Smrg Reported by: Michael Tokarev <mjt@isrv.corpit.ru> 3065d514b0f3Smrg 3066d514b0f3Smrgcommit fe74d8a89534d92a2151ee3ac28de3d5864a874e 3067d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3068d514b0f3SmrgDate: Thu Mar 8 16:16:20 2012 +0200 3069d514b0f3Smrg 3070d514b0f3Smrg protect AC_CHECK_FILE for cross compiling 3071d514b0f3Smrg 3072d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 3073d514b0f3Smrg 3074d514b0f3Smrgcommit 810d92db84d0e11260ec3abc936dacac113fcbba 3075d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 3076d514b0f3SmrgDate: Sun Mar 18 20:47:41 2012 +0000 3077d514b0f3Smrg 3078d514b0f3Smrg qxl: missed one file that needs config.h 3079d514b0f3Smrg 3080d514b0f3Smrgcommit 34ccb90f6b635b45080e6e4868314fa80a662fc2 3081d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 3082d514b0f3SmrgDate: Sun Mar 18 20:42:38 2012 +0000 3083d514b0f3Smrg 3084d514b0f3Smrg qxl: fix config.h usage 3085d514b0f3Smrg 3086d514b0f3Smrg You have to include config.h at top of each C file, not inside a header file. 3087d514b0f3Smrg 3088d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 3089d514b0f3Smrg 3090d514b0f3Smrgcommit b75eed01fa7514c15f4379092a93ecf8478f0b48 3091d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3092d514b0f3SmrgDate: Thu Mar 15 13:49:52 2012 -0400 3093d514b0f3Smrg 3094d514b0f3Smrg Version bump to 0.0.17 3095d514b0f3Smrg 3096d514b0f3Smrgcommit c358c7f199bfeb519e08b0903438e43b1afd02c1 3097d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3098d514b0f3SmrgDate: Thu Mar 15 13:49:42 2012 -0400 3099d514b0f3Smrg 3100d514b0f3Smrg Add qxl_option_helper.h to Makefile.am 3101d514b0f3Smrg 3102d514b0f3Smrgcommit 81bee3d3491ab6b31b0d69207729280e86138d50 3103d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3104d514b0f3SmrgDate: Thu Mar 15 13:42:04 2012 -0400 3105d514b0f3Smrg 3106d514b0f3Smrg In qxl_prepare_access(), don't modify the width/height of the pixmap 3107d514b0f3Smrg 3108d514b0f3Smrg The width and height were not properly restored, which caused 3109d514b0f3Smrg GetDrawableInfo() to return bogus results, which caused GNOME shell 3110d514b0f3Smrg crashes. 3111d514b0f3Smrg 3112d514b0f3Smrg Signed-off-by: Soren Sandmann <ssp@redhat.com> 3113d514b0f3Smrg 3114d514b0f3Smrgcommit 773fbda754de2dd91f8b6bfe754d1aa59368072b 3115d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3116d514b0f3SmrgDate: Wed Mar 14 12:38:03 2012 -0400 3117d514b0f3Smrg 3118d514b0f3Smrg qxl_surface.c: Remove #if 0'd debug spew 3119d514b0f3Smrg 3120d514b0f3Smrgcommit 4724bb7922e1bb193117f13ffbd69fa4f97a29fb 3121d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3122d514b0f3SmrgDate: Fri Mar 9 12:09:17 2012 -0500 3123d514b0f3Smrg 3124d514b0f3Smrg options: Turn surfaces and caching on by default 3125d514b0f3Smrg 3126d514b0f3Smrgcommit babe13196137f339b6f55c6382f7bd1c11100ec2 3127d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3128d514b0f3SmrgDate: Thu Feb 16 15:55:21 2012 +0200 3129d514b0f3Smrg 3130d514b0f3Smrg missed when added qxl_option_helpers.c 3131d514b0f3Smrg 3132d514b0f3Smrgcommit 70d0d49b7c7d115f297dae710b9bb62b97fa22d5 3133d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3134d514b0f3SmrgDate: Sun Jan 22 19:26:11 2012 +0200 3135d514b0f3Smrg 3136d514b0f3Smrg replace lookup3 with MurmurHash3 3137d514b0f3Smrg 3138d514b0f3Smrg See http://code.google.com/p/smhasher/wiki/MurmurHash3 3139d514b0f3Smrg 3140d514b0f3Smrg Performance quotes from there are 2.5 times what lookup3 can do, for 3141d514b0f3Smrg 32 bit variant, which is what we use: 3142d514b0f3Smrg 3143d514b0f3Smrg Lookup3_x86_32 - 1234 mb/sec 3144d514b0f3Smrg Lookup3_x64_32 - 1265 mb/sec 3145d514b0f3Smrg 3146d514b0f3Smrg MurmurHash3_x86_32 - 3105 mb/sec 3147d514b0f3Smrg 3148d514b0f3Smrg New files are released to the public domain, keeping them that way. 3149d514b0f3Smrg 3150d514b0f3Smrg My own comparison shows the added hash to be ~45% faster then the 3151d514b0f3Smrg existing one, see the tests at 3152d514b0f3Smrg https://gitorious.org/hash_tests/hash_tests 3153d514b0f3Smrg 3154d514b0f3Smrgcommit 994ac381a57e7a9ec502371c6aa3f491c1f1165f 3155d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3156d514b0f3SmrgDate: Fri Feb 3 15:26:44 2012 +0100 3157d514b0f3Smrg 3158d514b0f3Smrg xspice_keyboard_proc: fix arrow keys 3159d514b0f3Smrg 3160d514b0f3Smrg Not sure yet why the regression with the arrow keys not producing the 3161d514b0f3Smrg right keysym, but it appears that the keycode is correct for up (as an 3162d514b0f3Smrg example), 111, but the keysym being produced was 0xff6c and not the 3163d514b0f3Smrg correct 0xff52. This boiled down to the rules of the default rmlvo being 3164d514b0f3Smrg "base" instead of "evdev". Providing an rmlvo parameter to 3165d514b0f3Smrg InitKeyboardDeviceStruct allows to override that. The chosen 3166d514b0f3Smrg rules = "evdev" 3167d514b0f3Smrg model = "pc105" 3168d514b0f3Smrg layout = "us" 3169d514b0f3Smrg Is the default used by Xephyr from 3170d514b0f3Smrg xorg-x11-server-Xephyr-1.11.99.901-3.20120124.fc17.x86_64 3171d514b0f3Smrg 3172d514b0f3Smrgcommit 8b3c5a5fac297226a467ea15c16cea8e5da51b8f 3173d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3174d514b0f3SmrgDate: Wed Feb 1 08:45:10 2012 +0200 3175d514b0f3Smrg 3176d514b0f3Smrg introduce qxl_option_helpers.[ch] 3177d514b0f3Smrg 3178d514b0f3Smrgcommit 96349ebb43e7de49b6b561b79d6fff5ada7aa4c7 3179d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 3180d514b0f3SmrgDate: Thu Feb 9 16:54:29 2012 -0500 3181d514b0f3Smrg 3182d514b0f3Smrg Don't leak the surface when we run out of video memory. 3183d514b0f3Smrg 3184d514b0f3Smrg Running out of video memory would cause send_create_surface() to 3185d514b0f3Smrg return NULL without putting the allocated surface back on the free 3186d514b0f3Smrg list. Fix this by not allocating the surface until after the video 3187d514b0f3Smrg memory is allocated, and, if surface allocation fails, freeing the 3188d514b0f3Smrg video memory. 3189d514b0f3Smrg 3190d514b0f3Smrgcommit c5ab0b538bd437e5e4aa86678d12a676c6edd1e8 3191d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 3192d514b0f3SmrgDate: Thu Feb 9 16:51:56 2012 -0500 3193d514b0f3Smrg 3194d514b0f3Smrg Move check for zero width/height surfaces to qxl_surface_create() 3195d514b0f3Smrg 3196d514b0f3Smrgcommit 1a371d76e32b2b3612e37ae15684632c987699b7 3197d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 3198d514b0f3SmrgDate: Tue Feb 7 14:36:05 2012 -0500 3199d514b0f3Smrg 3200d514b0f3Smrg In qxl_check_copy() accept pixmaps that don't have surfaces 3201d514b0f3Smrg 3202d514b0f3Smrg UXA will correctly fall back to using PutImage if the pixmaps are not 3203d514b0f3Smrg in offscreen memory (ie., they don't have surfaces attached), so there 3204d514b0f3Smrg is no need to return FALSE in qxl_check_copy() just because the 3205d514b0f3Smrg pixmaps don't have surfaces associated with them. 3206d514b0f3Smrg 3207d514b0f3Smrgcommit 5a6715a074abb5ab2eb0513038a1ba8bd577239e 3208d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3209d514b0f3SmrgDate: Tue Jan 31 00:23:27 2012 +0200 3210d514b0f3Smrg 3211d514b0f3Smrg xf86PciInfo.h is deprecated and unused, drop it 3212d514b0f3Smrg 3213d514b0f3Smrgcommit d07c8acc3057cc577a67d04dc8499e2996ed30b4 3214d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3215d514b0f3SmrgDate: Tue Jan 31 00:23:09 2012 +0200 3216d514b0f3Smrg 3217d514b0f3Smrg qxl_image: cleanup qxl_image_create 3218d514b0f3Smrg 3219d514b0f3Smrgcommit da1d595ad303b997343df91ebfb70c82c4bbb748 3220d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3221d514b0f3SmrgDate: Mon Jan 30 23:17:43 2012 +0200 3222d514b0f3Smrg 3223d514b0f3Smrg Enable surface and caching option defaults for Xspice 3224d514b0f3Smrg 3225d514b0f3Smrgcommit df89dc60feda16de907e93bf7da381873c01644f 3226d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3227d514b0f3SmrgDate: Mon Jan 30 23:14:32 2012 +0200 3228d514b0f3Smrg 3229d514b0f3Smrg xspice: remove duplicate declaration (fixes warning) 3230d514b0f3Smrg 3231d514b0f3Smrgcommit d6eedbdfbbb2eee8e6ff119dc0c12ff173a1cef6 3232d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3233d514b0f3SmrgDate: Mon Jan 30 16:15:05 2012 -0500 3234d514b0f3Smrg 3235d514b0f3Smrg Enable surface and caching options for XSpice too 3236d514b0f3Smrg 3237d514b0f3Smrgcommit 4e68645a4d9a84d009b603d908e5b20a47db0724 3238d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3239d514b0f3SmrgDate: Sat Jan 28 13:47:20 2012 +0200 3240d514b0f3Smrg 3241d514b0f3Smrg examples/spiceqxl.xorg.conf.example: fix in vm usage. 3242d514b0f3Smrg 3243d514b0f3Smrg RHBZ #785373 3244d514b0f3Smrg 3245d514b0f3Smrg workaround vmmouse segfault by disabling udev in 3246d514b0f3Smrg spiceqxl.xorg.conf.example. 3247d514b0f3Smrg We don't really need it anyway since we explicitly specify drivers for 3248d514b0f3Smrg video keyboard and mouse. 3249d514b0f3Smrg 3250d514b0f3Smrgcommit 8ab5b7e0faa12bf5aa1575c5fd11230284f68d71 3251d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3252d514b0f3SmrgDate: Tue Jan 17 11:35:04 2012 -0500 3253d514b0f3Smrg 3254d514b0f3Smrg Enable caching of images based on the configuration options 3255d514b0f3Smrg 3256d514b0f3Smrgcommit 57b5d7a1a20fb4f138131e644251d1a49ede94c8 3257d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3258d514b0f3SmrgDate: Mon Jan 16 11:11:52 2012 -0500 3259d514b0f3Smrg 3260d514b0f3Smrg Return NULL from qxl_surface_create() when surfaces are disabled 3261d514b0f3Smrg 3262d514b0f3Smrgcommit 6acad24a8df389e72c923e02fedd615e56dfe15b 3263d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3264d514b0f3SmrgDate: Mon Jan 16 10:54:57 2012 -0500 3265d514b0f3Smrg 3266d514b0f3Smrg Add support for parsing various options 3267d514b0f3Smrg 3268d514b0f3Smrg - EnableImageCache 3269d514b0f3Smrg - EnableFallbackCache 3270d514b0f3Smrg - EnableSurfaces 3271d514b0f3Smrg 3272d514b0f3Smrg EnableImageCache will enable the use of caching for PutImage 3273d514b0f3Smrg requests. EnableFallbackCache will enable the use of caching for image 3274d514b0f3Smrg commands that are the result of fallback rendering. 3275d514b0f3Smrg 3276d514b0f3Smrgcommit 1b5a3f606a16fd704cdbd296b29f7dc89faf8471 3277d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@l3000.localdomain> 3278d514b0f3SmrgDate: Thu Jan 19 14:56:30 2012 -0500 3279d514b0f3Smrg 3280d514b0f3Smrg Use u64_to_pointer() instead of a cast to void * 3281d514b0f3Smrg 3282d514b0f3Smrgcommit 8aad7d4d95cd095e8e11cabbfde10b5d3b755a72 3283d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 3284d514b0f3SmrgDate: Thu Jan 19 08:18:58 2012 -0500 3285d514b0f3Smrg 3286d514b0f3Smrg Track damage for PolyLine fallbacks. 3287d514b0f3Smrg 3288d514b0f3Smrg This is a substantial speedup for the Gimp. 3289d514b0f3Smrg 3290d514b0f3Smrgcommit c2ae430e572a1c7c8cebb8174482ded743a0b7f2 3291d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3292d514b0f3SmrgDate: Tue Jan 17 17:50:18 2012 +0200 3293d514b0f3Smrg 3294d514b0f3Smrg qxl-driver: call vgaHWSetStdFuncs explicitly 3295d514b0f3Smrg 3296d514b0f3Smrg Previously it was called via vgaHWGetHWRec, since 1.11.99.901 3297d514b0f3Smrg it is no longer so. The relevant xserver commit: 3298d514b0f3Smrg 3299d514b0f3Smrg 4bd6579188e718654c35f95623fd4772f9e0ef06 3300d514b0f3Smrg vgahw: Don't default to standard (port space) access routines 3301d514b0f3Smrg 3302d514b0f3Smrg From: Adam Jackson <ajax@redhat.com> 3303d514b0f3Smrg 3304d514b0f3Smrgcommit 37230939c6ebebac1ee9ce0f3de66a9a22355ab0 3305d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3306d514b0f3SmrgDate: Fri Jan 13 17:15:42 2012 +0200 3307d514b0f3Smrg 3308d514b0f3Smrg build fixes: sched_yield and missing declaration 3309d514b0f3Smrg 3310d514b0f3Smrg From: Adam Jackson <ajax@redhat.com> 3311d514b0f3Smrg 3312d514b0f3Smrgcommit c02da3f529513fc42afce9185e41852b8ae1407a 3313d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3314d514b0f3SmrgDate: Wed Jan 18 08:40:18 2012 -0500 3315d514b0f3Smrg 3316d514b0f3Smrg Guard access to "pci" with #ifndef XPSICE 3317d514b0f3Smrg 3318d514b0f3Smrgcommit 89f71d1be4a28e7bf0d60e3089b1f28202fb821f 3319d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3320d514b0f3SmrgDate: Tue Jan 17 11:24:29 2012 -0500 3321d514b0f3Smrg 3322d514b0f3Smrg Fix mis-merge 3323d514b0f3Smrg 3324d514b0f3Smrg qxl_reset() has to be defined before qxl_close_screen(). 3325d514b0f3Smrg 3326d514b0f3Smrgcommit 9600e4a0b57693da451f3f5ca61637d0275c3836 3327d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3328d514b0f3SmrgDate: Wed Oct 5 12:27:27 2011 -0400 3329d514b0f3Smrg 3330d514b0f3Smrg Reset non-primary device out of CloseScreen(). 3331d514b0f3Smrg 3332d514b0f3Smrg Otherwise, client windows will linger even after the server shuts 3333d514b0f3Smrg down. Don't reset the primary device so that we can preserve the fonts 3334d514b0f3Smrg etc. 3335d514b0f3Smrg 3336d514b0f3Smrgcommit e2fad1c9afe55ee9909a3ec8f142d2611f88b3f7 3337d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3338d514b0f3SmrgDate: Sat Mar 19 12:47:52 2011 -0400 3339d514b0f3Smrg 3340d514b0f3Smrg If qxl_pre_init() is called without a confScreen, just return FALSE. 3341d514b0f3Smrg 3342d514b0f3Smrg Otherwise, the driver crashes when called from Xorg -configure. 3343d514b0f3Smrg 3344d514b0f3Smrgcommit 420876da9eafeece83e4719a469d2e1ce0b13478 3345d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3346d514b0f3SmrgDate: Tue Aug 9 05:16:56 2011 -0400 3347d514b0f3Smrg 3348d514b0f3Smrg Transmit images in smaller chunks 3349d514b0f3Smrg 3350d514b0f3Smrg This makes use of the 'chunks' feature of the SPICE protocol to send 3351d514b0f3Smrg images in chunks smaller than 512 * 512 bytes. This reduces the 3352d514b0f3Smrg likelihood of running out of memory when big image are transmitted. 3353d514b0f3Smrg 3354d514b0f3Smrgcommit 5da2a6e4999265b717a7fd18039a90edcd9ba941 3355d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3356d514b0f3SmrgDate: Sun Dec 18 19:48:57 2011 +0200 3357d514b0f3Smrg 3358d514b0f3Smrg configure.ac: support autoconf 2.63 3359d514b0f3Smrg 3360d514b0f3Smrg AC_CHECK_FILE(cond,[not-empty],[]) in autoconf 2.63 produces an empty 3361d514b0f3Smrg else that is illegal for bash, but forgoes the else when given a 3362d514b0f3Smrg AC_CHECK_FILE(cond,[not-empty]). 2.68 produces correct output on both, 3363d514b0f3Smrg so it's unaffected. 3364d514b0f3Smrg 3365d514b0f3Smrgcommit 10d122e7bc9a78be17b130c27495564562bf0f93 3366d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3367d514b0f3SmrgDate: Mon Dec 19 02:09:37 2011 -0500 3368d514b0f3Smrg 3369d514b0f3Smrg Revert "Use new 8BIT_A format for 8 bit pixmaps." 3370d514b0f3Smrg 3371d514b0f3Smrg This reverts commit 8ea466a2f408524a9fcc08ed0a17f3c935857afa. 3372d514b0f3Smrg 3373d514b0f3Smrg (This change was pushed accidentally) 3374d514b0f3Smrg 3375d514b0f3Smrgcommit 635a5887c52382b481de1ecca463a3fbb7fd6aa3 3376d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 3377d514b0f3SmrgDate: Sat Dec 17 05:39:32 2011 -0500 3378d514b0f3Smrg 3379d514b0f3Smrg Don't translate newly generated paccess region 3380d514b0f3Smrg 3381d514b0f3Smrg The region passed to uxa_prepare_access() is in screen coordinates, 3382d514b0f3Smrg but the driver wants drawable coordinates. Hence we do a translation. 3383d514b0f3Smrg 3384d514b0f3Smrg However, when the passed region is NULL, we generate the region 3385d514b0f3Smrg ourselves based on the full drawable extents. This region is already 3386d514b0f3Smrg in drawable space so shouldn't be translated. 3387d514b0f3Smrg 3388d514b0f3Smrgcommit 8ea466a2f408524a9fcc08ed0a17f3c935857afa 3389d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 3390d514b0f3SmrgDate: Tue Dec 13 03:51:35 2011 -0500 3391d514b0f3Smrg 3392d514b0f3Smrg Use new 8BIT_A format for 8 bit pixmaps. 3393d514b0f3Smrg 3394d514b0f3Smrgcommit 30b4b72cdbdf9f0e92a8d1c4e01779f60f15a741 3395d514b0f3SmrgAuthor: Gerd Hoffmann <kraxel@redhat.com> 3396d514b0f3SmrgDate: Thu Oct 6 17:06:10 2011 +0200 3397d514b0f3Smrg 3398d514b0f3Smrg support _ASYNC io calls and interrupt handling (busy wait) 3399d514b0f3Smrg 3400d514b0f3Smrg rebased with Xspice changes. 3401d514b0f3Smrg 3402d514b0f3Smrg Signed-off-by: Alon Levy <alevy@redhat.com> 3403d514b0f3Smrg 3404d514b0f3Smrgcommit c77ba9f217093f946a4c6bf6edf9f34b24844d8d 3405d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 3406d514b0f3SmrgDate: Fri Oct 28 12:56:30 2011 -0400 3407d514b0f3Smrg 3408d514b0f3Smrg Translate the access region according to the drawable offset. 3409d514b0f3Smrg 3410d514b0f3Smrg The driver code expects to be given coordinates relative to the 3411d514b0f3Smrg offscreen pixmap. 3412d514b0f3Smrg 3413d514b0f3Smrgcommit 0d3a9a626402ef0cc52430fe4cb35d7b5da68536 3414d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3415d514b0f3SmrgDate: Tue Aug 2 21:31:11 2011 +0300 3416d514b0f3Smrg 3417d514b0f3Smrg rename xspice Xspice 3418d514b0f3Smrg 3419d514b0f3Smrgcommit 38cedb7ad42f11fe451507d82922d4e94cdcf15d 3420d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3421d514b0f3SmrgDate: Mon Aug 1 19:17:48 2011 +0300 3422d514b0f3Smrg 3423d514b0f3Smrg xspice: make --cgdb non magical, use XSPICE_ENABLE_GDB 3424d514b0f3Smrg 3425d514b0f3Smrgcommit b89a0b11b1133bf2991580203867830747ad4de1 3426d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 3427d514b0f3SmrgDate: Sun Aug 21 10:11:48 2011 -0400 3428d514b0f3Smrg 3429d514b0f3Smrg Only save the VGA fonts for the primary device. 3430d514b0f3Smrg 3431d514b0f3Smrg Otherwise, if we try to save the VGA fonts when initializing a 3432d514b0f3Smrg non-primary device, the saving will be routed to the primary one 3433d514b0f3Smrg putting it into VGA mode, which then locks up. 3434d514b0f3Smrg 3435d514b0f3Smrgcommit 4a040532492b212e05f5375994adcfdd171e0410 3436d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3437d514b0f3SmrgDate: Tue Jul 26 13:44:30 2011 -0400 3438d514b0f3Smrg 3439d514b0f3Smrg Ignore devices classes when matching PCI devices 3440d514b0f3Smrg 3441d514b0f3Smrg A device_class of 0x00030000 means we will only match VGA compatible 3442d514b0f3Smrg controllers, but when multiple devices are added to the VM, the 3443d514b0f3Smrg additional ones will have subclass 0x8000 ("Display controller"). 3444d514b0f3Smrg 3445d514b0f3Smrg We need to be able to drive those too. 3446d514b0f3Smrg 3447d514b0f3Smrgcommit 3b851a37a7030688fc8ee361167b3567e6623edf 3448d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3449d514b0f3SmrgDate: Sat Jul 23 20:31:11 2011 +0300 3450d514b0f3Smrg 3451d514b0f3Smrg spiceqxl.xorg.conf.example: typo and order fixes 3452d514b0f3Smrg 3453d514b0f3Smrgcommit c65af64529a7abd99bd175e1e49fb98f289fb55a 3454d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3455d514b0f3SmrgDate: Sat Jul 23 20:08:35 2011 +0300 3456d514b0f3Smrg 3457d514b0f3Smrg README.xspice: use consistent and vnc default port 3458d514b0f3Smrg 3459d514b0f3Smrgcommit f637c79f121348b02b0fdae7613675acda380815 3460d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3461d514b0f3SmrgDate: Sat Jul 23 20:07:04 2011 +0300 3462d514b0f3Smrg 3463d514b0f3Smrg xspice: add missing --tls-port default 3464d514b0f3Smrg 3465d514b0f3Smrgcommit dd90fa9277283b4806aba307ca952bea0402b534 3466d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3467d514b0f3SmrgDate: Sat Jul 23 12:55:42 2011 +0300 3468d514b0f3Smrg 3469d514b0f3Smrg 0.0.16 3470d514b0f3Smrg 3471d514b0f3Smrg Brown paper bag release: fix scripts/xspice to run. 3472d514b0f3Smrg 3473d514b0f3Smrg Did a few more fixes in the same time: 3474d514b0f3Smrg less verbose error messages by default 3475d514b0f3Smrg add missing command line in xspice for --x509-cert-file 3476d514b0f3Smrg check for existance of certificates before running Xorg 3477d514b0f3Smrg 3478d514b0f3Smrgcommit 7c4804541084ba8f1d11c4c86f0276235520c7be 3479d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3480d514b0f3SmrgDate: Sat Jul 23 13:36:10 2011 +0300 3481d514b0f3Smrg 3482d514b0f3Smrg scripts/xspice: prevent running with missing certificates 3483d514b0f3Smrg 3484d514b0f3Smrg since spice-server aborts if it is missing any of the ca-cert, server cert 3485d514b0f3Smrg or server key, when running with --tls-port, check for them ourselves first. 3486d514b0f3Smrg 3487d514b0f3Smrg also add missing --x509-cert-file switch, and add --disable-ticketing 3488d514b0f3Smrg to example in --help. 3489d514b0f3Smrg 3490d514b0f3Smrgcommit 432c5870104f583166234b9655628f359983bbfa 3491d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3492d514b0f3SmrgDate: Sat Jul 23 13:11:54 2011 +0300 3493d514b0f3Smrg 3494d514b0f3Smrg spiceqxl_io_port: make dprint silent 3495d514b0f3Smrg 3496d514b0f3Smrg and read XSPICE_IO_PORT_DEBUG_LEVEL environment variable. 3497d514b0f3Smrg 3498d514b0f3Smrgcommit 345c0b9818d5624858cfeb6b9ddba92d4eb64a0d 3499d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3500d514b0f3SmrgDate: Sat Jul 23 13:11:19 2011 +0300 3501d514b0f3Smrg 3502d514b0f3Smrg scripts/xspice: fix --cgdb 3503d514b0f3Smrg 3504d514b0f3Smrgcommit a596303cb1f6bfcbb3ea9575faa8e984c52eb5a8 3505d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3506d514b0f3SmrgDate: Sat Jul 23 12:55:10 2011 +0300 3507d514b0f3Smrg 3508d514b0f3Smrg scripts/xspice: fix to run 3509d514b0f3Smrg 3510d514b0f3Smrgcommit ec418d246d083cb5c2317d2f5f6a775de252a5b9 3511d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3512d514b0f3SmrgDate: Fri Jul 22 03:53:20 2011 +0300 3513d514b0f3Smrg 3514d514b0f3Smrg 0.0.15: now with xspice! 3515d514b0f3Smrg 3516d514b0f3Smrg xspice is a new X server that is also a Spice server. See 3517d514b0f3Smrg README.xspice for more information. 3518d514b0f3Smrg 3519d514b0f3Smrg + added configure options to accomodate an extra driver (spiceqxl_drv.so) 3520d514b0f3Smrg built alongside existing qxl_drv.so 3521d514b0f3Smrg + XSPICE define where the code could not be split easily (qxl_driver.c 3522d514b0f3Smrg and qxl.h) 3523d514b0f3Smrg - no functional changes to driver. 3524d514b0f3Smrg + some small cleanups (still too many warnings) 3525d514b0f3Smrg 3526d514b0f3Smrgcommit a84cc00d777ee2e078eae94f3f65f8174dba9bdd 3527d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3528d514b0f3SmrgDate: Fri Jul 22 04:33:40 2011 +0300 3529d514b0f3Smrg 3530d514b0f3Smrg add missing copyright headers 3531d514b0f3Smrg 3532d514b0f3Smrgcommit 51003b11a0ad3ecccdb07319398ca7fb43af5271 3533d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3534d514b0f3SmrgDate: Fri Jul 22 02:25:46 2011 +0300 3535d514b0f3Smrg 3536d514b0f3Smrg xspice: fix make distcheck 3537d514b0f3Smrg 3538d514b0f3Smrgcommit fa1700964a3da4cba85f61f4f563d39d09cd4cd4 3539d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3540d514b0f3SmrgDate: Fri Jul 22 01:20:58 2011 +0300 3541d514b0f3Smrg 3542d514b0f3Smrg xspice: add most options existing in qemu 3543d514b0f3Smrg 3544d514b0f3Smrg Add (copy from ui/spice-core.c) most of the options from qemu for 3545d514b0f3Smrg spice server. Notable exception is per channel port selection, so 3546d514b0f3Smrg the only sure way to verify all channels use the secure port (or 3547d514b0f3Smrg the normal one) is to not set the port (or not set the secure port). 3548d514b0f3Smrg 3549d514b0f3Smrg About options: All options are settable either from environment 3550d514b0f3Smrg variables called XSPICE_SOMETHING or by a SpiceSomething parameter 3551d514b0f3Smrg in the Device section of the xorg configuration file. The xspice wrapper 3552d514b0f3Smrg added later makes use of those environment variables and gives a 3553d514b0f3Smrg more standard command line parameter interface. 3554d514b0f3Smrg 3555d514b0f3Smrgcommit e289df207b63064d10455fec6e406171711605d5 3556d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3557d514b0f3SmrgDate: Fri Jul 22 01:26:57 2011 +0300 3558d514b0f3Smrg 3559d514b0f3Smrg spiceqxl_io_port: s/init_qxl_ram/xspice_init_qxl_ram/ 3560d514b0f3Smrg 3561d514b0f3Smrgcommit e36912352b34f711dedc007d9b07eff8427bf5d0 3562d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3563d514b0f3SmrgDate: Fri Jul 22 01:25:21 2011 +0300 3564d514b0f3Smrg 3565d514b0f3Smrg xspice/qxl_driver: fix implicitly defined function warning 3566d514b0f3Smrg 3567d514b0f3Smrgcommit bd39af72b31c9855362161d9e08c0b2e788dc143 3568d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3569d514b0f3SmrgDate: Sun Jun 26 18:39:41 2011 +0200 3570d514b0f3Smrg 3571d514b0f3Smrg xspice: qxl_unmap_memory: stop worker and track worker status 3572d514b0f3Smrg 3573d514b0f3Smrg stop the worker thread and track the status, ignoring io requests (i.e. 3574d514b0f3Smrg prevent red_dispatcher writes to red_worker) if red_worker is stopped. 3575d514b0f3Smrg 3576d514b0f3Smrg This fixes spice red_worker asserts from actions attepted after X 3577d514b0f3Smrg has destroyed a screen. X runs in a loop destroying and recreating screens 3578d514b0f3Smrg multiple times during the process lifetime, whenever the last X client 3579d514b0f3Smrg has exited. 3580d514b0f3Smrg 3581d514b0f3Smrg Note that the spice server is kept up during a X screen restart. This is 3582d514b0f3Smrg on purpose, to avoid a spice-client closing when doing a window manager 3583d514b0f3Smrg restart. Cleanup of the spice-server on atexit - still to do. 3584d514b0f3Smrg 3585d514b0f3Smrgcommit c4aff2b753e80e49f88e95ea02d1ff1de21a2391 3586d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3587d514b0f3SmrgDate: Wed Apr 27 18:44:29 2011 +0300 3588d514b0f3Smrg 3589d514b0f3Smrg xspice/qxl_ring: yield when ring is full 3590d514b0f3Smrg 3591d514b0f3Smrgcommit ee0e638e119d54fb3f9eda6de18f8fb3884d8509 3592d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3593d514b0f3SmrgDate: Wed Apr 27 18:22:28 2011 +0300 3594d514b0f3Smrg 3595d514b0f3Smrg xspice: README, TODO, config, xspice launcher script 3596d514b0f3Smrg 3597d514b0f3Smrg xspice is placed under scripts, adding a new Makefile.am, only 3598d514b0f3Smrg installed if --enable-xspice. 3599d514b0f3Smrg spiceqxl.xorg.conf.example is placed under examples to be installed 3600d514b0f3Smrg to share/doc if --enable-xspice. 3601d514b0f3Smrg 3602d514b0f3Smrgcommit 4d04f2bb72bf8d7aff6f33d2dd77d8c5c0e77f83 3603d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3604d514b0f3SmrgDate: Wed Apr 27 18:20:09 2011 +0300 3605d514b0f3Smrg 3606d514b0f3Smrg xspice: add inputs (mouse and keyboard) 3607d514b0f3Smrg 3608d514b0f3Smrg uses xf86AddInputDriver, xf86PostButtonEvent, xf86PostMotionEvent and xf86PostKeyboardEvent 3609d514b0f3Smrg 3610d514b0f3Smrg reused xspice_get_spice_server to access the single spice server instance. 3611d514b0f3Smrg 3612d514b0f3Smrgcommit c54fef726efbf6c2f00e27b85a46a47741af1786 3613d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3614d514b0f3SmrgDate: Wed Apr 27 18:24:38 2011 +0300 3615d514b0f3Smrg 3616d514b0f3Smrg xspice: implement ioport_write 3617d514b0f3Smrg 3618d514b0f3Smrgcommit c48574980b1c0924e04a93631ea8fda09f6487da 3619d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3620d514b0f3SmrgDate: Wed Apr 27 18:18:57 2011 +0300 3621d514b0f3Smrg 3622d514b0f3Smrg xspice: add init_qxl_ram 3623d514b0f3Smrg 3624d514b0f3Smrgcommit 0848656de81df95a456c740d59b05ab51a71b425 3625d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3626d514b0f3SmrgDate: Wed Apr 27 17:58:17 2011 +0300 3627d514b0f3Smrg 3628d514b0f3Smrg xspice: add display interface 3629d514b0f3Smrg 3630d514b0f3Smrgcommit 6c92a6e04e7bc9fb86bacc426ee63e810f462f61 3631d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3632d514b0f3SmrgDate: Wed Apr 27 17:48:15 2011 +0300 3633d514b0f3Smrg 3634d514b0f3Smrg xspice: init spice server, add main loop 3635d514b0f3Smrg 3636d514b0f3Smrg Initialize a SpiceServer instance, and implement SpiceCoreInterface, 3637d514b0f3Smrg that is fd read, write notification and watchs (timers). 3638d514b0f3Smrg 3639d514b0f3Smrg The SpiceServer instance creation is wrapped in xspice_get_spice_server to allow 3640d514b0f3Smrg access from the pointer and keyboard drivers introduced later. 3641d514b0f3Smrg 3642d514b0f3Smrg The fd implementation is off because Xserver doesn't allow us to be 3643d514b0f3Smrg notified on write unblock, only read. Workaround is to poll. 3644d514b0f3Smrg 3645d514b0f3Smrgcommit 2e869f6489113a07300c937e6103a5e019b68f93 3646d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3647d514b0f3SmrgDate: Wed Apr 27 17:45:31 2011 +0300 3648d514b0f3Smrg 3649d514b0f3Smrg xspice: add SpicePort config option 3650d514b0f3Smrg 3651d514b0f3Smrgcommit 3b99e0e25337aa8aecdc7b414ca8021cb12628e1 3652d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3653d514b0f3SmrgDate: Wed Apr 27 17:25:42 2011 +0300 3654d514b0f3Smrg 3655d514b0f3Smrg xspice: implement map_helper, unmap_helper, add init_qxl_rom 3656d514b0f3Smrg 3657d514b0f3Smrg Memory is taken from malloc instead of from the pci bar. 3658d514b0f3Smrg 3659d514b0f3Smrg Adds shadow_rom to qxl_screen_t. 3660d514b0f3Smrg 3661d514b0f3Smrg Introduces init_qxl_rom, which is directly taken from the qxl device 3662d514b0f3Smrg in qemu. Plenty of TODO's added in this commit about various constants 3663d514b0f3Smrg and about factoring out the code to not do this copy paste from qemu. 3664d514b0f3Smrg 3665d514b0f3Smrgcommit 267ce8421450bdbe99df8ac0c0b55482a19203ef 3666d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3667d514b0f3SmrgDate: Wed Apr 27 17:14:27 2011 +0300 3668d514b0f3Smrg 3669d514b0f3Smrg xspice: use spiceqxlModuleData as entry point 3670d514b0f3Smrg 3671d514b0f3Smrgcommit 76fd7158eb521eb12a18835d7c4f1d3b5f156796 3672d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3673d514b0f3SmrgDate: Wed Apr 27 17:10:57 2011 +0300 3674d514b0f3Smrg 3675d514b0f3Smrg xspice: don't load ramdac and vgahw sub modules 3676d514b0f3Smrg 3677d514b0f3Smrgcommit 00cc49ce4d8ce48b1c29e9a34c10db410483d4b2 3678d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3679d514b0f3SmrgDate: Wed Apr 27 17:10:45 2011 +0300 3680d514b0f3Smrg 3681d514b0f3Smrg xspice: allocate a single slot 3682d514b0f3Smrg 3683d514b0f3Smrgcommit f3ca425f08275de670c963047a3d86e1fe481b2b 3684d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3685d514b0f3SmrgDate: Wed Apr 27 17:01:38 2011 +0300 3686d514b0f3Smrg 3687d514b0f3Smrg xspice: stop using pci and vga 3688d514b0f3Smrg 3689d514b0f3Smrg This ifdefs out all the parts in qxl_driver.c that are pci device specific 3690d514b0f3Smrg and are not required by xspice. No functional change. The resulting spiceqxl_drv.so 3691d514b0f3Smrg doesn't run. 3692d514b0f3Smrg 3693d514b0f3Smrgcommit 9e30b11be0134713922555a710b6be0e664b3af2 3694d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3695d514b0f3SmrgDate: Wed Apr 27 16:30:21 2011 +0300 3696d514b0f3Smrg 3697d514b0f3Smrg xspice: add spiceqxl_io_port, empty implementation 3698d514b0f3Smrg 3699d514b0f3Smrgcommit d7c3e279081c932f30231a060feb5df3460055b2 3700d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3701d514b0f3SmrgDate: Wed Apr 27 16:11:09 2011 +0300 3702d514b0f3Smrg 3703d514b0f3Smrg xspice: use spiceqxl as name of xspice driver 3704d514b0f3Smrg 3705d514b0f3Smrg Fixes a few places that have hardcoded "qxl" to use the already defined 3706d514b0f3Smrg QXL_DRIVER_NAME. 3707d514b0f3Smrg 3708d514b0f3Smrgcommit f9d4fc347ba7927d4a723c3226f215bdcaab126e 3709d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3710d514b0f3SmrgDate: Wed Apr 27 16:04:52 2011 +0300 3711d514b0f3Smrg 3712d514b0f3Smrg xspice: add configure option and make target 3713d514b0f3Smrg 3714d514b0f3Smrg adds --enable-xspice[=no|yes|only], which builds an spiceqxl_drv.so target, and 3715d514b0f3Smrg defines SUPPORT_XSPICE. Fails build if spice-server not found. If you 3716d514b0f3Smrg set to only it will not build the qxl driver. This is useful for easier 3717d514b0f3Smrg packaging by not creating unpackaged artifacts. 3718d514b0f3Smrg 3719d514b0f3Smrgcommit e76334e08ca939f1963ce7ece0e60a3d12247467 3720d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3721d514b0f3SmrgDate: Tue Jul 19 09:33:43 2011 +0300 3722d514b0f3Smrg 3723d514b0f3Smrg configure.ac: show configure options 3724d514b0f3Smrg 3725d514b0f3Smrgcommit a8e911bf3862a29c2ef9648699448c40f206401a 3726d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3727d514b0f3SmrgDate: Wed Apr 27 14:41:24 2011 +0300 3728d514b0f3Smrg 3729d514b0f3Smrg qxl_driver: introduce helpers for memory map and unmap 3730d514b0f3Smrg 3731d514b0f3Smrg qxl_map_memory_helper and qxl_unmap_memory_helper introduced, here as 3732d514b0f3Smrg a simple split, later different implementation if XSPICE defined will 3733d514b0f3Smrg be added. Nicer then putting an ifdef inside the map/unmap functions. 3734d514b0f3Smrg 3735d514b0f3Smrgcommit edf1a6596388b1e5b871cb1be4a1f7c6ba75e4c1 3736d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3737d514b0f3SmrgDate: Wed Apr 27 14:29:46 2011 +0300 3738d514b0f3Smrg 3739d514b0f3Smrg qxl_driver: add setup_slot helper 3740d514b0f3Smrg 3741d514b0f3Smrg used in qxl_reset. Later ifdefed with XSPICE, which only uses a single 3742d514b0f3Smrg slot covering all memory (really it should just avoid calling the translation 3743d514b0f3Smrg mechanism, but for now this is simple enough). 3744d514b0f3Smrg 3745d514b0f3Smrgcommit fc87a47c7fb61c2a5c3c8563b6fd1a500541649a 3746d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3747d514b0f3SmrgDate: Wed Apr 27 14:34:51 2011 +0300 3748d514b0f3Smrg 3749d514b0f3Smrg add config options (empty for now) 3750d514b0f3Smrg 3751d514b0f3Smrgcommit 141154b6b5cf3abf7855477b72edc1618a0188e1 3752d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3753d514b0f3SmrgDate: Wed Apr 27 14:22:09 2011 +0300 3754d514b0f3Smrg 3755d514b0f3Smrg partially replace outb with ioport_write 3756d514b0f3Smrg 3757d514b0f3Smrg replace everywhere it is needed for xspice - places left out are ifdefed 3758d514b0f3Smrg out later based on the same define mentioned in qxl.h, XSPICE. 3759d514b0f3Smrg 3760d514b0f3Smrgcommit e59bb1a7ea16751c185a9ab33d93f7242118cb4c 3761d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3762d514b0f3SmrgDate: Wed Apr 27 14:13:30 2011 +0300 3763d514b0f3Smrg 3764d514b0f3Smrg qxl_ring: keep qxl pointer 3765d514b0f3Smrg 3766d514b0f3Smrg Add a qxl_screen_t* member to qxl_ring to make generelizing outb to 3767d514b0f3Smrg ioport_write easier in the next patch. This means we do an extra deref 3768d514b0f3Smrg and addition for every outb, but it means the code becomes simpler for 3769d514b0f3Smrg doing outb in qxl_drv.so and a function call for spiceqxl_drv.so 3770d514b0f3Smrg 3771d514b0f3Smrgcommit 3c6b36fab37e3d5ab66d0080bd086eaff9778ec6 3772d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3773d514b0f3SmrgDate: Fri Jul 22 03:43:01 2011 +0300 3774d514b0f3Smrg 3775d514b0f3Smrg qxl: bump spice-protocol to 0.8.1 for RINGs size defines 3776d514b0f3Smrg 3777d514b0f3Smrgcommit 698d12e3f9c4b2c25f5730308203eae3f031d6e0 3778d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3779d514b0f3SmrgDate: Tue May 24 14:27:22 2011 +0300 3780d514b0f3Smrg 3781d514b0f3Smrg log git commit if any during load 3782d514b0f3Smrg 3783d514b0f3Smrgcommit 5af8fd656deba5e2ac3d9fab161ff7cc80a68ec5 3784d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3785d514b0f3SmrgDate: Tue May 24 11:17:02 2011 +0300 3786d514b0f3Smrg 3787d514b0f3Smrg configure.ac: remove unused DRIVER_NAME 3788d514b0f3Smrg 3789d514b0f3Smrgcommit 2a206fb4c4fdc7bb09e0b1e6cd6c4111c9268095 3790d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3791d514b0f3SmrgDate: Fri Jul 22 01:27:26 2011 +0300 3792d514b0f3Smrg 3793d514b0f3Smrg qxl_surface: fix unused print_region warning 3794d514b0f3Smrg 3795d514b0f3Smrg introduced a define for enableing it, DEBUG_REGIONS. 3796d514b0f3Smrg 3797d514b0f3Smrgcommit ce5507756e87a73bc6275ac275073932cd122583 3798d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3799d514b0f3SmrgDate: Fri Jul 15 11:00:51 2011 -0400 3800d514b0f3Smrg 3801d514b0f3Smrg Revert "use spice-protocol defines for ring sizes" 3802d514b0f3Smrg 3803d514b0f3Smrg This reverts commit 9ee2aa1ccefe1f3fecaf481f38581c9b0f201ef4. 3804d514b0f3Smrg 3805d514b0f3Smrg Conflicts: 3806d514b0f3Smrg 3807d514b0f3Smrg src/qxl_driver.c 3808d514b0f3Smrg 3809d514b0f3Smrgcommit 9b915fab9d29f66b825d7a46e158f026f10a41dc 3810d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3811d514b0f3SmrgDate: Thu Jul 14 13:59:55 2011 -0400 3812d514b0f3Smrg 3813d514b0f3Smrg 0.0.14 3814d514b0f3Smrg 3815d514b0f3Smrgcommit 4d4b0d35ce4c321b84f5686be6f16a58ae3f1980 3816d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3817d514b0f3SmrgDate: Wed Apr 27 16:46:14 2011 +0300 3818d514b0f3Smrg 3819d514b0f3Smrg cleanup (add eol between system and non system includes) 3820d514b0f3Smrg 3821d514b0f3Smrgcommit 8bce20872cf3ef5bed5b6b6ce26f508c8466cd1e 3822d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3823d514b0f3SmrgDate: Wed Apr 27 14:58:53 2011 +0300 3824d514b0f3Smrg 3825d514b0f3Smrg qxl_driver: whitespace fixes 3826d514b0f3Smrg 3827d514b0f3Smrg removing whitespace in lines consisting only of it. 3828d514b0f3Smrg most of those areas are touched later, but not all. 3829d514b0f3Smrg 3830d514b0f3Smrgcommit 9f4e67c41f708164ddd979d99471217d2f721807 3831d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3832d514b0f3SmrgDate: Wed Apr 27 14:44:21 2011 +0300 3833d514b0f3Smrg 3834d514b0f3Smrg qxl_driver: fix three incompatible pointer passed warnings 3835d514b0f3Smrg 3836d514b0f3Smrgcommit 66a30b8e44e0ec173fbadfd233b4b204e33fb9f5 3837d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3838d514b0f3SmrgDate: Wed Apr 27 14:31:25 2011 +0300 3839d514b0f3Smrg 3840d514b0f3Smrg qxl_driver: fix initialization from wrong pointer warning 3841d514b0f3Smrg 3842d514b0f3Smrgcommit 9ee2aa1ccefe1f3fecaf481f38581c9b0f201ef4 3843d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3844d514b0f3SmrgDate: Wed Apr 27 14:24:35 2011 +0300 3845d514b0f3Smrg 3846d514b0f3Smrg use spice-protocol defines for ring sizes 3847d514b0f3Smrg 3848d514b0f3Smrgcommit a3d3ab64d24b966179c0af5d23ceaf4bf9dcf9f1 3849d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3850d514b0f3SmrgDate: Wed Apr 27 14:03:38 2011 +0300 3851d514b0f3Smrg 3852d514b0f3Smrg qxl.h: move spice include right after system includes 3853d514b0f3Smrg 3854d514b0f3Smrgcommit 6f57df2d498a3cc8a4c44ca026624a51c09ccca1 3855d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3856d514b0f3SmrgDate: Wed Apr 27 13:54:28 2011 +0300 3857d514b0f3Smrg 3858d514b0f3Smrg qxl_image.c: fix defined but unused warning 3859d514b0f3Smrg 3860d514b0f3Smrgcommit f0428e6f6308c5eba060678f8e98bc759fd5cb39 3861d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3862d514b0f3SmrgDate: Wed Apr 27 13:53:01 2011 +0300 3863d514b0f3Smrg 3864d514b0f3Smrg qxl_mem.c: fix pointer arithmatic warning (-Wpointer-arith) 3865d514b0f3Smrg 3866d514b0f3Smrgcommit 37b1d20a57d7a6b5a2efc622b628230a16be8e3e 3867d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3868d514b0f3SmrgDate: Wed Apr 27 13:12:53 2011 +0300 3869d514b0f3Smrg 3870d514b0f3Smrg qxl.h: double include protection 3871d514b0f3Smrg 3872d514b0f3Smrgcommit b8b8754421f98cc6edc7993e5b65b9228102bcd1 3873d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3874d514b0f3SmrgDate: Sun Mar 20 14:15:07 2011 -0400 3875d514b0f3Smrg 3876d514b0f3Smrg Fix VT switching 3877d514b0f3Smrg 3878d514b0f3Smrg - Surfaces need to be evacuated before switching VT 3879d514b0f3Smrg 3880d514b0f3Smrg - The device must be reset 3881d514b0f3Smrg 3882d514b0f3Smrg - Framebuffer access must be turned off 3883d514b0f3Smrg 3884d514b0f3Smrg - Pixmaps created while switched away must be created in host memory. 3885d514b0f3Smrg 3886d514b0f3Smrgcommit ae165af1ad3fed9d6443f5733afecfb3b577a1aa 3887d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3888d514b0f3SmrgDate: Sat Mar 19 13:38:06 2011 -0400 3889d514b0f3Smrg 3890d514b0f3Smrg Generate tighter damage for PolyFillRect 3891d514b0f3Smrg 3892d514b0f3Smrg https://bugzilla.redhat.com/show_bug.cgi?id=552000 3893d514b0f3Smrg 3894d514b0f3Smrgcommit ab8fd100430f7a142799960ce371b36f4c673cda 3895d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 3896d514b0f3SmrgDate: Sat Mar 19 15:19:13 2011 -0400 3897d514b0f3Smrg 3898d514b0f3Smrg Tiled upload of images after software fallback. 3899d514b0f3Smrg 3900d514b0f3Smrg Instead of uploading the full software image in one go, upload it in 3901d514b0f3Smrg 512x512 tiles to avoid having to find huge huge blocks of memory and 3902d514b0f3Smrg potentially running out. 3903d514b0f3Smrg 3904d514b0f3Smrgcommit 81e3d5c118bbe75688be61d7739a48452f1a9415 3905d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 3906d514b0f3SmrgDate: Sat Mar 19 11:56:00 2011 -0400 3907d514b0f3Smrg 3908d514b0f3Smrg Don't re-upload read-only surfaces after a software fallback. 3909d514b0f3Smrg 3910d514b0f3Smrg Surfaces that were used in a read-only way don't need to be uploaded 3911d514b0f3Smrg again since they didn't change. This is a particularly important 3912d514b0f3Smrg optimization for Composite since sources and masks there don't have 3913d514b0f3Smrg tight damage tracking regions. 3914d514b0f3Smrg 3915d514b0f3Smrgcommit 3657800a64af34d04a18bbf342a648ab4e28c294 3916d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3917d514b0f3SmrgDate: Thu Feb 10 20:08:24 2011 +0200 3918d514b0f3Smrg 3919d514b0f3Smrg s/qxl_ram_header/QXLRam/ 3920d514b0f3Smrg 3921d514b0f3Smrgcommit b25d9a5c425aad88da704df6a7551d12b4f140f1 3922d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3923d514b0f3SmrgDate: Thu Feb 10 15:55:25 2011 +0200 3924d514b0f3Smrg 3925d514b0f3Smrg use structs from spice-protocol qxl_dev.h 3926d514b0f3Smrg 3927d514b0f3Smrg A bunch of renames and just plain removal (where the 3928d514b0f3Smrg struct was never used): 3929d514b0f3Smrg * s/qxl_cursor_cmd/QXLCursorCmd/ 3930d514b0f3Smrg * s/qxl_mode/QXLMode/ 3931d514b0f3Smrg * s/qxl_command/QXLCommand/ 3932d514b0f3Smrg * remove qxl_command_ext 3933d514b0f3Smrg * s/qxl_rect/QXLRect/ 3934d514b0f3Smrg * s/qxl_release_info/QXLReleaseInfo/ 3935d514b0f3Smrg * remove QXLReleaseInfo_ext (prev qxl_release_info_ext) 3936d514b0f3Smrg * s/qxl_clip/QXLClip/ 3937d514b0f3Smrg * s/qxl_point/QXLPoint/ 3938d514b0f3Smrg * s/qxl_pattern/QXLPattern/ 3939d514b0f3Smrg * s/qxl_point16/QXLPoint16/ 3940d514b0f3Smrg * s/qxl_brush/QXLBrush/ 3941d514b0f3Smrg * s/qxl_mask/QXLQMask/ 3942d514b0f3Smrg * s/QXL_BRUSH/SPICE_BRUSH/ 3943d514b0f3Smrg * s/QXL_IMAGE/SPICE_IMAGE/ 3944d514b0f3Smrg * s/qxl_image_descriptor/QXLImageDescriptor/ 3945d514b0f3Smrg * s/qxl_data_chunk/QXLDataChunk/ 3946d514b0f3Smrg * s/qxl_bitmap_format/SpiceBitmapFmt/ 3947d514b0f3Smrg * s/qxl_bitmap/QXLBitmap/ 3948d514b0f3Smrg * s/qxl_image/QXLImage/ 3949d514b0f3Smrg * s/qxl_fill/QXLFill/ 3950d514b0f3Smrg * s/qxl_opaque/QXLOpaque/ 3951d514b0f3Smrg * s/qxl_copy/QXLCopy/ 3952d514b0f3Smrg * s/qxl_transparent/QXLTransparent/ 3953d514b0f3Smrg * s/qxl_alpha_blend/QXLAlphaBlend/ 3954d514b0f3Smrg * s/qxl_copy_bits/QXLCopyBits/ 3955d514b0f3Smrg * s/qxl_blend/QXLBlend/ 3956d514b0f3Smrg * s/qxl_rop3/QXLRop3/ 3957d514b0f3Smrg * s/qxl_line_attr/QXLLineAttr/ 3958d514b0f3Smrg * s/qxl_stroke/QXLStroke/ 3959d514b0f3Smrg * s/qxl_text/QXLText/ 3960d514b0f3Smrg * use QXLBlackness,QXLInvers (typo needs fixing later), QXLWhiteness 3961d514b0f3Smrg * s/QXL_CLIP_TYPE/SPICE_CLIP_TYPE/ 3962d514b0f3Smrg * s/qxl_compat_drawable/QXLCompatDrawable/ 3963d514b0f3Smrg * s/qxl_drawable/QXLDrawable/ 3964d514b0f3Smrg * s/qxl_surface_cmd/QXLSurfaceCmd/ 3965d514b0f3Smrg * remove qxl_compat_update_cmd 3966d514b0f3Smrg * remove qxl_update_cmd 3967d514b0f3Smrg * remove QXL_CURSOR_DEVICE_DATA_SIZE 3968d514b0f3Smrg * s/CURSOR_TYPE/SPICE_CURSOR_TYPE/ 3969d514b0f3Smrg * s/qxl_cursor/QXLCursor/ 3970d514b0f3Smrg * s/qxl_rom/QXLRom/ 3971d514b0f3Smrg * remove QXL_SURF_TYPE_PRIMARY 3972d514b0f3Smrg * s/qxl_surface_create/QXLSurfaceCreate/ 3973d514b0f3Smrg 3974d514b0f3Smrgcommit 9fd9bf3676f343ef3e124874c45add88ce2a084f 3975d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3976d514b0f3SmrgDate: Thu Feb 10 15:47:54 2011 +0200 3977d514b0f3Smrg 3978d514b0f3Smrg use spice-protocol qxl_dev.h enums 3979d514b0f3Smrg 3980d514b0f3Smrgcommit e18ea01e672e08e46f63292a5cd5a55be8b8f434 3981d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3982d514b0f3SmrgDate: Thu Feb 10 12:47:54 2011 +0200 3983d514b0f3Smrg 3984d514b0f3Smrg build: add spice-protocol dep 3985d514b0f3Smrg 3986d514b0f3Smrgcommit 688d7679cb7dbcd57ec07cbaee9b115efbd639c1 3987d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3988d514b0f3SmrgDate: Thu Feb 10 16:04:14 2011 +0200 3989d514b0f3Smrg 3990d514b0f3Smrg qxl_driver: remove unused variable (found by gcc 4.6.0) 3991d514b0f3Smrg 3992d514b0f3Smrgcommit 260ee7001a4c0f3bf5e93e355b23ee8417c7c63a 3993d514b0f3SmrgAuthor: Alon Levy <alevy@redhat.com> 3994d514b0f3SmrgDate: Thu Feb 10 16:03:52 2011 +0200 3995d514b0f3Smrg 3996d514b0f3Smrg gcc-4.6.0 fix: cast unmatching function pointers 3997d514b0f3Smrg 3998d514b0f3Smrgcommit 4bfbdbb821ebd8112ea58b026f50c3d6d813cc67 3999d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4000d514b0f3SmrgDate: Wed Jan 26 08:42:32 2011 -0500 4001d514b0f3Smrg 4002d514b0f3Smrg Bump version number 4003d514b0f3Smrg 4004d514b0f3Smrgcommit 2258af0d7e970e5bf3a0d3722cfbc42b4e8fac6d 4005d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4006d514b0f3SmrgDate: Wed Jan 26 07:43:08 2011 -0500 4007d514b0f3Smrg 4008d514b0f3Smrg Remove calls to SourceValidate() from uxa-damage.c 4009d514b0f3Smrg 4010d514b0f3Smrg These were kludges and are not necessary with new servers. Note that 4011d514b0f3Smrg they were never necessary for the QXL driver because we generally 4012d514b0f3Smrg don't use software cursors. 4013d514b0f3Smrg 4014d514b0f3Smrgcommit 46a91d2db56dc92ea2f661fa4ea20842c915773e 4015d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 4016d514b0f3SmrgDate: Mon Jan 24 21:50:53 2011 -0500 4017d514b0f3Smrg 4018d514b0f3Smrg Make it compile with and without dixLookupPrivate() changes. 4019d514b0f3Smrg 4020d514b0f3Smrgcommit 7d82b5470fd61765934665294a4437f46c7795bf 4021d514b0f3SmrgAuthor: Søren Sandmann <ssp@localhost.localdomain> 4022d514b0f3SmrgDate: Tue Nov 16 11:40:29 2010 -0500 4023d514b0f3Smrg 4024d514b0f3Smrg Only add images to the cache if they are 128x128 or bigger 4025d514b0f3Smrg 4026d514b0f3Smrg Keep track of how many live images there are, for debugging purposes. 4027d514b0f3Smrg 4028d514b0f3Smrgcommit acb4654ccf0aea3b66d0ac9397a13e9a2c1e7178 4029d514b0f3SmrgAuthor: Søren Sandmann <ssp@localhost.localdomain> 4030d514b0f3SmrgDate: Tue Nov 16 11:33:01 2010 -0500 4031d514b0f3Smrg 4032d514b0f3Smrg Add debugging code 4033d514b0f3Smrg 4034d514b0f3Smrgcommit d7a3be0f400a68dd128f8040cb775bf369f9f7d3 4035d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4036d514b0f3SmrgDate: Tue Nov 16 08:41:50 2010 -0500 4037d514b0f3Smrg 4038d514b0f3Smrg More explicit life cycle management 4039d514b0f3Smrg 4040d514b0f3Smrgcommit 72ef08efd801538e60fd3dc2d46b0278a8df4b50 4041d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4042d514b0f3SmrgDate: Sat Nov 13 16:30:36 2010 -0500 4043d514b0f3Smrg 4044d514b0f3Smrg Add a surface cache 4045d514b0f3Smrg 4046d514b0f3Smrgcommit 32d119db640e9fd93eb0fd4f1efad31779bb63a9 4047d514b0f3SmrgAuthor: Søren Sandmann <ssp@localhost.localdomain> 4048d514b0f3SmrgDate: Thu Nov 11 08:38:37 2010 -0500 4049d514b0f3Smrg 4050d514b0f3Smrg Don't unmap memory until after uxa_close_screen; allow surface creation without vtSema 4051d514b0f3Smrg 4052d514b0f3Smrgcommit 24a3f9f978c906b0be6dc04c3527b9dce5b6161a 4053d514b0f3SmrgAuthor: Søren Sandmann <ssp@localhost.localdomain> 4054d514b0f3SmrgDate: Sun Nov 7 04:08:15 2010 -0500 4055d514b0f3Smrg 4056d514b0f3Smrg uxa: In change_window_attributes() only read back if the backing pixmap changed 4057d514b0f3Smrg 4058d514b0f3Smrg This speeds up log in time considerably. 4059d514b0f3Smrg 4060d514b0f3Smrgcommit ed41c3a610af0c5182e52d72d311d06581594a39 4061d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4062d514b0f3SmrgDate: Mon Oct 25 17:36:51 2010 -0400 4063d514b0f3Smrg 4064d514b0f3Smrg Comment out debugging spew 4065d514b0f3Smrg 4066d514b0f3Smrgcommit a3adaf144c05ff6fc9647cfb95147218ad68b401 4067d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4068d514b0f3SmrgDate: Mon Oct 25 17:21:17 2010 -0400 4069d514b0f3Smrg 4070d514b0f3Smrg Migrate pixmaps out of video memory before mode setting 4071d514b0f3Smrg 4072d514b0f3Smrg After mode setting migrate them back in. 4073d514b0f3Smrg 4074d514b0f3Smrgcommit ffcfa53e0d8456d283bf2861fc72f94e08b9b37b 4075d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4076d514b0f3SmrgDate: Sun Oct 24 20:28:11 2010 -0400 4077d514b0f3Smrg 4078d514b0f3Smrg Add qxl_surface_evacuates/replace_all() methods. 4079d514b0f3Smrg 4080d514b0f3Smrg These functions will be used to migrate surfaces out of video memory 4081d514b0f3Smrg when we have to reset the device. 4082d514b0f3Smrg 4083d514b0f3Smrgcommit 11d8429b82215a676219ed6c5515f02b61052c49 4084d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4085d514b0f3SmrgDate: Fri Oct 22 12:38:00 2010 -0400 4086d514b0f3Smrg 4087d514b0f3Smrg Track live surfaces in a doubly linked list. 4088d514b0f3Smrg 4089d514b0f3Smrg This allows us to find the surfaces that have to be moved out of video 4090d514b0f3Smrg memory at reset time. 4091d514b0f3Smrg 4092d514b0f3Smrgcommit 52b4325f00e79909342658938f479c7e0930a37e 4093d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4094d514b0f3SmrgDate: Thu Oct 21 22:14:28 2010 -0400 4095d514b0f3Smrg 4096d514b0f3Smrg Track the pixmap in the surface struct. 4097d514b0f3Smrg 4098d514b0f3Smrg This is in preparation for making surfaces survives resets and mode 4099d514b0f3Smrg sets. To do that, we'll need to evacuate them out of video memory, and 4100d514b0f3Smrg then copy them back in. If some surface can't be reallocated, we'll 4101d514b0f3Smrg need to make sure it is removed from its corresponding surface. 4102d514b0f3Smrg 4103d514b0f3Smrgcommit efd9f6a3e379ed02c3eec059e7f26f54a82649e1 4104d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4105d514b0f3SmrgDate: Tue Oct 19 15:43:07 2010 -0400 4106d514b0f3Smrg 4107d514b0f3Smrg Move the surface lists into qxl_screen_t 4108d514b0f3Smrg 4109d514b0f3Smrg That way things don't break horribly if you have multiple graphics cards 4110d514b0f3Smrg 4111d514b0f3Smrgcommit 31d4f0ce6208c78db4782c0d39dbe29fb8e25168 4112d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4113d514b0f3SmrgDate: Tue Oct 19 14:45:39 2010 -0400 4114d514b0f3Smrg 4115d514b0f3Smrg Fix a bunch of warnings 4116d514b0f3Smrg 4117d514b0f3Smrgcommit 95ddf806c92a84f9517634382ffeb0e198186231 4118d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4119d514b0f3SmrgDate: Fri Oct 15 16:35:48 2010 +0200 4120d514b0f3Smrg 4121d514b0f3Smrg free qxl->uxe with regular free not xfree 4122d514b0f3Smrg 4123d514b0f3Smrgcommit de9ce7c7b8ca7c6eff9ff93cd668fbd3b13f2c76 4124d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4125d514b0f3SmrgDate: Fri Oct 15 16:30:58 2010 +0200 4126d514b0f3Smrg 4127d514b0f3Smrg Fix the driver crashing qemu on 32 bits 4128d514b0f3Smrg 4129d514b0f3Smrg When casting a 32bit pointer to a uint64 the following happens: 4130d514b0f3Smrg ptr -> int32 -> int64 -> uint64, so if the address is above 4131d514b0f3Smrg 0x80000000 which is quite normal for mapped io, the int32 -> int64 4132d514b0f3Smrg cast causes sign extension, not good! 4133d514b0f3Smrg 4134d514b0f3Smrg Also fix the printing of the memslots the memslot phys addresses 4135d514b0f3Smrg are always 64 bit, so tell printf to always read 64 bits, otherwise 4136d514b0f3Smrg we end up printing the higher 32 bits of the address as size on 32 4137d514b0f3Smrg bits. 4138d514b0f3Smrg 4139d514b0f3Smrgcommit 4fd3791cd4a36df6125a13fc9332ed3c9249cd2d 4140d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4141d514b0f3SmrgDate: Fri Oct 15 20:24:05 2010 +0200 4142d514b0f3Smrg 4143d514b0f3Smrg Don't access the qxl device when our vt is not focussed 4144d514b0f3Smrg 4145d514b0f3Smrg Trying to do so causes the X-server to segfault as it has 4146d514b0f3Smrg dropped iopl permission, which is, erm, undesirable :) 4147d514b0f3Smrg 4148d514b0f3Smrgcommit 3863e55263c6eff0fa7fbc544780c1cef5df9f0c 4149d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4150d514b0f3SmrgDate: Thu Oct 7 18:35:23 2010 +0200 4151d514b0f3Smrg 4152d514b0f3Smrg Fix restoration of text mode font when leaving the vt (rhbz#633647) 4153d514b0f3Smrg 4154d514b0f3Smrgcommit fde682311fed56eb4f71dd2c4625218d7f77ce1a 4155d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4156d514b0f3SmrgDate: Thu Oct 7 12:03:24 2010 +0200 4157d514b0f3Smrg 4158d514b0f3Smrg Change default virtual size to match the highest available resolution 4159d514b0f3Smrg 4160d514b0f3Smrg With the old default virtual size of 1024x768, using higher resolutions 4161d514b0f3Smrg is not possible without an xorg.conf. Since the default now a days is 4162d514b0f3Smrg to not have an xorg.conf, this is sort of unfortunate. 4163d514b0f3Smrg 4164d514b0f3Smrg This patch makes these higher resolutions available, while keeping the 4165d514b0f3Smrg default resolution used when none is specified through xorg.conf at 4166d514b0f3Smrg 1024x786, so that the spice client window won't be way too large for 4167d514b0f3Smrg smaller screens by default. 4168d514b0f3Smrg 4169d514b0f3Smrg Note that when running inside a vm with a qxl device with a 8MB 4170d514b0f3Smrg framebuffer the code, for automatically setting the virtualsize to the 4171d514b0f3Smrg largest width and height seen in the resolution list, would lead to a too 4172d514b0f3Smrg large virtual size. The 8MB list has both 1920x1080 and 1600x1200 4173d514b0f3Smrg resolution which lead to a virtualsize of 1920x1200 which does not fit, 4174d514b0f3Smrg there is a special check for this situation, which maximizes the available 4175d514b0f3Smrg width in this case. This means that for using 1600x1200 on an 8MB device 4176d514b0f3Smrg an xorg.conf is still necessary. 4177d514b0f3Smrg 4178d514b0f3Smrg This change does come at the prize of using more memory, but that 4179d514b0f3Smrg seems like a reasonable price to pay to give us parity wrt supported 4180d514b0f3Smrg resolutions with the windows driver. Also this is a must have to allow 4181d514b0f3Smrg the to be written Linux agent to change the guest resolution to match 4182d514b0f3Smrg the client machines one when running in auto fullscreen mode. 4183d514b0f3Smrg 4184d514b0f3Smrg In the long run we should add support for resizing the fb on the fly to 4185d514b0f3Smrg match the resolution. 4186d514b0f3Smrg 4187d514b0f3Smrgcommit 9b3e355f37841a6c25ebf2452614d3618367dc9c 4188d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4189d514b0f3SmrgDate: Thu Oct 7 12:01:55 2010 +0200 4190d514b0f3Smrg 4191d514b0f3Smrg Make non default qxl modes available 4192d514b0f3Smrg 4193d514b0f3Smrg Currently unless an xorg.conf with modelines is used a lot of the 4194d514b0f3Smrg qxl supported modes like 1920x1080 are not available, because the xorg 4195d514b0f3Smrg default modelines set does not have modelines for them. 4196d514b0f3Smrg 4197d514b0f3Smrg This patch adds code to dynamically generate modelines for all modes 4198d514b0f3Smrg in the qxl mode list, bringing the xorg driver up to par with the windows 4199d514b0f3Smrg driver wrt supported resolutions. 4200d514b0f3Smrg 4201d514b0f3Smrg Note that an xorg.conf specifying a large enough virtual screen size is 4202d514b0f3Smrg still needed for resolutions > 1024x768, but one no longer needs to add 4203d514b0f3Smrg modelines in it. This is fixed in my next patch. 4204d514b0f3Smrg 4205d514b0f3Smrg This patch also adjusts a few (fake) clock limits to make all the 4206d514b0f3Smrg modes reported by the qxl device when compiled with a 16MB framebuffer 4207d514b0f3Smrg work. 4208d514b0f3Smrg 4209d514b0f3Smrgcommit 50e4a57bbe7535d289116c93fe79d20a435fb1ef 4210d514b0f3SmrgAuthor: Hans de Goede <hdegoede@redhat.com> 4211d514b0f3SmrgDate: Thu Oct 7 18:35:58 2010 +0200 4212d514b0f3Smrg 4213d514b0f3Smrg Make virtual resolution match actual resolution on startup 4214d514b0f3Smrg 4215d514b0f3Smrg When setting a Virtual size in xorg.conf, currently there can be 4216d514b0f3Smrg a difference between the actual output resolution (say 1600x1200) and 4217d514b0f3Smrg the virtual resolution (for example 2048x1600). This causes parts 4218d514b0f3Smrg of the desktop too be unreachable because the cursor is bound to 4219d514b0f3Smrg the spicec window and thus one cannot pan over the virtual desktop. 4220d514b0f3Smrg 4221d514b0f3Smrg Moreover other parts of the driver don't seem to like this and I've 4222d514b0f3Smrg seen several hangs / crashes which I think are related. 4223d514b0f3Smrg 4224d514b0f3Smrgcommit 0737c92f266a72a7d0c892bead5a77795bc06e12 4225d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4226d514b0f3SmrgDate: Fri Oct 15 11:49:28 2010 -0400 4227d514b0f3Smrg 4228d514b0f3Smrg Add put_image() acceleration 4229d514b0f3Smrg 4230d514b0f3Smrgcommit 59b8ac875d5f1170864b0dc0215b6c6f4b82ef14 4231d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4232d514b0f3SmrgDate: Fri Oct 15 10:25:16 2010 -0400 4233d514b0f3Smrg 4234d514b0f3Smrg Some memory management changes 4235d514b0f3Smrg 4236d514b0f3Smrgcommit 05f6f7d362c3b4c3e01f121d0f47964a12e18db4 4237d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4238d514b0f3SmrgDate: Fri Oct 15 07:39:53 2010 -0400 4239d514b0f3Smrg 4240d514b0f3Smrg Split uxa_glyphs_init() into uxa_init_resources(). 4241d514b0f3Smrg 4242d514b0f3Smrg uxa_glyphs_init() eventually allocates a pixmap which has to be done 4243d514b0f3Smrg after damage setup since otherwise _dixInitPrivates(PIXMAP_PRIVATE) 4244d514b0f3Smrg will assert(). 4245d514b0f3Smrg 4246d514b0f3Smrgcommit 3240754854ba9e45e9299cbaeb1fdb0abf9d83e3 4247d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4248d514b0f3SmrgDate: Thu Oct 14 14:00:01 2010 -0400 4249d514b0f3Smrg 4250d514b0f3Smrg Add dependency tracking for surfaces. 4251d514b0f3Smrg 4252d514b0f3Smrg The device needs dependent surfaces to be referenced in 4253d514b0f3Smrg surfaces_dest[] and surfaces_rects[] of the drawable command. 4254d514b0f3Smrg 4255d514b0f3Smrgcommit d12291d684ff1d46285ae5928638cd33c96b8477 4256d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4257d514b0f3SmrgDate: Sat Oct 2 01:43:21 2010 -0400 4258d514b0f3Smrg 4259d514b0f3Smrg Fix surface_init() 4260d514b0f3Smrg 4261d514b0f3Smrg This function needs to set free_surfaces to NULL because it can be 4262d514b0f3Smrg called multiple times. If not, the same surface will end up in the 4263d514b0f3Smrg free list more than once, which leads to double frees and other bugs. 4264d514b0f3Smrg 4265d514b0f3Smrgcommit 0b9dc625f399dfa5af6484a772673487afdaaa09 4266d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4267d514b0f3SmrgDate: Sat Oct 2 00:30:05 2010 -0400 4268d514b0f3Smrg 4269d514b0f3Smrg Fix segmentation fault when no surfaces are available 4270d514b0f3Smrg 4271d514b0f3Smrgcommit d0457b0e8c8595fbbe4c56dafb5c7daf722b4b23 4272d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4273d514b0f3SmrgDate: Wed Sep 29 06:49:51 2010 -0400 4274d514b0f3Smrg 4275d514b0f3Smrg Faster malloc() implemenetation 4276d514b0f3Smrg 4277d514b0f3Smrgcommit 9e86930d0d7a282d9db3fd8088f07445951175fd 4278d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4279d514b0f3SmrgDate: Wed Sep 29 00:01:37 2010 -0400 4280d514b0f3Smrg 4281d514b0f3Smrg Delete most debug spew 4282d514b0f3Smrg 4283d514b0f3Smrgcommit 2fb7e9bbd8264a79b35eca716acef565ad66fda1 4284d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4285d514b0f3SmrgDate: Tue Sep 28 09:26:34 2010 -0400 4286d514b0f3Smrg 4287d514b0f3Smrg Initial (buggy) support for copy area from offscreens 4288d514b0f3Smrg 4289d514b0f3Smrgcommit fded799c0e7bfdbbdf53b4609641a98130b2dff2 4290d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4291d514b0f3SmrgDate: Mon Sep 27 06:55:50 2010 -0400 4292d514b0f3Smrg 4293d514b0f3Smrg Enable solid fills for surfaces 4294d514b0f3Smrg 4295d514b0f3Smrgcommit 01dc285614fcd353f689da808fda7997b169e1c8 4296d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4297d514b0f3SmrgDate: Mon Sep 27 06:12:30 2010 -0400 4298d514b0f3Smrg 4299d514b0f3Smrg Fix surface bugs 4300d514b0f3Smrg 4301d514b0f3Smrgcommit 553a4963fe653ca948db556d684eafb1980a68a7 4302d514b0f3SmrgAuthor: Søren Sandmann <ssp@localhost.localdomain> 4303d514b0f3SmrgDate: Mon Sep 27 03:19:38 2010 -0400 4304d514b0f3Smrg 4305d514b0f3Smrg Set the correct size of pixmaps 4306d514b0f3Smrg 4307d514b0f3Smrgcommit e1e5366f25012caa51e309f3c96ad0bd7543e0d9 4308d514b0f3SmrgAuthor: Søren Sandmann <ssp@localhost.localdomain> 4309d514b0f3SmrgDate: Wed Sep 15 11:04:24 2010 -0400 4310d514b0f3Smrg 4311d514b0f3Smrg Update to the new dixPrivate ABI. 4312d514b0f3Smrg 4313d514b0f3Smrgcommit c91939f318c472a2bfbc9fdbf526647dada87159 4314d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4315d514b0f3SmrgDate: Fri Jul 9 10:27:24 2010 -0400 4316d514b0f3Smrg 4317d514b0f3Smrg Initial preparations for surfaces. 4318d514b0f3Smrg 4319d514b0f3Smrg - Surface command enums 4320d514b0f3Smrg 4321d514b0f3Smrg - Memory contexts for allocating video memory 4322d514b0f3Smrg 4323d514b0f3Smrg - Internal API for creating, drawing to, and destroying surfaces 4324d514b0f3Smrg 4325d514b0f3Smrgcommit 38cf1ae55006125cf502199b9fb3a4f75f4b009f 4326d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4327d514b0f3SmrgDate: Tue Jun 22 00:26:46 2010 -0400 4328d514b0f3Smrg 4329d514b0f3Smrg Tighten damage region for fill rect 4330d514b0f3Smrg 4331d514b0f3Smrgcommit 8f05e9149da590f4374557e8a41e8b9e35fa007f 4332d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4333d514b0f3SmrgDate: Tue Jun 22 00:12:27 2010 -0400 4334d514b0f3Smrg 4335d514b0f3Smrg Make the fetched regions much tighter for core text 4336d514b0f3Smrg 4337d514b0f3Smrgcommit 1f9bf097d5e983afbc38b60dc44e9386c8e226e7 4338d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4339d514b0f3SmrgDate: Mon Jun 21 23:38:21 2010 -0400 4340d514b0f3Smrg 4341d514b0f3Smrg At finish_access() do the whole region 4342d514b0f3Smrg 4343d514b0f3Smrgcommit 4d3c4b28fbb0e2b684c9ffe859d1a4abaf7c22b5 4344d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4345d514b0f3SmrgDate: Mon Jun 21 23:17:37 2010 -0400 4346d514b0f3Smrg 4347d514b0f3Smrg Disable acceleration; fix bug with forgotten multiplication with bpp 4348d514b0f3Smrg 4349d514b0f3Smrgcommit 23e9d51df8b8ece10356da850944b1bedc5167de 4350d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4351d514b0f3SmrgDate: Fri Jun 11 12:48:37 2010 -0400 4352d514b0f3Smrg 4353d514b0f3Smrg Add some debugging code. 4354d514b0f3Smrg 4355d514b0f3Smrgcommit 6ec925515fdaf403d85534283eb981be6aaf05fc 4356d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4357d514b0f3SmrgDate: Fri Jun 11 11:30:42 2010 -0400 4358d514b0f3Smrg 4359d514b0f3Smrg Add a region argument to prepare access. 4360d514b0f3Smrg 4361d514b0f3Smrg Download individual boxes. 4362d514b0f3Smrg 4363d514b0f3Smrgcommit a10cb2087168dd068ffea666ea4aab2d076f4c12 4364d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4365d514b0f3SmrgDate: Thu Jun 10 13:45:29 2010 -0400 4366d514b0f3Smrg 4367d514b0f3Smrg Add stripped-down version of damage.c as uxa-damage.c. Don't use it yet 4368d514b0f3Smrg 4369d514b0f3Smrgcommit ae35aad56becedc7ebc2f858283b70b5fc382569 4370d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4371d514b0f3SmrgDate: Wed Jun 9 12:18:39 2010 -0400 4372d514b0f3Smrg 4373d514b0f3Smrg Add solid fill 4374d514b0f3Smrg 4375d514b0f3Smrgcommit cbc9f2bc2f05bb4f4589873b86776eb4a4bce65c 4376d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4377d514b0f3SmrgDate: Wed Jun 9 12:05:40 2010 -0400 4378d514b0f3Smrg 4379d514b0f3Smrg Add support for copying 4380d514b0f3Smrg 4381d514b0f3Smrgcommit 3169cd116ee7210589b6bb8718f401d2f68ab773 4382d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4383d514b0f3SmrgDate: Wed Jun 9 11:28:26 2010 -0400 4384d514b0f3Smrg 4385d514b0f3Smrg Use the correct strides. It's now slow, but working 4386d514b0f3Smrg 4387d514b0f3Smrgcommit d3cf206b9bfb3c59e2dfc113a7843ea421189239 4388d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4389d514b0f3SmrgDate: Thu Jun 10 10:56:41 2010 -0400 4390d514b0f3Smrg 4391d514b0f3Smrg Remove unused ops from qxl.h 4392d514b0f3Smrg 4393d514b0f3Smrgcommit 356b3ab866f6e2f16cdee3c0a60d9236879fc4c2 4394d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4395d514b0f3SmrgDate: Tue Jun 8 08:34:37 2010 -0400 4396d514b0f3Smrg 4397d514b0f3Smrg Disable all the damage handling 4398d514b0f3Smrg 4399d514b0f3Smrgcommit 1bc58f80e13d9246cd38ac36d5ef299c4b5b9d3b 4400d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4401d514b0f3SmrgDate: Tue Jun 8 08:26:18 2010 -0400 4402d514b0f3Smrg 4403d514b0f3Smrg Add prepare/finish access 4404d514b0f3Smrg 4405d514b0f3Smrgcommit a222ec8a729d9e333b7e0873efa592ba3fcb7177 4406d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4407d514b0f3SmrgDate: Thu Jun 3 10:49:48 2010 -0400 4408d514b0f3Smrg 4409d514b0f3Smrg Initial prepare/finish access 4410d514b0f3Smrg 4411d514b0f3Smrgcommit f7244b049674d5907a945ec355c17f33576586d1 4412d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4413d514b0f3SmrgDate: Wed Jun 2 11:06:07 2010 -0400 4414d514b0f3Smrg 4415d514b0f3Smrg Do initial uxa setup 4416d514b0f3Smrg 4417d514b0f3Smrgcommit 65d5ac5a0eecbf0ee3abdb6998ce5e615e05bb4e 4418d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4419d514b0f3SmrgDate: Wed Jun 2 10:13:56 2010 -0400 4420d514b0f3Smrg 4421d514b0f3Smrg Add a copy of UXA, but don't use it yet 4422d514b0f3Smrg 4423d514b0f3Smrgcommit e691e979b476f1ff9c6c93e12f6cea02dcb8c841 4424d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4425d514b0f3SmrgDate: Tue May 25 06:58:57 2010 -0400 4426d514b0f3Smrg 4427d514b0f3Smrg Make sure memory space is not bigger than the memory 4428d514b0f3Smrg 4429d514b0f3Smrgcommit 25329392a76eafa9cd583d2fa18b83e678dac3be 4430d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4431d514b0f3SmrgDate: Tue May 25 05:21:57 2010 -0400 4432d514b0f3Smrg 4433d514b0f3Smrg More updates; it now works with surface0 4434d514b0f3Smrg 4435d514b0f3Smrgcommit 7c9c77fc0cb5a87b513c8438c17e6a81f3efaeab 4436d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4437d514b0f3SmrgDate: Tue May 25 04:27:17 2010 -0400 4438d514b0f3Smrg 4439d514b0f3Smrg Update header to latest layout 4440d514b0f3Smrg 4441d514b0f3Smrgcommit 760f19767b8e140f73a4e9e68774c45effcd6eff 4442d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4443d514b0f3SmrgDate: Fri Apr 23 13:23:53 2010 -0400 4444d514b0f3Smrg 4445d514b0f3Smrg Initial support for surface0 4446d514b0f3Smrg 4447d514b0f3Smrgcommit 0ce5e9a3f459685ebdd900bfe2f85e073565f4bc 4448d514b0f3SmrgAuthor: Søren Sandmann <ssp@redhat.com> 4449d514b0f3SmrgDate: Wed Apr 21 10:51:50 2010 -0400 4450d514b0f3Smrg 4451d514b0f3Smrg Update qxl.h to deal with surface0 4452d514b0f3Smrg 4453d514b0f3Smrgcommit 586669561b01e289f989911cd363810420539435 4454d514b0f3SmrgAuthor: Soren Sandmann <ssp@localhost.localdomain> 4455d514b0f3SmrgDate: Mon Apr 19 09:31:08 2010 -0400 4456d514b0f3Smrg 4457d514b0f3Smrg Set correct amount of video memory 4458d514b0f3Smrg 4459d514b0f3Smrgcommit e04e850ed7d07fc12f941fd13a5fc6f32f7153e1 4460d514b0f3SmrgAuthor: Soren Sandmann <ssp@localhost.localdomain> 4461d514b0f3SmrgDate: Thu Apr 15 04:47:14 2010 -0400 4462d514b0f3Smrg 4463d514b0f3Smrg Add memslot support 4464d514b0f3Smrg 4465d514b0f3Smrgcommit 480e5028a60fb2a3d349200518241eb8bb27013c 4466d514b0f3SmrgAuthor: Soren Sandmann <ssp@localhost.localdomain> 4467d514b0f3SmrgDate: Tue Apr 13 08:35:04 2010 -0400 4468d514b0f3Smrg 4469d514b0f3Smrg Memslots support 4470d514b0f3Smrg 4471d514b0f3Smrgcommit 6973d3b2f76685ce6c0d2a73091d571263331174 4472d514b0f3SmrgAuthor: Soren Sandmann <ssp@localhost.localdomain> 4473d514b0f3SmrgDate: Tue Apr 13 04:54:59 2010 -0400 4474d514b0f3Smrg 4475d514b0f3Smrg Add memslot arguments to virtual_ and physical_address 4476d514b0f3Smrg 4477d514b0f3Smrgcommit 797c9ad548c194407945c18b62dd0d10897ec332 4478d514b0f3SmrgAuthor: Soren Sandmann <ssp@localhost.localdomain> 4479d514b0f3SmrgDate: Tue Mar 23 11:55:32 2010 -0400 4480d514b0f3Smrg 4481d514b0f3Smrg Add rom entries and port definitions for the memslots. 4482d514b0f3Smrg 4483d514b0f3Smrgcommit ae902114c1d9ffc40f21806cdc4ae78679b255dd 4484d514b0f3SmrgAuthor: Christopher Hames Halse Rogers <christopher.halse.rogers@canonical.com> 4485d514b0f3SmrgDate: Tue Aug 10 11:55:39 2010 -0400 4486d514b0f3Smrg 4487d514b0f3Smrg Fix build against video ABI 8 4488d514b0f3Smrg 4489d514b0f3Smrg PaintWindowBackground and PaintWindowBorder haven't been 4490d514b0f3Smrg used in a while and have been removed from the Screen 4491d514b0f3Smrg struct in Xserver 1.9. 4492d514b0f3Smrg 4493d514b0f3Smrg Reviewed-by: Adam Jackson <ajax@redhat.com> 4494d514b0f3Smrg Signed-off-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com> 4495d514b0f3Smrg 4496d514b0f3Smrgcommit 4640accec00aeb98f48f7d7d655301bbee409db8 4497d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4498d514b0f3SmrgDate: Wed Jul 21 16:49:04 2010 -0400 4499d514b0f3Smrg 4500d514b0f3Smrg config: add comments for main statements 4501d514b0f3Smrg 4502d514b0f3Smrgcommit 7be72f7633a48951fc766920ca504da8fce77770 4503d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4504d514b0f3SmrgDate: Wed Jul 21 16:07:00 2010 -0400 4505d514b0f3Smrg 4506d514b0f3Smrg config: replace deprecated use of AC_OUTPUT with AC_CONFIG_FILES 4507d514b0f3Smrg 4508d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4509d514b0f3Smrg 4510d514b0f3Smrgcommit 6514166ef339b699f8b83919d55091aa2678ca46 4511d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4512d514b0f3SmrgDate: Wed Jul 21 14:05:22 2010 -0400 4513d514b0f3Smrg 4514d514b0f3Smrg config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS 4515d514b0f3Smrg 4516d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4517d514b0f3Smrg 4518d514b0f3Smrgcommit 09d6bc9587e3cc96cf5c16f9fda8c30eeeb2cba5 4519d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4520d514b0f3SmrgDate: Tue Jul 20 20:24:42 2010 -0400 4521d514b0f3Smrg 4522d514b0f3Smrg config: remove unrequired AC_HEADER_STDC 4523d514b0f3Smrg 4524d514b0f3Smrg Autoconf says: 4525d514b0f3Smrg "This macro is obsolescent, as current systems have conforming 4526d514b0f3Smrg header files. New programs need not use this macro". 4527d514b0f3Smrg 4528d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4529d514b0f3Smrg 4530d514b0f3Smrgcommit b6e42f71622fd86a8f30368e49aac4c35b4a0f14 4531d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4532d514b0f3SmrgDate: Tue Jul 20 19:41:31 2010 -0400 4533d514b0f3Smrg 4534d514b0f3Smrg config: remove AC_PROG_CC as it overrides AC_PROG_C_C99 4535d514b0f3Smrg 4536d514b0f3Smrg XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls 4537d514b0f3Smrg AC_PROG_C_C99. This sets gcc with -std=gnu99. 4538d514b0f3Smrg If AC_PROG_CC macro is called afterwards, it resets CC to gcc. 4539d514b0f3Smrg 4540d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4541d514b0f3Smrg 4542d514b0f3Smrgcommit e6a4f32b962b08f1294b4c5e1a5c8220e9822b90 4543d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4544d514b0f3SmrgDate: Sun Jun 13 09:55:45 2010 -0400 4545d514b0f3Smrg 4546d514b0f3Smrg COPYING: update file with Copyright notices from source code. 4547d514b0f3Smrg 4548d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4549d514b0f3Smrg 4550d514b0f3Smrgcommit 563f31ad081038ece8b5a5b525dd516fcd6ad0fd 4551d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4552d514b0f3SmrgDate: Sat Mar 13 19:52:56 2010 +1000 4553d514b0f3Smrg 4554d514b0f3Smrg qxl: remove asserts that make no sense anymore 4555d514b0f3Smrg 4556d514b0f3Smrg Not sure why nobody noticed these, once I dropped qxl into Fedora it asserted. 4557d514b0f3Smrg Looks like they were missed when p->Private was changed to an index. 4558d514b0f3Smrg 4559d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4560d514b0f3Smrg 4561d514b0f3Smrgcommit d9a142d60603920069f478890884f20cbd7886b3 4562d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4563d514b0f3SmrgDate: Mon Feb 8 20:08:52 2010 -0500 4564d514b0f3Smrg 4565d514b0f3Smrg config: move compiler flags from configure.ac to Makefile.am 4566d514b0f3Smrg 4567d514b0f3Smrg CFLAGS is an automake defined variable that should not be set 4568d514b0f3Smrg by the module. It should not be AC_SUBST either, it already is. 4569d514b0f3Smrg 4570d514b0f3Smrg Use AM_CFLAGS in Makefile.am. This will allow the user to override 4571d514b0f3Smrg the flags as they will be in the right order. 4572d514b0f3Smrg 4573d514b0f3Smrg The -g option is already part of the default flags. 4574d514b0f3Smrg 4575d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4576d514b0f3Smrg 4577d514b0f3Smrgcommit 269276497a4f452cc943afe0eb9072519621d36e 4578d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4579d514b0f3SmrgDate: Mon Feb 8 19:07:22 2010 -0500 4580d514b0f3Smrg 4581d514b0f3Smrg config: remove unrequired '-I$(top_srcdir)/src' 4582d514b0f3Smrg 4583d514b0f3Smrg The current dir is already included by default in the makefile 4584d514b0f3Smrg top_builddir = .. 4585d514b0f3Smrg DEFAULT_INCLUDES = -I. -I$(top_builddir) 4586d514b0f3Smrg 4587d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4588d514b0f3Smrg 4589d514b0f3Smrgcommit 64a42c229af2b6a530a022e0dfff78649d63bb70 4590d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4591d514b0f3SmrgDate: Mon Feb 8 18:42:52 2010 -0500 4592d514b0f3Smrg 4593d514b0f3Smrg config: remove unused INCLUDES='-I$(top_srcdir)/src' 4594d514b0f3Smrg 4595d514b0f3Smrg This statement is redundant and not used in the makefile 4596d514b0f3Smrg 4597d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4598d514b0f3Smrg 4599d514b0f3Smrgcommit ae33c52060a59e68466c47020d158950347007f1 4600d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4601d514b0f3SmrgDate: Mon Feb 8 18:12:38 2010 -0500 4602d514b0f3Smrg 4603d514b0f3Smrg config: remove unused variable XORG_INCS 4604d514b0f3Smrg 4605d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4606d514b0f3Smrg 4607d514b0f3Smrgcommit aa91dc597c38ae411dfb226c67e3ccffd12513f7 4608d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4609d514b0f3SmrgDate: Sat Feb 6 18:11:09 2010 -0500 4610d514b0f3Smrg 4611d514b0f3Smrg Version 0.0.12 4612d514b0f3Smrg 4613d514b0f3Smrgcommit d4012a71266af13de979e6f7eb0c21bc69d28311 4614d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4615d514b0f3SmrgDate: Sat Feb 6 13:12:35 2010 -0500 4616d514b0f3Smrg 4617d514b0f3Smrg Go back to drawing with QXL_EFFECT_OPAQUE instead of BLEND 4618d514b0f3Smrg 4619d514b0f3Smrg This was accidentally changed in 73ef1f79a64595a8. 4620d514b0f3Smrg 4621d514b0f3Smrgcommit da82bd2146efae355018a81da64585cb902c3f27 4622d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4623d514b0f3SmrgDate: Sat Feb 6 13:10:34 2010 -0500 4624d514b0f3Smrg 4625d514b0f3Smrg Fixing 15/16 bit confusion accidentally broke 24 bits. 4626d514b0f3Smrg 4627d514b0f3Smrgcommit 4f1a188f6b655bd7e46d73b0a65ef161057e6ba4 4628d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4629d514b0f3SmrgDate: Sat Feb 6 17:36:26 2010 -0500 4630d514b0f3Smrg 4631d514b0f3Smrg Bump version number to 0.0.11 4632d514b0f3Smrg 4633d514b0f3Smrgcommit f68d83c3d9e0aecb844b4903d3d0d6c32bdcf5cd 4634d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4635d514b0f3SmrgDate: Sat Feb 6 17:34:53 2010 -0500 4636d514b0f3Smrg 4637d514b0f3Smrg Eliminate some warnings about casting between u64 and pointers. 4638d514b0f3Smrg 4639d514b0f3Smrgcommit fb0ad81f8c84108ae7b20aaea2642fa07228df65 4640d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4641d514b0f3SmrgDate: Sat Feb 6 12:22:29 2010 -0500 4642d514b0f3Smrg 4643d514b0f3Smrg Bump version number 4644d514b0f3Smrg 4645d514b0f3Smrgcommit 821b185478d0962a51bd8d9320a911d720fd8ce5 4646d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4647d514b0f3SmrgDate: Sat Feb 6 12:20:52 2010 -0500 4648d514b0f3Smrg 4649d514b0f3Smrg Only use QXL "16 bit" modes when the screen depth is 15. 4650d514b0f3Smrg 4651d514b0f3Smrg What QXL calls 16 bit is actually x1r5g5b5. 4652d514b0f3Smrg 4653d514b0f3Smrgcommit 2dd4e71fc90b5065fea088b5c4f0aa51c58b2611 4654d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4655d514b0f3SmrgDate: Sat Feb 6 10:36:48 2010 -0500 4656d514b0f3Smrg 4657d514b0f3Smrg Remove some unused variables 4658d514b0f3Smrg 4659d514b0f3Smrgcommit 73ef1f79a64595a8547c4f4d4f9161673a438319 4660d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4661d514b0f3SmrgDate: Sat Feb 6 09:32:00 2010 -0500 4662d514b0f3Smrg 4663d514b0f3Smrg Do the undamage handling in qxl_copy_n_to_n() 4664d514b0f3Smrg 4665d514b0f3Smrg Previously it would do it in both copy_window() and copy_area(). The 4666d514b0f3Smrg problem with that, aside from duplication of a bit code, was that 4667d514b0f3Smrg sometimes the copy operations would be empty, which meant that no 4668d514b0f3Smrg damage was generated for the copy so that the pending damage region 4669d514b0f3Smrg was actually corresponding to some earlier operation, and so 4670d514b0f3Smrg discarding it caused rendering corruption. 4671d514b0f3Smrg 4672d514b0f3Smrg This change moves the damage handling into qxl_copy_n_to_n() and only 4673d514b0f3Smrg does something when there is actually some copying going on. 4674d514b0f3Smrg 4675d514b0f3Smrgcommit 33f36098c766d86cb6f292e2806510d00e2caab6 4676d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4677d514b0f3SmrgDate: Thu Jan 28 06:44:57 2010 -0500 4678d514b0f3Smrg 4679d514b0f3Smrg Store modes pointer out of qxl_map_memory() 4680d514b0f3Smrg 4681d514b0f3Smrg Since we have to map everything, then unmap it, then map it again, we 4682d514b0f3Smrg can't store pointers to modes in the mode Private because the mapping 4683d514b0f3Smrg may have changed. So, instead store an index, and make sure the modes 4684d514b0f3Smrg pointer is stored map time and removed at unmap time. 4685d514b0f3Smrg 4686d514b0f3Smrgcommit 443e5015d9c72022b3d5404c8381c7e6354ae799 4687d514b0f3SmrgAuthor: Alan Coopersmith <alan.coopersmith@sun.com> 4688d514b0f3SmrgDate: Wed Jan 27 20:29:46 2010 -0800 4689d514b0f3Smrg 4690d514b0f3Smrg Fix build on OpenSolaris 4691d514b0f3Smrg 4692d514b0f3Smrg - Don't hardcode -Wall in Makefile.am since configure.ac sets it already 4693d514b0f3Smrg - Use <stdint.h> instead of Windows headers when building on Solaris, 4694d514b0f3Smrg even which not using gcc 4695d514b0f3Smrg 4696d514b0f3Smrg Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> 4697d514b0f3Smrg 4698d514b0f3Smrgcommit 57aaaa7e27334e167e4b3440773e6f5694b73568 4699d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4700d514b0f3SmrgDate: Wed Jan 27 14:49:08 2010 +1000 4701d514b0f3Smrg 4702d514b0f3Smrg bump to 0.0.9 4703d514b0f3Smrg 4704d514b0f3Smrg so you can't autogen on RHEL5 but you can build from tarballs 4705d514b0f3Smrg no problem. 4706d514b0f3Smrg 4707d514b0f3Smrgcommit fd0ac1f42cde8bcf28736ede176b0c9e36e52e88 4708d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4709d514b0f3SmrgDate: Sat Jan 23 11:14:08 2010 -0500 4710d514b0f3Smrg 4711d514b0f3Smrg config: add INSTALL and ChangeLog #23814 4712d514b0f3Smrg 4713d514b0f3Smrg All modules are required to have an INSTALL file and a ChangeLog file. 4714d514b0f3Smrg 4715d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4716d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4717d514b0f3Smrg 4718d514b0f3Smrgcommit 7295e82a55991ba1711fb6ebc48d57a1e1ffdbda 4719d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4720d514b0f3SmrgDate: Sat Jan 23 11:14:06 2010 -0500 4721d514b0f3Smrg 4722d514b0f3Smrg configure.ac: remove -I$(prefix)/include from INCLUDES #24676 4723d514b0f3Smrg 4724d514b0f3Smrg Using $prefix for any purpose will yield incorrect results 4725d514b0f3Smrg as not all modules uses the same prefix and that modules can use 4726d514b0f3Smrg different directory which is configurable. 4727d514b0f3Smrg 4728d514b0f3Smrg The main include dir comes from XORG_CFLAGS 4729d514b0f3Smrg 4730d514b0f3Smrg Reported-By: Michael Olbrich <m.olbrich@pengutronix.de> 4731d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4732d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4733d514b0f3Smrg 4734d514b0f3Smrgcommit 6dc97a050e52cf4d4dea22c934cd83dcf1f18013 4735d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4736d514b0f3SmrgDate: Sat Jan 23 11:14:05 2010 -0500 4737d514b0f3Smrg 4738d514b0f3Smrg configure.ac: sdkdir usage duplicates the sdk include dir 4739d514b0f3Smrg 4740d514b0f3Smrg The sdkdir variable provides a duplicate copy of the include/xorg 4741d514b0f3Smrg directory. The statement is removed as this was it's only used. 4742d514b0f3Smrg In the Makefile, there is now only one instance of the -I sdkdir 4743d514b0f3Smrg The sdkdir is provided in XORG_CFLAGS. 4744d514b0f3Smrg 4745d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4746d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4747d514b0f3Smrg 4748d514b0f3Smrgcommit fbc0da08ac3619695df93bcd8c4f7409babc47f7 4749d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4750d514b0f3SmrgDate: Sat Jan 23 11:14:02 2010 -0500 4751d514b0f3Smrg 4752d514b0f3Smrg configure.ac: deploy the new XORG_DEFAULT_OPTIONS #24242 4753d514b0f3Smrg 4754d514b0f3Smrg This macro aggregate a number of existing macros that sets commmon 4755d514b0f3Smrg X.Org components configuration options. It shields the configuration 4756d514b0f3Smrg file from future changes. 4757d514b0f3Smrg 4758d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4759d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4760d514b0f3Smrg 4761d514b0f3Smrgcommit bea47d64fdbbf96902ed67bf69db0f8f3752960e 4762d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4763d514b0f3SmrgDate: Sat Jan 23 11:14:07 2010 -0500 4764d514b0f3Smrg 4765d514b0f3Smrg make: Automake 'foreign' option is specified in configure.ac. #24206 4766d514b0f3Smrg 4767d514b0f3Smrg Remove from Makefile.am 4768d514b0f3Smrg 4769d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4770d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4771d514b0f3Smrg 4772d514b0f3Smrgcommit 3dd6bd7fc5b6b00ed95d357dfadf3a258de7b7b5 4773d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4774d514b0f3SmrgDate: Sat Jan 23 11:14:04 2010 -0500 4775d514b0f3Smrg 4776d514b0f3Smrg git: .gitignore: use common defaults with custom section # 24239 4777d514b0f3Smrg 4778d514b0f3Smrg Using common defaults will reduce errors and maintenance. 4779d514b0f3Smrg Only the very small or inexistent custom section need periodic maintenance 4780d514b0f3Smrg when the structure of the component changes. Do not edit defaults. 4781d514b0f3Smrg 4782d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4783d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4784d514b0f3Smrg 4785d514b0f3Smrgcommit a2991214c03ffee9294cfad476d9d1ba2459d02b 4786d514b0f3SmrgAuthor: Gaetan Nadon <memsize@videotron.ca> 4787d514b0f3SmrgDate: Sat Jan 23 11:14:03 2010 -0500 4788d514b0f3Smrg 4789d514b0f3Smrg packaging: add COPYING and README 4790d514b0f3Smrg 4791d514b0f3Smrg http://wiki.x.org/wiki/NewModuleGuidelines 4792d514b0f3Smrg 4793d514b0f3Smrg Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 4794d514b0f3Smrg Signed-off-by: Dave Airlie <airlied@redhat.com> 4795d514b0f3Smrg 4796d514b0f3Smrgcommit 528aeaa8620bbc2cc268204520d5b3bb8ca88ba7 4797d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4798d514b0f3SmrgDate: Fri Jan 15 09:17:10 2010 -0500 4799d514b0f3Smrg 4800d514b0f3Smrg Bump to 0.0.8 4801d514b0f3Smrg 4802d514b0f3Smrgcommit 8fb67eda1c2b7366109973e36fa6f46bd44c63ae 4803d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4804d514b0f3SmrgDate: Fri Jan 15 09:15:33 2010 -0500 4805d514b0f3Smrg 4806d514b0f3Smrg Use QXL_EFFECT_OPAQUE instead of QXL_EFFECT_BLEND 4807d514b0f3Smrg 4808d514b0f3Smrg This is required to make video detection work. 4809d514b0f3Smrg 4810d514b0f3Smrgcommit e658fa5182e57f58485095bc54e53b785d5db75e 4811d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4812d514b0f3SmrgDate: Fri Jan 15 08:56:04 2010 -0500 4813d514b0f3Smrg 4814d514b0f3Smrg Bump to 0.0.7 4815d514b0f3Smrg 4816d514b0f3Smrgcommit 1db64677301a52581d07f19e4bb44e4aa5a03004 4817d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4818d514b0f3SmrgDate: Fri Jan 15 06:48:35 2010 -0500 4819d514b0f3Smrg 4820d514b0f3Smrg For fills, only undamage the parts that are actually filled. 4821d514b0f3Smrg 4822d514b0f3Smrg Sometimes more operations than one are coalesced into one damage 4823d514b0f3Smrg event. this means filling should only undamage the parts actually 4824d514b0f3Smrg filled. 4825d514b0f3Smrg 4826d514b0f3Smrgcommit d35d1f6718c80f2497e930fc887fcea9172d6a91 4827d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4828d514b0f3SmrgDate: Mon Jan 11 04:58:25 2010 -0500 4829d514b0f3Smrg 4830d514b0f3Smrg qxl: Keep track of a separate pending_copy damage region. 4831d514b0f3Smrg 4832d514b0f3Smrg To improve performance and fix some bugs in conjunction with moving 4833d514b0f3Smrg windows around, keep damage in a separate pending_copy 4834d514b0f3Smrg region. Accelerated operations then delete this region, and whenever 4835d514b0f3Smrg new damage appears, it is unioned onto the "to_be_sent" region, which 4836d514b0f3Smrg is then submitted at BlockHandler time. 4837d514b0f3Smrg 4838d514b0f3Smrgcommit 24e525d36b9feb4adff4db76e8838c28d0027dbe 4839d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4840d514b0f3SmrgDate: Mon Jan 11 03:45:20 2010 -0500 4841d514b0f3Smrg 4842d514b0f3Smrg Change camel case names to underscore names. 4843d514b0f3Smrg 4844d514b0f3Smrgcommit a3f1b11f035051cf3e1452f81d47da80e48e17c0 4845d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4846d514b0f3SmrgDate: Mon Jan 11 03:36:45 2010 -0500 4847d514b0f3Smrg 4848d514b0f3Smrg Keep track of bytes_per_pixel in the qxl struct. 4849d514b0f3Smrg 4850d514b0f3Smrg Eliminate assumptions in various places that the mode is always 32 4851d514b0f3Smrg bits. This almost, but not quite, makes it work with 16 bit modes. The 4852d514b0f3Smrg reason it doesn't work is that the QXL_BITMAP_FMT_16BIT assumes a 555 4853d514b0f3Smrg visual, but fb assumes an 565 visual. 4854d514b0f3Smrg 4855d514b0f3Smrg But now at least it doesn't crash anymore. 4856d514b0f3Smrg 4857d514b0f3Smrgcommit 335f16154dc4c61950c95e9bbcd70e28654c1edb 4858d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4859d514b0f3SmrgDate: Mon Jan 11 09:59:16 2010 +1000 4860d514b0f3Smrg 4861d514b0f3Smrg bump version to 0.0.6 for release for Fedora inclusion 4862d514b0f3Smrg 4863d514b0f3Smrgcommit 60a38ab077046a5ba457a3a39ace2a780dbbd3d6 4864d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4865d514b0f3SmrgDate: Mon Jan 11 09:39:00 2010 +1000 4866d514b0f3Smrg 4867d514b0f3Smrg qxl: just call the wrapped function instead of the fb layer directly. 4868d514b0f3Smrg 4869d514b0f3Smrg this make it build against newer X servers a lot easier 4870d514b0f3Smrg 4871d514b0f3Smrgcommit 6c1454c6eb7172438d5802f116b1322a46108d16 4872d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4873d514b0f3SmrgDate: Mon Jan 11 09:38:38 2010 +1000 4874d514b0f3Smrg 4875d514b0f3Smrg qxl: move Damage creation to CreateScreenResources times. 4876d514b0f3Smrg 4877d514b0f3Smrg since damage isn't setup at Screen Init time 4878d514b0f3Smrg 4879d514b0f3Smrgcommit 985ef88e65e6269f5afbe71d5fa59e87219f74ad 4880d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4881d514b0f3SmrgDate: Mon Jan 11 09:38:14 2010 +1000 4882d514b0f3Smrg 4883d514b0f3Smrg qxl: drop EXA usage for now since we don't use it yet. 4884d514b0f3Smrg 4885d514b0f3Smrgcommit d8c0485bc8172dc77e38bf91599629678ae43b89 4886d514b0f3SmrgAuthor: Dave Airlie <airlied@redhat.com> 4887d514b0f3SmrgDate: Fri Jan 8 14:50:22 2010 +1000 4888d514b0f3Smrg 4889d514b0f3Smrg qxl: make build against later servers 4890d514b0f3Smrg 4891d514b0f3Smrgcommit 08687fc520fd8136cbac63c669e13c2fb3e504e8 4892d514b0f3SmrgAuthor: Dave Airlie <airlied@dhcp-1-4.bne.redhat.com> 4893d514b0f3SmrgDate: Wed Dec 23 13:27:12 2009 +1000 4894d514b0f3Smrg 4895d514b0f3Smrg qxl: make default be 1024x768 4896d514b0f3Smrg 4897d514b0f3Smrg This change lets us validate a lot of modes and if the user 4898d514b0f3Smrg doesn't supply a virtual line they'll get 1024x768, 4899d514b0f3Smrg 4900d514b0f3Smrg because we have no monitor, its hard to know what the best 4901d514b0f3Smrg thing to do in this case. 4902d514b0f3Smrg 4903d514b0f3Smrg To get larger modes add a Virtual line to xorg.conf 4904d514b0f3Smrg 4905d514b0f3Smrgcommit 92c535f4ea0c3dbe50ccca2c730e0ab06c3aba55 4906d514b0f3SmrgAuthor: Dave Airlie <airlied@dhcp-1-4.bne.redhat.com> 4907d514b0f3SmrgDate: Wed Dec 23 13:26:15 2009 +1000 4908d514b0f3Smrg 4909d514b0f3Smrg qxl: add sanity check to make sure we aren't back in VGA mode. 4910d514b0f3Smrg 4911d514b0f3Smrg For some reason we still sometimes end up back in VGA mode, 4912d514b0f3Smrg I suspect a kernel VGA access somewhere while under KD_GRAPHICS, 4913d514b0f3Smrg on real HW it would ignore this, qxl seems to "unique" and not 4914d514b0f3Smrg in a good way. 4915d514b0f3Smrg 4916d514b0f3Smrgcommit f7ba4bae1372e1c6f29416c69ee68856630aad52 4917d514b0f3SmrgAuthor: Dave Airlie <airlied@dhcp-1-4.bne.redhat.com> 4918d514b0f3SmrgDate: Tue Dec 22 20:02:36 2009 +1000 4919d514b0f3Smrg 4920d514b0f3Smrg qxl: fix access to qxl ring 4921d514b0f3Smrg 4922d514b0f3Smrg This really needs to be volatile as the hw will change it underneath 4923d514b0f3Smrg us. Really we should be using proper MMIO accessors for this stuff 4924d514b0f3Smrg not casting structs to mmio memory. 4925d514b0f3Smrg 4926d514b0f3Smrgcommit c581bf5524a7574b29cb2e4313eafb9344fd6b14 4927d514b0f3SmrgAuthor: Dave Airlie <airlied@dhcp-1-4.bne.redhat.com> 4928d514b0f3SmrgDate: Tue Dec 22 20:01:14 2009 +1000 4929d514b0f3Smrg 4930d514b0f3Smrg qxl: fix 2 trivial cosmetic issues 4931d514b0f3Smrg 4932d514b0f3Smrg 1. use correct values for unmap vid mem BAR sizes, removes warning in logs. 4933d514b0f3Smrg 2. print values from ROM not uninitialised values from qxl struct. 4934d514b0f3Smrg 4935d514b0f3Smrgcommit b544f48047a4d1f12cca5ec15b6d9900e75a8cd4 4936d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4937d514b0f3SmrgDate: Sat Nov 7 03:42:07 2009 -0500 4938d514b0f3Smrg 4939d514b0f3Smrg Bump version 4940d514b0f3Smrg 4941d514b0f3Smrgcommit 5cfac92284baf988fd51c31d70cb0ee6d9dc9cd0 4942d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4943d514b0f3SmrgDate: Sat Nov 7 03:41:42 2009 -0500 4944d514b0f3Smrg 4945d514b0f3Smrg Avoid submitting commands when device is in VGA mode. 4946d514b0f3Smrg 4947d514b0f3Smrg When someone runs "init 3", the device will be switched into VGA mode 4948d514b0f3Smrg with no notification to the driver. However, if commands are submitted 4949d514b0f3Smrg when the device is in VGA mode, they will be queued up, and then, the 4950d514b0f3Smrg next time a mode set set, an assertion in the device will take down 4951d514b0f3Smrg the entire virtual machine. 4952d514b0f3Smrg 4953d514b0f3Smrg So this patch checks whether the device is in VGA mode before 4954d514b0f3Smrg submitting each command. This is racy because the switch to VGA could 4955d514b0f3Smrg happen just after we check, but there doesn't seem to be a better way. 4956d514b0f3Smrg 4957d514b0f3Smrg (Apart from removing the assert() in the QXL device itself thereby 4958d514b0f3Smrg making it robust against command submission in VGA mode. But the 4959d514b0f3Smrg author of the device is opposed to that). 4960d514b0f3Smrg 4961d514b0f3Smrgcommit 71b30ea06a553e60580c7fe81e354f83b7c85327 4962d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4963d514b0f3SmrgDate: Fri Nov 6 13:05:06 2009 -0500 4964d514b0f3Smrg 4965d514b0f3Smrg Do not wait for idle before mode set 4966d514b0f3Smrg 4967d514b0f3Smrgcommit 35427856c51a5fd85526ff813fe60c4cd4994fcb 4968d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4969d514b0f3SmrgDate: Wed Jul 15 00:10:16 2009 -0400 4970d514b0f3Smrg 4971d514b0f3Smrg Reset before setting mode 4972d514b0f3Smrg 4973d514b0f3Smrgcommit d9792b1b222d6597421047f319b323df9264e8a8 4974d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4975d514b0f3SmrgDate: Wed Jul 1 15:33:39 2009 -0400 4976d514b0f3Smrg 4977d514b0f3Smrg Eliminate a couple of warnings 4978d514b0f3Smrg 4979d514b0f3Smrgcommit 4df2ccebb6614fe664b6b6cf7a5a0cac54572a7a 4980d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4981d514b0f3SmrgDate: Wed Jul 1 15:30:03 2009 -0400 4982d514b0f3Smrg 4983d514b0f3Smrg Add lookup3.h to Makefile.am 4984d514b0f3Smrg 4985d514b0f3Smrgcommit 123c16f82884777a54a751994f7a54a8a6716094 4986d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4987d514b0f3SmrgDate: Tue Jun 30 21:31:52 2009 -0400 4988d514b0f3Smrg 4989d514b0f3Smrg Bump version number and include stdint.h 4990d514b0f3Smrg 4991d514b0f3Smrgcommit fe61bc9f103e98161e9817ebe385f93e203b157e 4992d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4993d514b0f3SmrgDate: Wed Jul 1 15:19:31 2009 -0400 4994d514b0f3Smrg 4995d514b0f3Smrg Comment out some debugging spam 4996d514b0f3Smrg 4997d514b0f3Smrgcommit f9eefc07ee0761fc64059597692e065b6bf16994 4998d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 4999d514b0f3SmrgDate: Tue Jun 30 21:30:02 2009 -0400 5000d514b0f3Smrg 5001d514b0f3Smrg Update vendor ID 5002d514b0f3Smrg 5003d514b0f3Smrgcommit b0ce9d296678b2897dcf0939abe962dbe4ca61e5 5004d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5005d514b0f3SmrgDate: Mon Apr 27 19:02:46 2009 -0400 5006d514b0f3Smrg 5007d514b0f3Smrg Remove mmtest.c test program 5008d514b0f3Smrg 5009d514b0f3Smrgcommit 88f1bb8f9a5c2a4d80407c6b6f518871125f6784 5010d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5011d514b0f3SmrgDate: Thu Apr 9 08:24:12 2009 -0400 5012d514b0f3Smrg 5013d514b0f3Smrg Dump display tree on OOM 5014d514b0f3Smrg 5015d514b0f3Smrgcommit 62bc612d4b193bae569dcf431c0c5edf35d37360 5016d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5017d514b0f3SmrgDate: Thu Apr 9 07:23:13 2009 -0400 5018d514b0f3Smrg 5019d514b0f3Smrg Use a linked hash table implementations; use the Jenkins hash function 5020d514b0f3Smrg 5021d514b0f3Smrgcommit f2a92deb51fcf7f637f07accf5dbdd91bc253fee 5022d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5023d514b0f3SmrgDate: Wed Apr 8 08:37:16 2009 -0400 5024d514b0f3Smrg 5025d514b0f3Smrg Move hash table back into qxl_image.c 5026d514b0f3Smrg 5027d514b0f3Smrgcommit 79fc46437aa4e7bc764de4cde5b031ca6bc30ba1 5028d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5029d514b0f3SmrgDate: Wed Apr 8 07:06:19 2009 -0400 5030d514b0f3Smrg 5031d514b0f3Smrg Beginning of new hash table implementation 5032d514b0f3Smrg 5033d514b0f3Smrgcommit c0e5e3e476d6db748176bab0950cc2fa80182fc9 5034d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5035d514b0f3SmrgDate: Tue Mar 31 04:28:46 2009 -0400 5036d514b0f3Smrg 5037d514b0f3Smrg Bump version 5038d514b0f3Smrg 5039d514b0f3Smrgcommit 69ab0c56d3d6bd06d1afec6d7744baa784a514f8 5040d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5041d514b0f3SmrgDate: Tue Mar 31 04:28:02 2009 -0400 5042d514b0f3Smrg 5043d514b0f3Smrg Initial naive image caching implementation. 5044d514b0f3Smrg 5045d514b0f3Smrg It attempts to cache all image puts without exception; the id is 5046d514b0f3Smrg produced by hashing and copying every time. 5047d514b0f3Smrg 5048d514b0f3Smrgcommit a82edc29579887be456122ff65218d10b514000e 5049d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5050d514b0f3SmrgDate: Sun Mar 29 23:58:47 2009 -0400 5051d514b0f3Smrg 5052d514b0f3Smrg Compute hash codes for images 5053d514b0f3Smrg 5054d514b0f3Smrgcommit 3c6fe57d45da1ff7e21df030e321377678ffbcff 5055d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5056d514b0f3SmrgDate: Sun Mar 29 22:43:27 2009 -0400 5057d514b0f3Smrg 5058d514b0f3Smrg Formatting qxl.h, add qxl_image_destroy() 5059d514b0f3Smrg 5060d514b0f3Smrgcommit 4b48daf466e2bacdb4cb84080ea8df9009612693 5061d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5062d514b0f3SmrgDate: Sun Mar 29 22:30:07 2009 -0400 5063d514b0f3Smrg 5064d514b0f3Smrg TODO; beginning of image hashing; move virtual/phsyical functions to qxl.h 5065d514b0f3Smrg 5066d514b0f3Smrgcommit 7be9348dca4fa55289439b045079a9e819bf00e7 5067d514b0f3SmrgMerge: 23b2863 cb237a7 5068d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 5069d514b0f3SmrgDate: Thu Mar 19 13:49:13 2009 -0400 5070d514b0f3Smrg 5071d514b0f3Smrg Merge branch 'master' of git+ssh://sandmann@shell.devel.redhat.com/home/boston/sandmann/public_git/xf86-video-qxl 5072d514b0f3Smrg 5073d514b0f3Smrgcommit 23b2863efd566d6d90e39fad6801dc3abe8bdeef 5074d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 5075d514b0f3SmrgDate: Thu Mar 19 13:48:49 2009 -0400 5076d514b0f3Smrg 5077d514b0f3Smrg Cast-fest to get rid of void pointer arithmetic 5078d514b0f3Smrg 5079d514b0f3Smrgcommit 45b0a8bef5b791c07a965ba7e11c45196f949c86 5080d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@localhost.localdomain> 5081d514b0f3SmrgDate: Thu Mar 19 13:43:05 2009 -0400 5082d514b0f3Smrg 5083d514b0f3Smrg Add pointer arithmetic warnings back in 5084d514b0f3Smrg 5085d514b0f3Smrgcommit cb237a7b873206f1e11c4bc71e0d57b2d4a7bfbc 5086d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5087d514b0f3SmrgDate: Wed Mar 18 14:13:33 2009 -0400 5088d514b0f3Smrg 5089d514b0f3Smrg TODO 5090d514b0f3Smrg 5091d514b0f3Smrgcommit b2e069f0d5ab1026d48787e8a22c8fb07a5095a6 5092d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5093d514b0f3SmrgDate: Thu Mar 12 13:00:42 2009 -0400 5094d514b0f3Smrg 5095d514b0f3Smrg TODO 5096d514b0f3Smrg 5097d514b0f3Smrgcommit 0e642938e8e627738e0ec6a3b1814ede2b2c6d7b 5098d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5099d514b0f3SmrgDate: Fri Mar 6 09:34:07 2009 -0500 5100d514b0f3Smrg 5101d514b0f3Smrg Reenable hardware cursors 5102d514b0f3Smrg 5103d514b0f3Smrgcommit f4eb6409e5bbe44fa393dd952a5f8329da141a76 5104d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5105d514b0f3SmrgDate: Fri Mar 6 09:03:52 2009 -0500 5106d514b0f3Smrg 5107d514b0f3Smrg Copy bits in qxlCopyNtoN rather than relying on a separate 5108d514b0f3Smrg 5109d514b0f3Smrg fbCopyArea() to do it This ensures that miHandleExposures() which get 5110d514b0f3Smrg called at the end of fbDoCopy(), will be called with the shadow 5111d514b0f3Smrg framebuffer in a sane state. 5112d514b0f3Smrg 5113d514b0f3Smrg This fixes a number of issues with scrolling partially covered windows. 5114d514b0f3Smrg 5115d514b0f3Smrgcommit f453a3ab875f7c7dcfab09a69cdea92461e340b5 5116d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5117d514b0f3SmrgDate: Fri Mar 6 08:24:57 2009 -0500 5118d514b0f3Smrg 5119d514b0f3Smrg Fix qxl_sleep(); make CopyArea deal better with Paintwindow damage 5120d514b0f3Smrg 5121d514b0f3Smrgcommit 9ddbfa28c34554385223112ae5020282d234297a 5122d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5123d514b0f3SmrgDate: Wed Mar 4 14:19:01 2009 -0500 5124d514b0f3Smrg 5125d514b0f3Smrg Add hardware cursor support 5126d514b0f3Smrg 5127d514b0f3Smrgcommit 779fd58b7394fb28d263ea8401bc6f0607007ef1 5128d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5129d514b0f3SmrgDate: Tue Mar 3 06:32:29 2009 -0500 5130d514b0f3Smrg 5131d514b0f3Smrg Remove #if 0'd code 5132d514b0f3Smrg 5133d514b0f3Smrgcommit fcc0996aee800ef3b2bf0984785f478e1ecccc19 5134d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5135d514b0f3SmrgDate: Tue Mar 3 06:28:10 2009 -0500 5136d514b0f3Smrg 5137d514b0f3Smrg Add cursor structs; delete some unused variables 5138d514b0f3Smrg 5139d514b0f3Smrgcommit 5b1f956905f389356f6abee9206e45c344a2d1b9 5140d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5141d514b0f3SmrgDate: Fri Feb 27 12:52:38 2009 -0500 5142d514b0f3Smrg 5143d514b0f3Smrg Bump version number 5144d514b0f3Smrg 5145d514b0f3Smrgcommit fa766e67eb8415affc0f10aaa30e28f0e0198faf 5146d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5147d514b0f3SmrgDate: Fri Feb 27 12:52:07 2009 -0500 5148d514b0f3Smrg 5149d514b0f3Smrg Use window offsets rather than pixmap offsets, among other things 5150d514b0f3Smrg 5151d514b0f3Smrgcommit 1085a8a4c42605f75f820232648285faa7f82523 5152d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5153d514b0f3SmrgDate: Fri Feb 27 06:28:21 2009 -0500 5154d514b0f3Smrg 5155d514b0f3Smrg Debug spam 5156d514b0f3Smrg 5157d514b0f3Smrgcommit 818cdad0fc52553e3c38d5a23e5b9275b70778e7 5158d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5159d514b0f3SmrgDate: Thu Feb 26 10:55:29 2009 -0500 5160d514b0f3Smrg 5161d514b0f3Smrg Add copy acceleration; use the right fill colors 5162d514b0f3Smrg 5163d514b0f3Smrgcommit 5fed65c51d848748327079122a4e1c875f471e66 5164d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5165d514b0f3SmrgDate: Thu Feb 26 08:20:05 2009 -0500 5166d514b0f3Smrg 5167d514b0f3Smrg Get the offsets closer to right 5168d514b0f3Smrg 5169d514b0f3Smrgcommit a40a14c1f2c56f7d9d014a5e310e976471ba8c20 5170d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5171d514b0f3SmrgDate: Thu Feb 26 07:10:35 2009 -0500 5172d514b0f3Smrg 5173d514b0f3Smrg Accelerate window background painting 5174d514b0f3Smrg 5175d514b0f3Smrgcommit eb57c4f1968d08bc10320cf37394ff1a520f992d 5176d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5177d514b0f3SmrgDate: Thu Feb 26 06:54:28 2009 -0500 5178d514b0f3Smrg 5179d514b0f3Smrg Wrap PolyFillRects 5180d514b0f3Smrg 5181d514b0f3Smrgcommit 80d208741c84b41c51f035fc71dbb523c319413f 5182d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5183d514b0f3SmrgDate: Thu Feb 26 05:34:19 2009 -0500 5184d514b0f3Smrg 5185d514b0f3Smrg Wrap CreateGC 5186d514b0f3Smrg 5187d514b0f3Smrgcommit 39607168413c9708ac1104fa5e2568139b12b7a4 5188d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5189d514b0f3SmrgDate: Thu Feb 26 04:28:00 2009 -0500 5190d514b0f3Smrg 5191d514b0f3Smrg TODO 5192d514b0f3Smrg 5193d514b0f3Smrgcommit cfaa1868ef4b5c0cb81718200fb8fc5b64b617c5 5194d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5195d514b0f3SmrgDate: Wed Feb 25 06:35:34 2009 -0500 5196d514b0f3Smrg 5197d514b0f3Smrg Don't use shadow framebuffer; use our own damage tracker instead. 5198d514b0f3Smrg 5199d514b0f3Smrgcommit 0cdd4f50b175c4747b25a22335c4092c9de11018 5200d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5201d514b0f3SmrgDate: Wed Feb 25 05:22:25 2009 -0500 5202d514b0f3Smrg 5203d514b0f3Smrg TODO 5204d514b0f3Smrg 5205d514b0f3Smrgcommit f7d76a2d16db28c980f74ad16079b018502dfa17 5206d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5207d514b0f3SmrgDate: Tue Feb 24 13:45:40 2009 -0500 5208d514b0f3Smrg 5209d514b0f3Smrg Set version number to 0.0.1 5210d514b0f3Smrg 5211d514b0f3Smrgcommit 5fdb5ad5234db2ece8b14eadf677e171ba3f1c18 5212d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5213d514b0f3SmrgDate: Tue Feb 24 13:44:53 2009 -0500 5214d514b0f3Smrg 5215d514b0f3Smrg Wait for the command ring to go idle before setting the mode 5216d514b0f3Smrg 5217d514b0f3Smrg Set the correct stride in the ModifyPixmapHeader call, and onlhy call 5218d514b0f3Smrg qxl_mem_free_all() if the memory system is initialized. 5219d514b0f3Smrg 5220d514b0f3Smrgcommit 2be423058eec1bdd32dd55e124d9d7034494aad9 5221d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5222d514b0f3SmrgDate: Tue Feb 24 10:18:08 2009 -0500 5223d514b0f3Smrg 5224d514b0f3Smrg Squash compiler warnings 5225d514b0f3Smrg 5226d514b0f3Smrg As part of this, don't use -Wpointer-arith 5227d514b0f3Smrg 5228d514b0f3Smrgcommit e7cecde277f7eeed75db96ec5219d4da3ea1caed 5229d514b0f3SmrgMerge: 4d0f59c 92046f5 5230d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5231d514b0f3SmrgDate: Tue Feb 24 10:10:14 2009 -0500 5232d514b0f3Smrg 5233d514b0f3Smrg Merge branch 'master' of git+ssh://sandmann@shell.devel.redhat.com/home/boston/sandmann/public_git/xf86-video-qxl 5234d514b0f3Smrg 5235d514b0f3Smrg Conflicts: 5236d514b0f3Smrg 5237d514b0f3Smrg src/qxl_driver.c 5238d514b0f3Smrg 5239d514b0f3Smrgcommit 4d0f59c148db48dbbacedd78c73f24874535a6bf 5240d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5241d514b0f3SmrgDate: Tue Feb 24 10:09:30 2009 -0500 5242d514b0f3Smrg 5243d514b0f3Smrg Free all memory on mode switch 5244d514b0f3Smrg 5245d514b0f3Smrgcommit 92046f5ebd946a08f5064f6aaa888e8d71215ee1 5246d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5247d514b0f3SmrgDate: Tue Feb 24 09:58:03 2009 -0500 5248d514b0f3Smrg 5249d514b0f3Smrg Call ModifyPixmapHeader() when mode switching 5250d514b0f3Smrg 5251d514b0f3Smrg This seems to be the best way to make sure the screen pixmap has the right size. 5252d514b0f3Smrg 5253d514b0f3Smrgcommit 2212716b046053084ad1d01daf8b623aec871cc0 5254d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5255d514b0f3SmrgDate: Tue Feb 17 05:45:29 2009 -0500 5256d514b0f3Smrg 5257d514b0f3Smrg Working garbage collection 5258d514b0f3Smrg 5259d514b0f3Smrgcommit 68f2a3083dedee88d30826ca27a53ec2135493f1 5260d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5261d514b0f3SmrgDate: Tue Feb 17 05:45:00 2009 -0500 5262d514b0f3Smrg 5263d514b0f3Smrg TODO 5264d514b0f3Smrg 5265d514b0f3Smrgcommit c10d91829975a07c87678dba1655eeacbab005ba 5266d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5267d514b0f3SmrgDate: Thu Feb 5 16:20:03 2009 -0500 5268d514b0f3Smrg 5269d514b0f3Smrg Initial garbage collection support 5270d514b0f3Smrg 5271d514b0f3Smrgcommit 505d8113b15c39e1be8799cf79ede2d66ac44537 5272d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5273d514b0f3SmrgDate: Wed Feb 4 20:05:38 2009 -0500 5274d514b0f3Smrg 5275d514b0f3Smrg Implement qxl_ring_pop() 5276d514b0f3Smrg 5277d514b0f3Smrgcommit bbeef5031346c8adfffd739f91f3c04a5c088412 5278d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5279d514b0f3SmrgDate: Wed Feb 4 19:28:37 2009 -0500 5280d514b0f3Smrg 5281d514b0f3Smrg Zero the palette 5282d514b0f3Smrg 5283d514b0f3Smrgcommit ecfd62b99811e149b20be5bc993774f4e992c281 5284d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5285d514b0f3SmrgDate: Wed Feb 4 19:18:40 2009 -0500 5286d514b0f3Smrg 5287d514b0f3Smrg TODO 5288d514b0f3Smrg 5289d514b0f3Smrgcommit 1b55a16a9758afc3c3ed825cb6eeea63cc145e7b 5290d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5291d514b0f3SmrgDate: Wed Feb 4 19:13:01 2009 -0500 5292d514b0f3Smrg 5293d514b0f3Smrg TODO 5294d514b0f3Smrg 5295d514b0f3Smrgcommit 9740b860071ad8a198179464c2c24efb4b9b7b9f 5296d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5297d514b0f3SmrgDate: Wed Feb 4 18:58:05 2009 -0500 5298d514b0f3Smrg 5299d514b0f3Smrg Working image submission 5300d514b0f3Smrg 5301d514b0f3Smrgcommit fa8e43057d4ac9bab5cd99c57151abdaebcbfb97 5302d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5303d514b0f3SmrgDate: Wed Feb 4 16:14:52 2009 -0500 5304d514b0f3Smrg 5305d514b0f3Smrg Add bitmap structs, plus beginning of image creation 5306d514b0f3Smrg 5307d514b0f3Smrgcommit b3921383a78e1d834f6822323699b860c4f42cf3 5308d514b0f3SmrgMerge: f82e6f9 73f4125 5309d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5310d514b0f3SmrgDate: Tue Feb 3 17:21:04 2009 -0500 5311d514b0f3Smrg 5312d514b0f3Smrg Merge commit 'ajax/hwcursor' 5313d514b0f3Smrg 5314d514b0f3Smrgcommit f82e6f91bb26dd049a946577c123bf4303f3fe96 5315d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5316d514b0f3SmrgDate: Tue Feb 3 17:20:49 2009 -0500 5317d514b0f3Smrg 5318d514b0f3Smrg Add image structs and beginning of copy command submission 5319d514b0f3Smrg 5320d514b0f3Smrgcommit 73f4125fb53a6928313c1b6e1a98222fcbfb7adf 5321d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5322d514b0f3SmrgDate: Tue Feb 3 16:12:13 2009 -0500 5323d514b0f3Smrg 5324d514b0f3Smrg Begin hardware cursor support. 5325d514b0f3Smrg 5326d514b0f3Smrgcommit 42768eb171d0d7235d64c9ab23ba256af0248a52 5327d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5328d514b0f3SmrgDate: Tue Feb 3 16:09:47 2009 -0500 5329d514b0f3Smrg 5330d514b0f3Smrg Draw random colors instead of ugly raster ops 5331d514b0f3Smrg 5332d514b0f3Smrgcommit 11bdbadc3b6873215883d9013b8e6a3e9dc7b7e9 5333d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5334d514b0f3SmrgDate: Tue Feb 3 15:20:50 2009 -0500 5335d514b0f3Smrg 5336d514b0f3Smrg TODO 5337d514b0f3Smrg 5338d514b0f3Smrgcommit 12e47b5fae4c6f0610527c91598147b48fc82834 5339d514b0f3SmrgMerge: 8c7d6e5 3349acf 5340d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5341d514b0f3SmrgDate: Tue Feb 3 14:44:13 2009 -0500 5342d514b0f3Smrg 5343d514b0f3Smrg Merge commit 'ssp/master' 5344d514b0f3Smrg 5345d514b0f3Smrgcommit 363352c761a421de24d19b761373b2cc1eb19b85 5346d514b0f3SmrgMerge: 3349acf 8c7d6e5 5347d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5348d514b0f3SmrgDate: Tue Feb 3 13:58:19 2009 -0500 5349d514b0f3Smrg 5350d514b0f3Smrg Merge branch 'master' of git+ssh://sandmann@shell.devel.redhat.com/home/boston/ajackson/public_git/xf86-video-qxl 5351d514b0f3Smrg 5352d514b0f3Smrgcommit 3349acf2e7296e5fc721489ea4a88bb2feda5c26 5353d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5354d514b0f3SmrgDate: Tue Feb 3 13:55:11 2009 -0500 5355d514b0f3Smrg 5356d514b0f3Smrg Don't read memory before it's mapped 5357d514b0f3Smrg 5358d514b0f3Smrgcommit 8c7d6e56137046efbad5b353a25c2171da01898a 5359d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5360d514b0f3SmrgDate: Tue Feb 3 13:24:58 2009 -0500 5361d514b0f3Smrg 5362d514b0f3Smrg Remove dead comment 5363d514b0f3Smrg 5364d514b0f3Smrgcommit 92fd0dfed2a4379db30d7a1d67891db254b8fd29 5365d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5366d514b0f3SmrgDate: Tue Feb 3 11:06:01 2009 -0500 5367d514b0f3Smrg 5368d514b0f3Smrg Typo fix. 5369d514b0f3Smrg 5370d514b0f3Smrgcommit 02ebf439eafd2cdef72835bf34337cc2759870a5 5371d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5372d514b0f3SmrgDate: Tue Feb 3 11:04:49 2009 -0500 5373d514b0f3Smrg 5374d514b0f3Smrg Read timestamp from the ROM. 5375d514b0f3Smrg 5376d514b0f3Smrgcommit c6fe700b950e828e8efef1e9639cd30081fd2d14 5377d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5378d514b0f3SmrgDate: Tue Feb 3 11:00:10 2009 -0500 5379d514b0f3Smrg 5380d514b0f3Smrg TODO: VRAM BAR notes. 5381d514b0f3Smrg 5382d514b0f3Smrgcommit 94b814a675a07d28e6c81a878656a64c6c0b3770 5383d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5384d514b0f3SmrgDate: Tue Feb 3 10:28:21 2009 -0500 5385d514b0f3Smrg 5386d514b0f3Smrg Add the standard X warning flags. 5387d514b0f3Smrg 5388d514b0f3Smrgcommit 7eb3820f1fa09e5d411de9e02ef6572cbc4809fe 5389d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5390d514b0f3SmrgDate: Tue Feb 3 10:18:04 2009 -0500 5391d514b0f3Smrg 5392d514b0f3Smrg Silence a warning. 5393d514b0f3Smrg 5394d514b0f3Smrgcommit 74940d595a69f413aad26f5413a26500cd796b6f 5395d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5396d514b0f3SmrgDate: Tue Feb 3 10:17:28 2009 -0500 5397d514b0f3Smrg 5398d514b0f3Smrg Typo fix. 5399d514b0f3Smrg 5400d514b0f3Smrgcommit 4c6cb08fbf0759cbda8bcb7bf723c18aa261dba1 5401d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5402d514b0f3SmrgDate: Mon Feb 2 17:51:07 2009 -0500 5403d514b0f3Smrg 5404d514b0f3Smrg Get rid of some warnings; setup two other rings 5405d514b0f3Smrg 5406d514b0f3Smrgcommit 3fb2c5b7fb15b4f1dc1611f98f2b5070abbfa3da 5407d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5408d514b0f3SmrgDate: Sun Feb 1 16:57:58 2009 -0500 5409d514b0f3Smrg 5410d514b0f3Smrg Remove more debug spam 5411d514b0f3Smrg 5412d514b0f3Smrgcommit 916735fea435670dbd95ea46c7b0aba87ba63416 5413d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5414d514b0f3SmrgDate: Sun Feb 1 16:54:34 2009 -0500 5415d514b0f3Smrg 5416d514b0f3Smrg TODO; various cleanups 5417d514b0f3Smrg 5418d514b0f3Smrgcommit cd2bb5852677ea4c45185f22fc6542c3562acd23 5419d514b0f3SmrgMerge: 7d82898 981485e 5420d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5421d514b0f3SmrgDate: Sat Jan 31 16:23:36 2009 -0500 5422d514b0f3Smrg 5423d514b0f3Smrg Merge branch 'master' of git+ssh://sandmann@shell.devel.redhat.com/home/boston/sandmann/public_git/xf86-video-qxl 5424d514b0f3Smrg 5425d514b0f3Smrgcommit 7d82898b0a1984c8c4ee6e6ba88cd5383b5ffa26 5426d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5427d514b0f3SmrgDate: Sat Jan 31 16:21:31 2009 -0500 5428d514b0f3Smrg 5429d514b0f3Smrg Use new qxl_ring data type for command submission 5430d514b0f3Smrg 5431d514b0f3Smrg Also add forgotten qxl_ring.c file 5432d514b0f3Smrg 5433d514b0f3Smrgcommit 981485e95c9c07169e827729409955ff609ed037 5434d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5435d514b0f3SmrgDate: Sat Jan 31 16:21:31 2009 -0500 5436d514b0f3Smrg 5437d514b0f3Smrg Use new qxl_ring data type for command submission 5438d514b0f3Smrg 5439d514b0f3Smrgcommit 245ba829035abaacd400f3141bf2b7480fc4839d 5440d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5441d514b0f3SmrgDate: Sat Jan 31 16:11:44 2009 -0500 5442d514b0f3Smrg 5443d514b0f3Smrg Add qxl_ring.c to deal with general command submission 5444d514b0f3Smrg 5445d514b0f3Smrgcommit 9cc17de8187c793c180c900885f1e4fcb6bafcd6 5446d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5447d514b0f3SmrgDate: Sat Jan 31 15:40:36 2009 -0500 5448d514b0f3Smrg 5449d514b0f3Smrg Get rid of qxl_mem.h header 5450d514b0f3Smrg 5451d514b0f3Smrgcommit 0f55802c13207c51c10f357d73d68e9ed976f5d4 5452d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5453d514b0f3SmrgDate: Fri Jan 30 17:58:13 2009 -0500 5454d514b0f3Smrg 5455d514b0f3Smrg Pack to multiple of 1; remove forced crash 5456d514b0f3Smrg 5457d514b0f3Smrgcommit 14357f8823170846654b840ed2f98052ef4ea605 5458d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5459d514b0f3SmrgDate: Fri Jan 30 16:43:34 2009 -0500 5460d514b0f3Smrg 5461d514b0f3Smrg release_info is a union, not a struct 5462d514b0f3Smrg 5463d514b0f3Smrgcommit 569f0dd215b6bfccaff8bb5d4046f246d1d11e67 5464d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5465d514b0f3SmrgDate: Wed Jan 28 17:48:35 2009 -0500 5466d514b0f3Smrg 5467d514b0f3Smrg Add debug spam, hack around bug in the X server shadow code 5468d514b0f3Smrg 5469d514b0f3Smrgcommit 75c60beccabbdc10daffe47b3aeca4468c4c9508 5470d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5471d514b0f3SmrgDate: Wed Jan 28 15:07:55 2009 -0500 5472d514b0f3Smrg 5473d514b0f3Smrg Keep track of physical address of io pages; submit random fill on shadow update 5474d514b0f3Smrg 5475d514b0f3Smrgcommit 99aca0a6089d8da7872f135579fd560dbbf6aa6d 5476d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5477d514b0f3SmrgDate: Wed Jan 28 14:21:56 2009 -0500 5478d514b0f3Smrg 5479d514b0f3Smrg Add ring macros; add a TODO file; clean up warnings 5480d514b0f3Smrg 5481d514b0f3Smrgcommit 41af66fef212638bddcdc1de396474b1ad418b63 5482d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5483d514b0f3SmrgDate: Tue Jan 27 15:18:50 2009 -0500 5484d514b0f3Smrg 5485d514b0f3Smrg More command submission preparation 5486d514b0f3Smrg 5487d514b0f3Smrgcommit 1bf5406bea90937be90ade7f454b170e87ef4bf8 5488d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5489d514b0f3SmrgDate: Tue Jan 27 14:42:55 2009 -0500 5490d514b0f3Smrg 5491d514b0f3Smrg Various preparations for command submission 5492d514b0f3Smrg 5493d514b0f3Smrg - Add some more enums 5494d514b0f3Smrg 5495d514b0f3Smrg - Remove debug spam 5496d514b0f3Smrg 5497d514b0f3Smrg - Hook up the memory manager 5498d514b0f3Smrg 5499d514b0f3Smrgcommit e42e99ab31b15676f829a16610f5fb99d8fa5a84 5500d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5501d514b0f3SmrgDate: Sat Jan 24 14:11:09 2009 -0500 5502d514b0f3Smrg 5503d514b0f3Smrg Comment out spamming 5504d514b0f3Smrg 5505d514b0f3Smrgcommit 027cfcb5fba899f4191f4d2b18646dd667b7ff96 5506d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5507d514b0f3SmrgDate: Sat Jan 24 14:04:45 2009 -0500 5508d514b0f3Smrg 5509d514b0f3Smrg Hook up the free list correctly when a block is not split 5510d514b0f3Smrg 5511d514b0f3Smrgcommit cfadf617c396ab822bb8f5ae5f83c551843f845f 5512d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5513d514b0f3SmrgDate: Sat Jan 24 13:57:44 2009 -0500 5514d514b0f3Smrg 5515d514b0f3Smrg Only split a free block if there remains enough space for struct block 5516d514b0f3Smrg 5517d514b0f3Smrgcommit d9a05473dbd7c407f3bd343bcc0348735616d579 5518d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5519d514b0f3SmrgDate: Sat Jan 24 13:34:21 2009 -0500 5520d514b0f3Smrg 5521d514b0f3Smrg Fix a couple of free list corruptions; add more spam 5522d514b0f3Smrg 5523d514b0f3Smrgcommit 0f4f80e6972eda1ddfad3f5e78d97fc5e3580238 5524d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5525d514b0f3SmrgDate: Sat Jan 24 12:50:32 2009 -0500 5526d514b0f3Smrg 5527d514b0f3Smrg Fix bug where the new block was not correctly attached to its successor 5528d514b0f3Smrg 5529d514b0f3Smrgcommit 014ae41cfbfd3ec18f514ba4fc282a1f3f906895 5530d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5531d514b0f3SmrgDate: Sat Jan 24 12:36:09 2009 -0500 5532d514b0f3Smrg 5533d514b0f3Smrg Add qxl_mem.c and mmtest to build system 5534d514b0f3Smrg 5535d514b0f3Smrgcommit 9e845d2beb65e1d1d672ba9784418e4aff8051d2 5536d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5537d514b0f3SmrgDate: Sat Jan 24 12:22:05 2009 -0500 5538d514b0f3Smrg 5539d514b0f3Smrg Add mmtest.c plus various debug spam 5540d514b0f3Smrg 5541d514b0f3Smrgcommit 49761efda465b8c49e5c28bd0aea58baa107d5d3 5542d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5543d514b0f3SmrgDate: Sat Jan 24 10:16:19 2009 -0500 5544d514b0f3Smrg 5545d514b0f3Smrg Add simple-minded initial memory manager implementation. 5546d514b0f3Smrg 5547d514b0f3Smrgcommit aff78c5631118a0a44f618d226bc193dc7b5858c 5548d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5549d514b0f3SmrgDate: Fri Jan 23 16:50:10 2009 -0500 5550d514b0f3Smrg 5551d514b0f3Smrg Release ring is uin64_t 5552d514b0f3Smrg 5553d514b0f3Smrgcommit 7b7e81446a5f3936e6c9f2066f40646610f961c0 5554d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@dhcp-100-3-19.bos.redhat.com> 5555d514b0f3SmrgDate: Fri Jan 23 16:20:48 2009 -0500 5556d514b0f3Smrg 5557d514b0f3Smrg s/unsigned int/uint32_t/ 5558d514b0f3Smrg 5559d514b0f3Smrgcommit 8af2c6ef2d9fd8f2133d718d99811ba140c573f6 5560d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5561d514b0f3SmrgDate: Fri Jan 23 14:54:07 2009 -0500 5562d514b0f3Smrg 5563d514b0f3Smrg Set the size of Video RAM to size of draw area 5564d514b0f3Smrg 5565d514b0f3Smrgcommit 6c2ea58fcd364630558c73d9acc07b82add6b278 5566d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5567d514b0f3SmrgDate: Fri Jan 23 12:48:56 2009 -0500 5568d514b0f3Smrg 5569d514b0f3Smrg Cast rom to uint32_t * 5570d514b0f3Smrg 5571d514b0f3Smrgcommit 6168830b5aabafc8059cb0e91eff22b4ad32a266 5572d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5573d514b0f3SmrgDate: Fri Jan 23 12:11:55 2009 -0500 5574d514b0f3Smrg 5575d514b0f3Smrg Restore mode offset calculation 5576d514b0f3Smrg 5577d514b0f3Smrgcommit fd2e5aac8f6a65a3ecf1a5a816006431fe3a1646 5578d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5579d514b0f3SmrgDate: Thu Jan 22 22:00:38 2009 -0500 5580d514b0f3Smrg 5581d514b0f3Smrg Add struct qxl_rom 5582d514b0f3Smrg 5583d514b0f3Smrg Fix up the mappings so that it will find the ram header magic word. 5584d514b0f3Smrg 5585d514b0f3Smrgcommit cecfdaecade3c4987fce6d7ae4aa39f212b5ae55 5586d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5587d514b0f3SmrgDate: Thu Jan 22 21:01:19 2009 -0500 5588d514b0f3Smrg 5589d514b0f3Smrg Change names to match QXL device; clear up confusion of ram vs. vram 5590d514b0f3Smrg 5591d514b0f3Smrgcommit be24f31678d99112ffbe25e1807240663a8ff591 5592d514b0f3SmrgAuthor: Søren Sandmann Pedersen <ssp@redhat.com> 5593d514b0f3SmrgDate: Thu Jan 22 20:07:43 2009 -0500 5594d514b0f3Smrg 5595d514b0f3Smrg Fix sizes without libpciaccess (they are reported in number of bits to shift) 5596d514b0f3Smrg 5597d514b0f3Smrg Also add more spam. 5598d514b0f3Smrg 5599d514b0f3Smrgcommit 6f066a21b40dfd024b053c1673bdb26443690d4b 5600d514b0f3SmrgAuthor: Søren Sandmann Pedersen <sandmann@redhat.com> 5601d514b0f3SmrgDate: Thu Jan 22 18:38:18 2009 -0500 5602d514b0f3Smrg 5603d514b0f3Smrg Make it compile without libpciaccess 5604d514b0f3Smrg 5605d514b0f3Smrg Also remove generated config.h.in file. 5606d514b0f3Smrg 5607d514b0f3Smrgcommit f137dfbb16666208336b51b7300e82aa7b7613c9 5608d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5609d514b0f3SmrgDate: Tue Jan 6 13:32:34 2009 -0500 5610d514b0f3Smrg 5611d514b0f3Smrg Add qxl_drawable 5612d514b0f3Smrg 5613d514b0f3Smrgcommit dd2487205f14a366cb649d80efc3fabafb26b845 5614d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5615d514b0f3SmrgDate: Tue Jan 6 13:18:20 2009 -0500 5616d514b0f3Smrg 5617d514b0f3Smrg include micmap.h 5618d514b0f3Smrg 5619d514b0f3Smrgcommit bee8e67aff756d3ba3fe1fe5b8eea7386db6b982 5620d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5621d514b0f3SmrgDate: Tue Jan 6 13:16:13 2009 -0500 5622d514b0f3Smrg 5623d514b0f3Smrg Fix return in CreateScreenResources 5624d514b0f3Smrg 5625d514b0f3Smrgcommit 8b6f8f9199d776fb1e9f5983a1ca86caf078efd8 5626d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5627d514b0f3SmrgDate: Tue Jan 6 13:15:31 2009 -0500 5628d514b0f3Smrg 5629d514b0f3Smrg Don't run off the end of qxlSwitchMode without explicit return 5630d514b0f3Smrg 5631d514b0f3Smrgcommit f76cdcae1b85fda711b7b5822a11f35516ddd7d3 5632d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5633d514b0f3SmrgDate: Tue Jan 6 13:13:17 2009 -0500 5634d514b0f3Smrg 5635d514b0f3Smrg Address, not value. 5636d514b0f3Smrg 5637d514b0f3Smrgcommit 6e5b8af5a54ebe618dab3385950104a9fd793750 5638d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5639d514b0f3SmrgDate: Mon Jan 5 20:03:33 2009 -0500 5640d514b0f3Smrg 5641d514b0f3Smrg Add shadow buffer. 5642d514b0f3Smrg 5643d514b0f3Smrgcommit 1d7e19bfc1ac2ca5e49a7c14e7af339c755e5be3 5644d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5645d514b0f3SmrgDate: Thu Nov 13 15:41:18 2008 -0500 5646d514b0f3Smrg 5647d514b0f3Smrg Add RAM header detail 5648d514b0f3Smrg 5649d514b0f3Smrgcommit 7eb6bf971bbea04d24b95474646699b0c1b2f569 5650d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5651d514b0f3SmrgDate: Thu Nov 13 14:48:57 2008 -0500 5652d514b0f3Smrg 5653d514b0f3Smrg Minor mode debugging 5654d514b0f3Smrg 5655d514b0f3Smrgcommit 584be64b834e2a66c6f3a1b767166d3bad554d83 5656d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5657d514b0f3SmrgDate: Thu Nov 13 14:47:55 2008 -0500 5658d514b0f3Smrg 5659d514b0f3Smrg Take bpp into account in mode selection 5660d514b0f3Smrg 5661d514b0f3Smrgcommit 11d8d3b9e95b1319cb4493cd8cfdf9d8af0900d2 5662d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5663d514b0f3SmrgDate: Thu Nov 13 14:31:11 2008 -0500 5664d514b0f3Smrg 5665d514b0f3Smrg Draw area setup 5666d514b0f3Smrg 5667d514b0f3Smrgcommit 7b09fada2d63b238168434ac0e7e38085cf06b43 5668d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5669d514b0f3SmrgDate: Thu Nov 13 14:05:12 2008 -0500 5670d514b0f3Smrg 5671d514b0f3Smrg qxl io ports are bytes, not ints. 5672d514b0f3Smrg 5673d514b0f3Smrgcommit dfd38ead63e9cdf26629022fb2280b3758215187 5674d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5675d514b0f3SmrgDate: Wed Nov 12 16:47:11 2008 -0500 5676d514b0f3Smrg 5677d514b0f3Smrg Get outl defined 5678d514b0f3Smrg 5679d514b0f3Smrgcommit f01ed224725f6e1fa88a767ff602ec085bf76859 5680d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5681d514b0f3SmrgDate: Wed Nov 12 16:39:55 2008 -0500 5682d514b0f3Smrg 5683d514b0f3Smrg More mode setup 5684d514b0f3Smrg 5685d514b0f3Smrgcommit b0edee203a6773feabd1ea5b164ce739a68d55ea 5686d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5687d514b0f3SmrgDate: Wed Nov 12 16:26:43 2008 -0500 5688d514b0f3Smrg 5689d514b0f3Smrg Start adding mode setup. 5690d514b0f3Smrg 5691d514b0f3Smrgcommit 65c145a94fd09d087f5446194ed72cb311ed85b1 5692d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5693d514b0f3SmrgDate: Wed Nov 12 16:22:28 2008 -0500 5694d514b0f3Smrg 5695d514b0f3Smrg Add I/O port definitions, stash I/O base in the screen. 5696d514b0f3Smrg 5697d514b0f3Smrgcommit fc45ca8ed1407cd68102e5b4214f4a35016dd30c 5698d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5699d514b0f3SmrgDate: Wed Nov 12 16:02:15 2008 -0500 5700d514b0f3Smrg 5701d514b0f3Smrg Add mode validation. 5702d514b0f3Smrg 5703d514b0f3Smrgcommit 5152af1ca6780e40f328f04e77978541521b4cdb 5704d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5705d514b0f3SmrgDate: Wed Nov 12 15:56:16 2008 -0500 5706d514b0f3Smrg 5707d514b0f3Smrg Stash pointer to the mode list for easy walking. 5708d514b0f3Smrg 5709d514b0f3Smrgcommit ebd3ff70eeb0fc7965b62b72014c2882b669feb1 5710d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5711d514b0f3SmrgDate: Wed Nov 12 15:53:39 2008 -0500 5712d514b0f3Smrg 5713d514b0f3Smrg qxl_mode structure 5714d514b0f3Smrg 5715d514b0f3Smrgcommit e3c066268661f85c50bf169d008a5494aa0e8414 5716d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5717d514b0f3SmrgDate: Wed Nov 12 13:34:32 2008 -0500 5718d514b0f3Smrg 5719d514b0f3Smrg Validate command RAM signature 5720d514b0f3Smrg 5721d514b0f3Smrgcommit e1687cbb7ccf0a30de24693447e1344b63b3922b 5722d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5723d514b0f3SmrgDate: Wed Nov 12 13:32:48 2008 -0500 5724d514b0f3Smrg 5725d514b0f3Smrg Attempt to find command RAM magic 5726d514b0f3Smrg 5727d514b0f3Smrgcommit 241b23ced8ae172e9af63c49e2911b5e15a49efb 5728d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5729d514b0f3SmrgDate: Wed Nov 12 13:28:32 2008 -0500 5730d514b0f3Smrg 5731d514b0f3Smrg Size VRAM correctly. 5732d514b0f3Smrg 5733d514b0f3Smrgcommit 0ca5c444978ebe9df13d4c5f600449074c2996e8 5734d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5735d514b0f3SmrgDate: Wed Nov 12 13:19:46 2008 -0500 5736d514b0f3Smrg 5737d514b0f3Smrg Attempt to fix mode parsing 5738d514b0f3Smrg 5739d514b0f3Smrgcommit 26ea8a0a68923c43aa25867b0535642855048649 5740d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5741d514b0f3SmrgDate: Wed Nov 12 13:17:11 2008 -0500 5742d514b0f3Smrg 5743d514b0f3Smrg Print mode list 5744d514b0f3Smrg 5745d514b0f3Smrgcommit cd32f8a879b578645053b09a8f9022a548754f1e 5746d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5747d514b0f3SmrgDate: Wed Nov 12 13:10:55 2008 -0500 5748d514b0f3Smrg 5749d514b0f3Smrg More ROM decode 5750d514b0f3Smrg 5751d514b0f3Smrgcommit 4e93894c28656ab851ab5d7dee88b59ca3369eea 5752d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5753d514b0f3SmrgDate: Wed Nov 12 13:06:10 2008 -0500 5754d514b0f3Smrg 5755d514b0f3Smrg Fix endianness of ROM check 5756d514b0f3Smrg 5757d514b0f3Smrgcommit 00dd02687c79db44768f835dadae72e5aa1b0ebd 5758d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5759d514b0f3SmrgDate: Wed Nov 12 13:05:16 2008 -0500 5760d514b0f3Smrg 5761d514b0f3Smrg Catch bad ROM signature 5762d514b0f3Smrg 5763d514b0f3Smrgcommit 75b203c665b860602746f12b8cee6fb53307e805 5764d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5765d514b0f3SmrgDate: Wed Nov 12 13:00:11 2008 -0500 5766d514b0f3Smrg 5767d514b0f3Smrg Start decoding the ROM header 5768d514b0f3Smrg 5769d514b0f3Smrgcommit a7ab0239a0ebaf068e9e9b6115508db478e2e174 5770d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5771d514b0f3SmrgDate: Tue Nov 11 17:55:27 2008 -0500 5772d514b0f3Smrg 5773d514b0f3Smrg More silliness 5774d514b0f3Smrg 5775d514b0f3Smrgcommit bf117afcfe26de1db15b1c3ff0d84fa79926199b 5776d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5777d514b0f3SmrgDate: Tue Nov 11 17:52:52 2008 -0500 5778d514b0f3Smrg 5779d514b0f3Smrg Try to fix probe 5780d514b0f3Smrg 5781d514b0f3Smrgcommit c2c19525444fff12f4a7dab9088abf87638f78c1 5782d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5783d514b0f3SmrgDate: Tue Nov 11 17:28:44 2008 -0500 5784d514b0f3Smrg 5785d514b0f3Smrg Memory mapping setup 5786d514b0f3Smrg 5787d514b0f3Smrgcommit 6caf30591c0039228662020c1f0b03b1183d9948 5788d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5789d514b0f3SmrgDate: Tue Nov 11 16:58:01 2008 -0500 5790d514b0f3Smrg 5791d514b0f3Smrg Rename, qxlUnmapMem -> qxlUnmapMemory 5792d514b0f3Smrg 5793d514b0f3Smrgcommit cb4f86b87bb28c2b64051082702957950838848e 5794d514b0f3SmrgAuthor: Adam Jackson <ajax@redhat.com> 5795d514b0f3SmrgDate: Thu Oct 30 16:33:21 2008 -0400 5796d514b0f3Smrg 5797d514b0f3Smrg Initial skeleton driver 5798