diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2015-01-30 14:49:06 -0300 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2015-01-30 14:49:06 -0300 |
commit | 1416490658fb1d376129a926572f34b6be8c3283 (patch) | |
tree | e2336ed8d163eb63049f1a53fd91c68f62e768b6 /kernels | |
parent | 27aa494d6370c4193a98b2df3502d07ba655be68 (diff) | |
parent | 518a74be94932936436dd22d85a0584c904d229e (diff) | |
download | abslibre-1416490658fb1d376129a926572f34b6be8c3283.tar.gz abslibre-1416490658fb1d376129a926572f34b6be8c3283.tar.bz2 abslibre-1416490658fb1d376129a926572f34b6be8c3283.zip |
Merge branch 'master' of git://projects.parabola.nu/abslibre/abslibre
Diffstat (limited to 'kernels')
13 files changed, 30 insertions, 364 deletions
diff --git a/kernels/linux-libre-grsec-knock/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch b/kernels/linux-libre-grsec-knock/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch deleted file mode 100644 index f9aa99342..000000000 --- a/kernels/linux-libre-grsec-knock/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch +++ /dev/null @@ -1,79 +0,0 @@ -From d472fcc8379c062bd56a3876fc6ef22258f14a91 Mon Sep 17 00:00:00 2001 -From: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon, 24 Nov 2014 11:12:42 +0100 -Subject: [PATCH] drm/i915: Disallow pin ioctl completely for kms drivers - -The problem here is that SNA pins batchbuffers to etch out a bit more -performance. Iirc it started out as a w/a for i830M (which we've -implemented in the kernel since a long time already). The problem is -that the pin ioctl wasn't added in - -commit d23db88c3ab233daed18709e3a24d6c95344117f -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Fri May 23 08:48:08 2014 +0200 - - drm/i915: Prevent negative relocation deltas from wrapping - -Fix this by simply disallowing pinning from userspace so that the -kernel is in full control of batch placement again. Especially since -distros are moving towards running X as non-root, so most users won't -even be able to see any benefits. - -UMS support is dead now, but we need this minimal patch for -backporting. Follow-up patch will remove the pin ioctl code -completely. - -Note to backporters: You must have both - -commit b45305fce5bb1abec263fcff9d81ebecd6306ede -Author: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon Dec 17 16:21:27 2012 +0100 - - drm/i915: Implement workaround for broken CS tlb on i830/845 - -which laned in 3.8 and - -commit c4d69da167fa967749aeb70bc0e94a457e5d00c1 -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Mon Sep 8 14:25:41 2014 +0100 - - drm/i915: Evict CS TLBs between batches - -which is also marked cc: stable. Otherwise this could introduce a -regression by disabling the userspace w/a without the kernel w/a being -fully functional on i830/45. - -References: https://bugs.freedesktop.org/show_bug.cgi?id=76554#c116 -Cc: stable@vger.kernel.org # requires c4d69da167fa967749a and v3.8 -Cc: Chris Wilson <chris@chris-wilson.co.uk> -Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> ---- - drivers/gpu/drm/i915/i915_gem.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c -index fd17cca..97b86a5 100644 ---- a/drivers/gpu/drm/i915/i915_gem.c -+++ b/drivers/gpu/drm/i915/i915_gem.c -@@ -4263,7 +4263,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -- if (INTEL_INFO(dev)->gen >= 6) -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) - return -ENODEV; - - ret = i915_mutex_lock_interruptible(dev); -@@ -4319,6 +4319,9 @@ i915_gem_unpin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) -+ return -ENODEV; -+ - ret = i915_mutex_lock_interruptible(dev); - if (ret) - return ret; --- -2.2.0 - diff --git a/kernels/linux-libre-grsec-knock/PKGBUILD b/kernels/linux-libre-grsec-knock/PKGBUILD index a17715738..277700e78 100644 --- a/kernels/linux-libre-grsec-knock/PKGBUILD +++ b/kernels/linux-libre-grsec-knock/PKGBUILD @@ -12,9 +12,9 @@ pkgbase=linux-libre-grsec-knock # Build kernel with -grsec-knock localname _pkgbasever=3.18-gnu -_pkgver=3.18.3-gnu +_pkgver=3.18.4-gnu _grsecver=3.0 -_timestamp=201501182219 +_timestamp=201501272307 _knockpatchver=3.18_1 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname @@ -44,27 +44,25 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li 'linux.preset' 'logo_linux_'{clut224.ppm,vga16.ppm,mono.pbm} 'change-default-console-loglevel.patch' - '0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch' # loongson-community patch: http://linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/ # Note: Makefile patching was removed due which we are using specific flags from grsecurity patch '3.18-rc6-48c0ad793f-loongson-community.patch') sha256sums=('0f347d8eba8a6878246b94b3559eb0371d96a3f43de2f134513e274de11a60cf' 'SKIP' - '28e6de2c7325d7b0c3856381678028969b97abb9224f9609a3d6563f560f24b8' + '4dfdceef40f09da135f5ea5f22117054dc18193496ec3ea50ae0d75587723e2f' 'SKIP' - 'ba8d2a97211522e8fb1797e06f77e5a83c0f331d763e4bb5ce2931ddf714461b' + '655d998d6436c84e630696a94f9f53d0036fed82d5ff02119db2ab9e37db835f' 'SKIP' '93a1610c203ea4c187ac5b50dce105fac86df914b1406e1d85df5857d36201c9' 'SKIP' - '98c976f19423a9aa917f8401e87478ed851535af990b7be1cc1ded938e21fd44' - '929c59c941c30d96b750d08ffc2a82fba8ba6bc04cbd03bb8e46ea8ccd2e70dd' + 'd081c0ec2514ee3dec06d2fe10980e2958746f9e78d0a5cda54c8df8cf4c4a0a' + 'fce9e649924e852519437f98dfaf6c59c54f7ece71210d4405420d673ff877df' '8b79e94a734b994aa788edfea58ab540de3f1db80adab88f73c6d11f4bb92dc1' 'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c' '074b67818582874146c389c029bc43648d145891a27e47aa2c5c42d3571f0264' '2e87a8ec1cc0c91938cac24992d8a3d4362b3e9d939767e4c9d2ec8e6d969d53' 'f67f60a30bcf2e9a2ba88ad97cace308da7a7f94919bb95c3dc030f5885a8015' '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' - '0bda45a3ef0f2780bbe588f2e53ab2b79814d29e9c6fc7bfff3b0dbdaa9e710d' '438ce44e3409d644f0a99b05c3208ae3f1d46b8efe0edfc7d52ce3625e381ae9') validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva @@ -104,9 +102,6 @@ prepare() { # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git - # fix #43143 - patch -p1 -i "${srcdir}/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch" - # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) diff --git a/kernels/linux-libre-grsec-knock/config.i686 b/kernels/linux-libre-grsec-knock/config.i686 index 2baad6b4b..52d05bd76 100644 --- a/kernels/linux-libre-grsec-knock/config.i686 +++ b/kernels/linux-libre-grsec-knock/config.i686 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 3.18.1-gnu-201412281149-1-grsec-knock Kernel Configuration +# Linux/x86 3.18.4-gnu-201501272307-1-grsec-knock Kernel Configuration # # CONFIG_64BIT is not set CONFIG_X86_32=y @@ -7002,6 +7002,7 @@ CONFIG_GRKERNSEC_CHROOT_UNIX=y CONFIG_GRKERNSEC_CHROOT_FINDTASK=y CONFIG_GRKERNSEC_CHROOT_NICE=y CONFIG_GRKERNSEC_CHROOT_SYSCTL=y +CONFIG_GRKERNSEC_CHROOT_RENAME=y CONFIG_GRKERNSEC_CHROOT_CAPS=y CONFIG_GRKERNSEC_CHROOT_INITRD=y diff --git a/kernels/linux-libre-grsec-knock/config.x86_64 b/kernels/linux-libre-grsec-knock/config.x86_64 index ae1197f5d..ce230aa76 100644 --- a/kernels/linux-libre-grsec-knock/config.x86_64 +++ b/kernels/linux-libre-grsec-knock/config.x86_64 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 3.18.1-gnu-201412281149-1-grsec-knock Kernel Configuration +# Linux/x86 3.18.4-gnu-201501272307-1-grsec-knock Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -6699,6 +6699,7 @@ CONFIG_GRKERNSEC_CHROOT_UNIX=y CONFIG_GRKERNSEC_CHROOT_FINDTASK=y CONFIG_GRKERNSEC_CHROOT_NICE=y CONFIG_GRKERNSEC_CHROOT_SYSCTL=y +CONFIG_GRKERNSEC_CHROOT_RENAME=y CONFIG_GRKERNSEC_CHROOT_CAPS=y CONFIG_GRKERNSEC_CHROOT_INITRD=y diff --git a/kernels/linux-libre-knock/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch b/kernels/linux-libre-knock/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch deleted file mode 100644 index f9aa99342..000000000 --- a/kernels/linux-libre-knock/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch +++ /dev/null @@ -1,79 +0,0 @@ -From d472fcc8379c062bd56a3876fc6ef22258f14a91 Mon Sep 17 00:00:00 2001 -From: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon, 24 Nov 2014 11:12:42 +0100 -Subject: [PATCH] drm/i915: Disallow pin ioctl completely for kms drivers - -The problem here is that SNA pins batchbuffers to etch out a bit more -performance. Iirc it started out as a w/a for i830M (which we've -implemented in the kernel since a long time already). The problem is -that the pin ioctl wasn't added in - -commit d23db88c3ab233daed18709e3a24d6c95344117f -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Fri May 23 08:48:08 2014 +0200 - - drm/i915: Prevent negative relocation deltas from wrapping - -Fix this by simply disallowing pinning from userspace so that the -kernel is in full control of batch placement again. Especially since -distros are moving towards running X as non-root, so most users won't -even be able to see any benefits. - -UMS support is dead now, but we need this minimal patch for -backporting. Follow-up patch will remove the pin ioctl code -completely. - -Note to backporters: You must have both - -commit b45305fce5bb1abec263fcff9d81ebecd6306ede -Author: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon Dec 17 16:21:27 2012 +0100 - - drm/i915: Implement workaround for broken CS tlb on i830/845 - -which laned in 3.8 and - -commit c4d69da167fa967749aeb70bc0e94a457e5d00c1 -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Mon Sep 8 14:25:41 2014 +0100 - - drm/i915: Evict CS TLBs between batches - -which is also marked cc: stable. Otherwise this could introduce a -regression by disabling the userspace w/a without the kernel w/a being -fully functional on i830/45. - -References: https://bugs.freedesktop.org/show_bug.cgi?id=76554#c116 -Cc: stable@vger.kernel.org # requires c4d69da167fa967749a and v3.8 -Cc: Chris Wilson <chris@chris-wilson.co.uk> -Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> ---- - drivers/gpu/drm/i915/i915_gem.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c -index fd17cca..97b86a5 100644 ---- a/drivers/gpu/drm/i915/i915_gem.c -+++ b/drivers/gpu/drm/i915/i915_gem.c -@@ -4263,7 +4263,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -- if (INTEL_INFO(dev)->gen >= 6) -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) - return -ENODEV; - - ret = i915_mutex_lock_interruptible(dev); -@@ -4319,6 +4319,9 @@ i915_gem_unpin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) -+ return -ENODEV; -+ - ret = i915_mutex_lock_interruptible(dev); - if (ret) - return ret; --- -2.2.0 - diff --git a/kernels/linux-libre-knock/PKGBUILD b/kernels/linux-libre-knock/PKGBUILD index feb55814c..6b11ca1fd 100644 --- a/kernels/linux-libre-knock/PKGBUILD +++ b/kernels/linux-libre-knock/PKGBUILD @@ -9,7 +9,7 @@ pkgbase=linux-libre-knock # Build stock knock kernel _pkgbasever=3.18-gnu -_pkgver=3.18.3-gnu +_pkgver=3.18.4-gnu _knockpatchver=3.18_1 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname @@ -37,12 +37,11 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li 'linux.preset' 'logo_linux_'{clut224.ppm,vga16.ppm,mono.pbm} 'change-default-console-loglevel.patch' - '0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch' # loongson-community patch: http://linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/ '3.18-rc6-48c0ad793f-loongson-community.patch') sha256sums=('0f347d8eba8a6878246b94b3559eb0371d96a3f43de2f134513e274de11a60cf' 'SKIP' - '28e6de2c7325d7b0c3856381678028969b97abb9224f9609a3d6563f560f24b8' + '4dfdceef40f09da135f5ea5f22117054dc18193496ec3ea50ae0d75587723e2f' 'SKIP' '93a1610c203ea4c187ac5b50dce105fac86df914b1406e1d85df5857d36201c9' 'SKIP' @@ -54,7 +53,6 @@ sha256sums=('0f347d8eba8a6878246b94b3559eb0371d96a3f43de2f134513e274de11a60cf' '2e87a8ec1cc0c91938cac24992d8a3d4362b3e9d939767e4c9d2ec8e6d969d53' 'f67f60a30bcf2e9a2ba88ad97cace308da7a7f94919bb95c3dc030f5885a8015' '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' - '0bda45a3ef0f2780bbe588f2e53ab2b79814d29e9c6fc7bfff3b0dbdaa9e710d' '81adca8b3f58156f4a245cb7f20750041a9e6848b282942d7d9e213a04c96c9f') validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva @@ -89,9 +87,6 @@ prepare() { # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git - # fix #43143 - patch -p1 -i "${srcdir}/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch" - # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) diff --git a/kernels/linux-libre-lts-grsec-knock/PKGBUILD b/kernels/linux-libre-lts-grsec-knock/PKGBUILD index 586b4a56d..4432b7428 100644 --- a/kernels/linux-libre-lts-grsec-knock/PKGBUILD +++ b/kernels/linux-libre-lts-grsec-knock/PKGBUILD @@ -12,9 +12,9 @@ pkgbase=linux-libre-lts-grsec-knock # Build kernel with lts-grsec-knock localname _pkgbasever=3.14-gnu -_pkgver=3.14.29-gnu +_pkgver=3.14.30-gnu _grsecver=3.0 -_timestamp=201501182217 +_timestamp=201501272307 _knockpatchver=3.16_1 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname @@ -53,9 +53,9 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li '3.14.14-a410a5e2b7-loongson-community.patch') sha256sums=('477555c709b9407fe37dbd70d3331ff9dde1f9d874aba2741f138d07ae6f281b' 'SKIP' - '24fcfa602cef359cd9f6f319cbbe3efea9a0c2c38b7f934f434887c254b57bef' + '35dfc46806b6a1196c8be9fe336cf16ccd576b81268865dbf03e241c06c36ad3' 'SKIP' - '3f22ab2bdba95d82bf186670fd6b2dfa77d6d9863eb9b13b149132ca329771bc' + '8da6bbf7eb97012e27875e0b19075bde4c5c23baff1272e7a97b449c53e5475f' 'SKIP' '70cbe962aa01989ffa83490bb0765d6e4c781f6133dc8d768d84bd6716ac0209' 'SKIP' diff --git a/kernels/linux-libre-lts-grsec/PKGBUILD b/kernels/linux-libre-lts-grsec/PKGBUILD index 7a2adb551..134a5eb5b 100644 --- a/kernels/linux-libre-lts-grsec/PKGBUILD +++ b/kernels/linux-libre-lts-grsec/PKGBUILD @@ -12,9 +12,9 @@ pkgbase=linux-libre-lts-grsec # Build kernel with lts-grsec localname _pkgbasever=3.14-gnu -_pkgver=3.14.29-gnu +_pkgver=3.14.30-gnu _grsecver=3.0 -_timestamp=201501182217 +_timestamp=201501272307 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname _replacesoldkernels=('kernel26%' 'kernel26-libre%') # '%' gets replaced with _kernelname @@ -50,9 +50,9 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li '3.14.14-a410a5e2b7-loongson-community.patch') sha256sums=('477555c709b9407fe37dbd70d3331ff9dde1f9d874aba2741f138d07ae6f281b' 'SKIP' - '24fcfa602cef359cd9f6f319cbbe3efea9a0c2c38b7f934f434887c254b57bef' + '35dfc46806b6a1196c8be9fe336cf16ccd576b81268865dbf03e241c06c36ad3' 'SKIP' - '3f22ab2bdba95d82bf186670fd6b2dfa77d6d9863eb9b13b149132ca329771bc' + '8da6bbf7eb97012e27875e0b19075bde4c5c23baff1272e7a97b449c53e5475f' 'SKIP' '064ba6595f578bb09175508df8f8d824d6db9afc828f59b8e50f3f17063a134b' 'd7c0c0431e7b81d95b5239ae285b48a58fa3c9ae1fd87d990cdeb44fb27e0b3d' diff --git a/kernels/linux-libre-lts-knock/PKGBUILD b/kernels/linux-libre-lts-knock/PKGBUILD index 9610f872b..7395d69a3 100644 --- a/kernels/linux-libre-lts-knock/PKGBUILD +++ b/kernels/linux-libre-lts-knock/PKGBUILD @@ -9,7 +9,7 @@ pkgbase=linux-libre-lts-knock # Build stock -lts-knock kernel _pkgbasever=3.14-gnu -_pkgver=3.14.29-gnu +_pkgver=3.14.30-gnu _knockpatchver=3.16_1 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname @@ -45,7 +45,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li '3.14.14-a410a5e2b7-loongson-community.patch') sha256sums=('477555c709b9407fe37dbd70d3331ff9dde1f9d874aba2741f138d07ae6f281b' 'SKIP' - '24fcfa602cef359cd9f6f319cbbe3efea9a0c2c38b7f934f434887c254b57bef' + '35dfc46806b6a1196c8be9fe336cf16ccd576b81268865dbf03e241c06c36ad3' 'SKIP' '70cbe962aa01989ffa83490bb0765d6e4c781f6133dc8d768d84bd6716ac0209' 'SKIP' diff --git a/kernels/linux-libre-pae/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch b/kernels/linux-libre-pae/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch deleted file mode 100644 index f9aa99342..000000000 --- a/kernels/linux-libre-pae/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch +++ /dev/null @@ -1,79 +0,0 @@ -From d472fcc8379c062bd56a3876fc6ef22258f14a91 Mon Sep 17 00:00:00 2001 -From: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon, 24 Nov 2014 11:12:42 +0100 -Subject: [PATCH] drm/i915: Disallow pin ioctl completely for kms drivers - -The problem here is that SNA pins batchbuffers to etch out a bit more -performance. Iirc it started out as a w/a for i830M (which we've -implemented in the kernel since a long time already). The problem is -that the pin ioctl wasn't added in - -commit d23db88c3ab233daed18709e3a24d6c95344117f -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Fri May 23 08:48:08 2014 +0200 - - drm/i915: Prevent negative relocation deltas from wrapping - -Fix this by simply disallowing pinning from userspace so that the -kernel is in full control of batch placement again. Especially since -distros are moving towards running X as non-root, so most users won't -even be able to see any benefits. - -UMS support is dead now, but we need this minimal patch for -backporting. Follow-up patch will remove the pin ioctl code -completely. - -Note to backporters: You must have both - -commit b45305fce5bb1abec263fcff9d81ebecd6306ede -Author: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon Dec 17 16:21:27 2012 +0100 - - drm/i915: Implement workaround for broken CS tlb on i830/845 - -which laned in 3.8 and - -commit c4d69da167fa967749aeb70bc0e94a457e5d00c1 -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Mon Sep 8 14:25:41 2014 +0100 - - drm/i915: Evict CS TLBs between batches - -which is also marked cc: stable. Otherwise this could introduce a -regression by disabling the userspace w/a without the kernel w/a being -fully functional on i830/45. - -References: https://bugs.freedesktop.org/show_bug.cgi?id=76554#c116 -Cc: stable@vger.kernel.org # requires c4d69da167fa967749a and v3.8 -Cc: Chris Wilson <chris@chris-wilson.co.uk> -Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> ---- - drivers/gpu/drm/i915/i915_gem.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c -index fd17cca..97b86a5 100644 ---- a/drivers/gpu/drm/i915/i915_gem.c -+++ b/drivers/gpu/drm/i915/i915_gem.c -@@ -4263,7 +4263,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -- if (INTEL_INFO(dev)->gen >= 6) -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) - return -ENODEV; - - ret = i915_mutex_lock_interruptible(dev); -@@ -4319,6 +4319,9 @@ i915_gem_unpin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) -+ return -ENODEV; -+ - ret = i915_mutex_lock_interruptible(dev); - if (ret) - return ret; --- -2.2.0 - diff --git a/kernels/linux-libre-pae/PKGBUILD b/kernels/linux-libre-pae/PKGBUILD index 48a19b973..d91258bf3 100644 --- a/kernels/linux-libre-pae/PKGBUILD +++ b/kernels/linux-libre-pae/PKGBUILD @@ -9,7 +9,7 @@ pkgbase=linux-libre-pae # Build stock -pae kernel _pkgbasever=3.18-gnu -_pkgver=3.18.3-gnu +_pkgver=3.18.4-gnu _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname _replacesoldkernels=('kernel26%' 'kernel26-libre%') # '%' gets replaced with _kernelname @@ -33,19 +33,17 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li # standard config files for mkinitcpio ramdisk 'linux.preset' 'logo_linux_'{clut224.ppm,vga16.ppm,mono.pbm} - 'change-default-console-loglevel.patch' - '0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch') + 'change-default-console-loglevel.patch') sha256sums=('0f347d8eba8a6878246b94b3559eb0371d96a3f43de2f134513e274de11a60cf' 'SKIP' - '28e6de2c7325d7b0c3856381678028969b97abb9224f9609a3d6563f560f24b8' + '4dfdceef40f09da135f5ea5f22117054dc18193496ec3ea50ae0d75587723e2f' 'SKIP' '8d255e4551bb88252ede8cc0f5046794372076da6bd97582229172537f0cc922' 'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c' '074b67818582874146c389c029bc43648d145891a27e47aa2c5c42d3571f0264' '2e87a8ec1cc0c91938cac24992d8a3d4362b3e9d939767e4c9d2ec8e6d969d53' 'f67f60a30bcf2e9a2ba88ad97cace308da7a7f94919bb95c3dc030f5885a8015' - '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' - '0bda45a3ef0f2780bbe588f2e53ab2b79814d29e9c6fc7bfff3b0dbdaa9e710d') + '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99') validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva ) @@ -70,9 +68,6 @@ prepare() { # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git - # fix #43143 - patch -p1 -i "${srcdir}/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch" - # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) diff --git a/kernels/linux-libre-xen/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch b/kernels/linux-libre-xen/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch deleted file mode 100644 index f9aa99342..000000000 --- a/kernels/linux-libre-xen/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch +++ /dev/null @@ -1,79 +0,0 @@ -From d472fcc8379c062bd56a3876fc6ef22258f14a91 Mon Sep 17 00:00:00 2001 -From: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon, 24 Nov 2014 11:12:42 +0100 -Subject: [PATCH] drm/i915: Disallow pin ioctl completely for kms drivers - -The problem here is that SNA pins batchbuffers to etch out a bit more -performance. Iirc it started out as a w/a for i830M (which we've -implemented in the kernel since a long time already). The problem is -that the pin ioctl wasn't added in - -commit d23db88c3ab233daed18709e3a24d6c95344117f -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Fri May 23 08:48:08 2014 +0200 - - drm/i915: Prevent negative relocation deltas from wrapping - -Fix this by simply disallowing pinning from userspace so that the -kernel is in full control of batch placement again. Especially since -distros are moving towards running X as non-root, so most users won't -even be able to see any benefits. - -UMS support is dead now, but we need this minimal patch for -backporting. Follow-up patch will remove the pin ioctl code -completely. - -Note to backporters: You must have both - -commit b45305fce5bb1abec263fcff9d81ebecd6306ede -Author: Daniel Vetter <daniel.vetter@ffwll.ch> -Date: Mon Dec 17 16:21:27 2012 +0100 - - drm/i915: Implement workaround for broken CS tlb on i830/845 - -which laned in 3.8 and - -commit c4d69da167fa967749aeb70bc0e94a457e5d00c1 -Author: Chris Wilson <chris@chris-wilson.co.uk> -Date: Mon Sep 8 14:25:41 2014 +0100 - - drm/i915: Evict CS TLBs between batches - -which is also marked cc: stable. Otherwise this could introduce a -regression by disabling the userspace w/a without the kernel w/a being -fully functional on i830/45. - -References: https://bugs.freedesktop.org/show_bug.cgi?id=76554#c116 -Cc: stable@vger.kernel.org # requires c4d69da167fa967749a and v3.8 -Cc: Chris Wilson <chris@chris-wilson.co.uk> -Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> ---- - drivers/gpu/drm/i915/i915_gem.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c -index fd17cca..97b86a5 100644 ---- a/drivers/gpu/drm/i915/i915_gem.c -+++ b/drivers/gpu/drm/i915/i915_gem.c -@@ -4263,7 +4263,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -- if (INTEL_INFO(dev)->gen >= 6) -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) - return -ENODEV; - - ret = i915_mutex_lock_interruptible(dev); -@@ -4319,6 +4319,9 @@ i915_gem_unpin_ioctl(struct drm_device *dev, void *data, - struct drm_i915_gem_object *obj; - int ret; - -+ if (drm_core_check_feature(dev, DRIVER_MODESET)) -+ return -ENODEV; -+ - ret = i915_mutex_lock_interruptible(dev); - if (ret) - return ret; --- -2.2.0 - diff --git a/kernels/linux-libre-xen/PKGBUILD b/kernels/linux-libre-xen/PKGBUILD index 390feab1b..1f3fd9b0f 100644 --- a/kernels/linux-libre-xen/PKGBUILD +++ b/kernels/linux-libre-xen/PKGBUILD @@ -9,7 +9,7 @@ pkgbase=linux-libre-xen # Build stock -xen kernel _pkgbasever=3.18-gnu -_pkgver=3.18.3-gnu +_pkgver=3.18.4-gnu _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname _replacesoldkernels=('kernel26%' 'kernel26-libre%') # '%' gets replaced with _kernelname @@ -33,19 +33,17 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li # standard config files for mkinitcpio ramdisk 'linux.preset' 'logo_linux_'{clut224.ppm,vga16.ppm,mono.pbm} - 'change-default-console-loglevel.patch' - '0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch') + 'change-default-console-loglevel.patch') sha256sums=('0f347d8eba8a6878246b94b3559eb0371d96a3f43de2f134513e274de11a60cf' 'SKIP' - '28e6de2c7325d7b0c3856381678028969b97abb9224f9609a3d6563f560f24b8' + '4dfdceef40f09da135f5ea5f22117054dc18193496ec3ea50ae0d75587723e2f' 'SKIP' '345716983e32033e17967cb0b3a2a13bbe3aa2ccdc39ab165cb0ee7c01310e47' 'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c' '074b67818582874146c389c029bc43648d145891a27e47aa2c5c42d3571f0264' '2e87a8ec1cc0c91938cac24992d8a3d4362b3e9d939767e4c9d2ec8e6d969d53' 'f67f60a30bcf2e9a2ba88ad97cace308da7a7f94919bb95c3dc030f5885a8015' - '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' - '0bda45a3ef0f2780bbe588f2e53ab2b79814d29e9c6fc7bfff3b0dbdaa9e710d') + '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99') validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva ) @@ -70,9 +68,6 @@ prepare() { # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git - # fix #43143 - patch -p1 -i "${srcdir}/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch" - # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) |