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