The current code in I830DRI2ScheduleSwap() only schedules the correct vblank events for the case divisor == 0, i.e., the simple glXSwapBuffers() case. In a glXSwapBuffersMscOML() request, divisor can be > 0, which would go wrong. This modified code should handle target_msc, divisor, remainder and the different cases defined in the OML_sync_control extension correctly for the divisor > 0 case. It also tries to make sure that the effective framecount of swap satisfies all constraints, taking the 1 frame delay in pageflipping mode and possible delays in blitting/exchange mode due to DRM_VBLANK_NEXTONMISS into account. The swap_interval logic in the X-Servers DRI2SwapBuffers() call expects the returned swap_target from the DDX to be reasonably accurate, otherwise implementation of swap_interval for the glXSwapBuffers() as defined in the SGI_swap_interval extension may become unreliable. For non-pageflipped mode, the returned swap_target is always correct due to the adjustments done by drmWaitVBlank(), as DRM_VBLANK_NEXTONMISS is set. In pageflipped mode, DRM_VBLANK_NEXTONMISS can't be used without severe impact on performance, so the code in I830DRI2ScheduleSwap() must make manual adjustments to the returned vbl.reply.sequence number. This patch adds the needed adjustments. Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de> |
||
|---|---|---|
| man | ||
| src | ||
| uxa | ||
| .gitignore | ||
| AUTHORS | ||
| COPYING | ||
| Makefile.am | ||
| NEWS | ||
| README | ||
| RELEASING | ||
| autogen.sh | ||
| configure.ac | ||
README
xf86-video-intel Open-source X.org graphics driver for Intel graphics http://www.intellinuxgraphics.com/ What is xf86-video-intel ------------------------ The xf86-video-intel module is an open-source 2D graphics driver for the X Window System as implemented by X.org. It supports a variety of Intel graphics chipsets including: i810/i810e/i810-dc100,i815, i830M,845G,852GM,855GM,865G, 915G/GM,945G/GM/GME,946GZ G/GM/GME/Q965, G/Q33,G/Q35,G41,G/Q43,G/GM/Q45 PineView-M (Atom N400 series) PineView-D (Atom D400/D500 series) Where to get more information about the driver ---------------------------------------------- The primary source of information about this and other open-source drivers for Intel graphics is: http://intellinuxgraphics.org/ Documentation specific to the xf86-video-intel driver including possible configuration options for the xorg.conf file can be found in the intel(4) manual page. After installing the driver this documentation can be read with the following command: man intel Mailing list for communication with users and developers of xf86-video-intel: intel-gfx@lists.freedesktop.org Note: Subscription is required before posting, but anyone is free to subscribe. See instructions (and archives) here: http://lists.freedesktop.org/mailman/listinfo/intel-gfx To report bugs encountered with the driver, see: http://intellinuxgraphics.org/how_to_report_bug.html To see bugs that are targeted to be fixed in the next release: https://bugs.freedesktop.org/show_bug.cgi?id=intel-2d-release