From 80e5eda3503e4ae6d05921b7ae8c83844482b071 Mon Sep 17 00:00:00 2001 From: Mohan Boddu Date: Tue, 4 Apr 2023 17:40:50 +0000 Subject: [PATCH] Import rpm: c8s --- .gitignore | 2 + ...-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch | 33 +++ ...rver-if-GPU-acceleration-is-not-avai.patch | 72 ++++++ sources | 1 + xorg-x11-drv-ati.spec | 241 ++++++++++++++++++ 5 files changed, 349 insertions(+) create mode 100644 .gitignore create mode 100644 0001-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch create mode 100644 0002-Don-t-crash-X-server-if-GPU-acceleration-is-not-avai.patch create mode 100644 sources create mode 100644 xorg-x11-drv-ati.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..aa05958 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +SOURCES/xf86-video-ati-19.1.0.tar.bz2 +/xf86-video-ati-19.1.0.tar.bz2 diff --git a/0001-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch b/0001-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch new file mode 100644 index 0000000..6f0c4a9 --- /dev/null +++ b/0001-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch @@ -0,0 +1,33 @@ +From 4d84cf438e7f1bebf0053035ef0292e9fed257d1 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Michel=20D=C3=A4nzer?= +Date: Fri, 29 Nov 2019 16:37:32 +0100 +Subject: [PATCH 1/2] Handle NULL fb_ptr in pixmap_get_fb +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This can happen when HW acceleration is disabled. + +Fixes https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/issues/188 + +Signed-off-by: Michel Dänzer +--- + src/radeon.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/radeon.h b/src/radeon.h +index 2c913466..8e964805 100644 +--- a/src/radeon.h ++++ b/src/radeon.h +@@ -896,7 +896,7 @@ radeon_pixmap_get_fb(PixmapPtr pix) + handle); + } + +- return *fb_ptr; ++ return fb_ptr ? *fb_ptr : NULL; + } + + +-- +2.26.2 + diff --git a/0002-Don-t-crash-X-server-if-GPU-acceleration-is-not-avai.patch b/0002-Don-t-crash-X-server-if-GPU-acceleration-is-not-avai.patch new file mode 100644 index 0000000..aedc640 --- /dev/null +++ b/0002-Don-t-crash-X-server-if-GPU-acceleration-is-not-avai.patch @@ -0,0 +1,72 @@ +From c0eb5dbd9c1db6b6d5b1574bcd8c584170d7ab54 Mon Sep 17 00:00:00 2001 +From: Alexey Sheplyakov +Date: Wed, 27 Nov 2019 20:50:58 +0400 +Subject: [PATCH 2/2] Don't crash X server if GPU acceleration is not available +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Commit d1d8e3c8d0a0a0394d395eba171460501745209b causes X server +to fail on startup when GPU acceleration is not working (or is +disabled). The reason is that `radeon_get_pixmap_bo` function +gets called too early (before EXA has been initialized) and +fails with an assert: + + #0 __GI_raise (sig=) at ../sysdeps/unix/sysv/linux/raise.c:50 + #1 0x76ab1c6c in __GI_abort () at abort.c:79 + #2 0x76ac0b64 in __assert_fail_base (fmt=0x76bfbce4 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x7658c80c "key->initialized", file=, line=121, + function=0x7658d040 <__PRETTY_FUNCTION__.10607> "dixGetPrivateAddr") at assert.c:92 + #3 0x76ac0c0c in __GI___assert_fail (assertion=0x7658c80c "key->initialized", file=0x7658c9d0 "../include/privates.h", line=121, + function=0x7658d040 <__PRETTY_FUNCTION__.10607> "dixGetPrivateAddr") at assert.c:101 + #4 0x76579e6c in dixGetPrivateAddr (key=, key=, privates=) at ../include/privates.h:121 + #5 0x7657a954 in dixGetPrivateAddr (key=, key=, privates=) at exa.c:70 + #6 dixGetPrivate (key=, privates=) at ../include/privates.h:136 + #7 exaGetPixmapDriverPrivate (pPix=) at exa.c:68 + #8 0x7623d460 in radeon_get_pixmap_bo (pPix=0x71c1b8) at radeon.h:804 + #9 radeon_get_pixmap_handle (pixmap=0x71c1b8, handle=0x7fa22328) at radeon_bo_helper.c:357 + #10 0x76244458 in radeon_pixmap_get_fb (pix=0x71c1b8) at radeon.h:886 + #11 drmmode_set_mode_major (crtc=0x691860, mode=0x69191c, rotation=, x=, y=) at drmmode_display.c:918 + #12 0x762467e8 in drmmode_set_desired_modes (pScrn=0x67c678, drmmode=, set_hw=1) at drmmode_display.c:3128 + #13 0x0047bfa4 in MapWindow (client=0x669ec8, pWin=0x7206c0) at window.c:2722 + #14 MapWindow (pWin=0x7206c0, client=0x669ec8) at window.c:2665 + #15 0x00449650 in dix_main (argc=3, argv=0x7fa22604, envp=) at main.c:247 + #16 0x76ab2198 in __libc_start_main (main=0x42db10
, argc=3, argv=0x7fa22604, init=, fini=0x606434 <__libc_csu_fini>, rtld_fini=0x77229930 <_dl_fini>, + stack_end=0x7fa225e0) at libc-start.c:308 + #17 0x0042db80 in __start () at ../sysdeps/mips/start.S:110 + +Don't call `exaGetPixmapDriverPrivate` if the acceleration (EXA) is not +enabled [yet] to avoid the problem. + +Closes: https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/issues/188 +Closes: https://bugzilla.altlinux.org/show_bug.cgi?id=37539 +Signed-off-by: Michel Dänzer +--- + src/radeon.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/radeon.h b/src/radeon.h +index 8e964805..e4a2ba66 100644 +--- a/src/radeon.h ++++ b/src/radeon.h +@@ -790,8 +790,8 @@ static inline Bool radeon_set_pixmap_bo(PixmapPtr pPix, struct radeon_buffer *bo + + static inline struct radeon_buffer *radeon_get_pixmap_bo(PixmapPtr pPix) + { +-#ifdef USE_GLAMOR + RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(pPix->drawable.pScreen)); ++#ifdef USE_GLAMOR + + if (info->use_glamor) { + struct radeon_pixmap *priv; +@@ -799,7 +799,7 @@ static inline struct radeon_buffer *radeon_get_pixmap_bo(PixmapPtr pPix) + return priv ? priv->bo : NULL; + } else + #endif +- { ++ if (info->accelOn) { + struct radeon_exa_pixmap_priv *driver_priv; + driver_priv = exaGetPixmapDriverPrivate(pPix); + return driver_priv ? driver_priv->bo : NULL; +-- +2.26.2 + diff --git a/sources b/sources new file mode 100644 index 0000000..5de4186 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (xf86-video-ati-19.1.0.tar.bz2) = 73a81f6c492daf2e89067fb52b3033dc0fe6841f109627ddca1aee54a45a738c8c134443753a2a2aaa2c131e1d560057ebc76351ff2304c16407df3ff568fcd6 diff --git a/xorg-x11-drv-ati.spec b/xorg-x11-drv-ati.spec new file mode 100644 index 0000000..abbc7f2 --- /dev/null +++ b/xorg-x11-drv-ati.spec @@ -0,0 +1,241 @@ +%global tarball xf86-video-ati +%global moduledir %(pkg-config xorg-server --variable=moduledir ) +%global driverdir %{moduledir}/drivers +#global gitdate 20160928 +#global gitversion 3fc839ff + +%undefine _hardened_build + +%if 0%{?gitdate} +%global gver .%{gitdate}git%{gitversion} +%endif + +Summary: Xorg X11 ati video driver +Name: xorg-x11-drv-ati +Version: 19.1.0 +Release: 1%{?gver}%{?dist} +URL: http://www.x.org +License: MIT +Group: User Interface/X Hardware Support + +Source0: https://www.x.org/pub/individual/driver/%{tarball}-%{version}.tar.bz2 +#Source0: %{tarball}-%{gitdate}.tar.xz + +Patch1: 0001-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch +Patch2: 0002-Don-t-crash-X-server-if-GPU-acceleration-is-not-avai.patch + +ExcludeArch: s390 s390x + +BuildRequires: xorg-x11-server-devel >= 1.10.99.902 +BuildRequires: pkgconfig(gbm) >= 10.6 +BuildRequires: libdrm-devel >= 2.4.33-1 +BuildRequires: kernel-headers >= 2.6.27-0.308 +BuildRequires: automake autoconf libtool pkgconfig +BuildRequires: xorg-x11-util-macros >= 1.1.5 +BuildRequires: libudev-devel +BuildRequires: xorg-x11-glamor-devel + +Requires: Xorg %(xserver-sdk-abi-requires ansic) +Requires: Xorg %(xserver-sdk-abi-requires videodrv) +Requires: libdrm >= 2.4.36-1 + +%description +X.Org X11 ati video driver. + +%prep +%setup -q -n %{tarball}-%{?gitdate:%{gitdate}}%{?!gitdate:%{version}} +%patch1 -p1 -b .null-fb_ptr +%patch2 -p1 -b .shadowfb-crash-fix + +%build +autoreconf -iv +%configure --disable-static --enable-glamor +make %{?_smp_mflags} + +%install +%make_install +find $RPM_BUILD_ROOT -regex ".*\.la$" | xargs rm -f -- + +%files +%{driverdir}/ati_drv.so +%{driverdir}/radeon_drv.so +%{_mandir}/man4/ati.4* +%{_mandir}/man4/radeon.4* +%{_datadir}/X11/xorg.conf.d/10-radeon.conf + +%changelog +* Tue May 26 2020 Michel Dänzer - 19.1.0-1 +- ati 19.1.0 (#1728818) +- Drop patch 0001-Don-t-set-up-black-scanout-buffer-if-LeaveVT-is-call.patch, + merged upstream +- Add patches 0001-Handle-NULL-fb_ptr-in-pixmap_get_fb.patch & + 0002-Don-t-crash-X-server-if-GPU-acceleration-is-not-avai.patch from + upstream Git master, fixing crashes with ShadowFB + +* Tue Nov 12 2019 Olivier Fourdan - 19.0.1-2 +- Fix a regression with user-switching (#1757864) + +* Wed Jun 12 2019 Olivier Fourdan - 19.0.1-1 +- ati 19.0.1 (#1719310) + +* Fri Jun 7 2019 Olivier Fourdan - 18.1.0-2 +- Avoid breakage on Xserver reset (#1717807) + +* Tue Oct 16 2018 Adam Jackson - 18.1.0-1 +- ati 18.1.0 + +* Sat Jul 14 2018 Fedora Release Engineering - 18.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Apr 04 2018 Adam Jackson - 18.0.1-1 +- ati 18.0.1 + +* Mon Apr 02 2018 Adam Jackson - 7.10.0-4 +- Rebuild for xserver 1.20 + +* Mon Mar 19 2018 Adam Jackson - 7.10.0-3 +- Drop BuildRequires: python, not actually needed + +* Fri Feb 09 2018 Fedora Release Engineering - 7.10.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Nov 07 2017 Adam Jackson - 7.10.0-1 +- ati 7.10.0 + +* Thu Aug 03 2017 Fedora Release Engineering - 7.9.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 7.9.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Mar 17 2017 Adam Jackson - 7.9.0-1 +- ati 7.9.0 + +* Sat Feb 11 2017 Fedora Release Engineering - 7.7.1-2.20160928git3fc839ff +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Sep 28 2016 Hans de Goede 7.7.1-1 +- Update to latest git, this is the equivalent of 7.7.1 + fixes for use + with xserver-1.19 (rhbz#1325613) +- Rebuild against xserver-1.19 + +* Wed May 18 2016 Dave Airlie 7.7.0-1 +- Update to latest git. + +* Mon Feb 15 2016 Dave Airlie 7.6.1-3 +- update to latest git snapshot + +* Fri Feb 05 2016 Fedora Release Engineering - 7.6.1-2.20151116gitdfb5277 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jan 20 2016 Peter Hutterer +- s/define/global/ + +* Mon Nov 16 2015 Dave Airlie 7.6.1-1 +- 7.6.1 release git snapshot + +* Wed Sep 16 2015 Dave Airlie - 7.6.0-0.4.20150729git5510cd6 +- 1.18 ABI rebuild + +* Wed Jul 29 2015 Dave Airlie 7.6.0-0.3.20150729git5510cd6 +- git snapshot for new ABI + +* Wed Jul 29 2015 Dave Airlie - 7.6.0-0.2.20150709git95f5d09 +- 1.15 ABI rebuild + +* Thu Jul 09 2015 Dave Airlie 7.6.0-0.1 +- git snapshot of the day. + +* Fri Jun 19 2015 Fedora Release Engineering - 7.5.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon Mar 02 2015 Dave Airlie 7.5.0-4 +- kill hardended builds harder + +* Mon Mar 02 2015 Dave Airlie 7.5.0-3 +- kill hardended builds for X.org + +* Wed Feb 11 2015 Hans de Goede - 7.5.0-2 +- xserver 1.17 ABI rebuild + +* Fri Oct 10 2014 Adam Jackson 7.5.0-1 +- ati 7.5.0 + +* Mon Aug 18 2014 Fedora Release Engineering - 7.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Mon Jul 28 2014 Hans de Goede - 7.4.0-2 +- Fix FTBFS with xorg-server-1.16.0 + +* Wed Jul 2 2014 Hans de Goede - 7.4.0-1 +- Update to 7.4.0 (rhbz#907141) + +* Mon Jun 16 2014 Hans de Goede - 7.4.0-0.4.20140419git48d3dbc +- xserver 1.15.99.903 ABI rebuild + +* Sun Jun 08 2014 Fedora Release Engineering - 7.4.0-0.3.20140419git48d3dbc +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon Apr 28 2014 Hans de Goede - 7.4.0-0.2.20140419git48d3dbc +- xserver 1.15.99-20140428 git snapshot ABI rebuild + +* Sat Apr 19 2014 Dave Airlie 7.4.0-0.1 +- latest upstream git snapshot + +* Mon Jan 13 2014 Adam Jackson - 7.2.0-7.20131101git3b38701 +- 1.15 ABI rebuild + +* Tue Dec 17 2013 Adam Jackson - 7.2.0-6.20131101git3b38701 +- 1.15RC4 ABI rebuild + +* Wed Nov 20 2013 Adam Jackson - 7.2.0-5.20131101git3b38701 +- 1.15RC2 ABI rebuild + +* Wed Nov 06 2013 Adam Jackson - 7.2.0-4.20131101git3b38701 +- 1.15RC1 ABI rebuild + +* Fri Nov 01 2013 Jerome Glisse - 7.2.0-3 +- Update to lastest upstream git snapshot + +* Fri Oct 25 2013 Jerome Glisse - 7.2.0-2 +- Fix gnome-shell rendering issue with radeonsi + +* Fri Oct 25 2013 Adam Jackson - 7.2.0-1 +- ABI rebuild + +* Thu Aug 29 2013 Dave Airlie 7.2.0-0 +- update to latest upstream release 7.2.0 + +* Sun Aug 04 2013 Fedora Release Engineering - 7.1.0-6.20130408git6e74aacc5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Apr 11 2013 Jerome Glisse 7.1.0-5 +- No need to patch for enabling glamor with git snapshot + +* Mon Apr 08 2013 Jerome Glisse 7.1.0-4 +- Git snapshot +- Enable glamor acceleration for southern island GPU + +* Tue Mar 19 2013 Adam Jackson 7.1.0-3 +- Less RHEL customization + +* Thu Mar 07 2013 Peter Hutterer - 7.1.0-2 +- ABI rebuild + +* Tue Feb 26 2013 Adam Jackson 7.1.0-1 +- ati 7.1.0 + +* Fri Feb 15 2013 Peter Hutterer - 7.0.0-0.10.20121015gitbd9e2c064 +- ABI rebuild + +* Fri Feb 15 2013 Peter Hutterer - 7.0.0-0.9.20121015gitbd9e2c064 +- ABI rebuild + +* Thu Nov 15 2012 Jerome Glisse 7.0.0-0.8.20121015gitbd9e2c064 +- fix dri2 segfault #872536 + +* Mon Oct 15 2012 Dave Airlie 7.0.0-0.7.20121015gitbd9e2c064 +- fix issue with damage when using offload or sw cursor + +* Mon Sep 10 2012 Dave Airlie 7.0.0-0.6.20120910git7c7f27756 +- make sure driver loads on outputless GPUs