Permalink
Browse files

Bump fedora, tuxonice patches in sys-kernel/geek-sources-3.4.0

  • Loading branch information...
1 parent 0f23f3a commit 4a00f71748529fc2ee5b4ac4d1111c20765d40de @init6 committed Jun 3, 2012
Showing with 12,138 additions and 8,060 deletions.
  1. +1 −1 app-emulation/wine/Manifest
  2. +1 −1 app-emulation/wine/wine-1.5.5.ebuild
  3. +40 −13 sys-kernel/geek-sources/Manifest
  4. +38 −0 ...l/geek-sources/files/3.4.0/fedora/0001-drm-radeon-don-t-mess-with-hot-plug-detect-for-eDP-o.patch
  5. BIN sys-kernel/geek-sources/files/3.4.0/fedora/3.4.1-stable-queue.patch.xz
  6. +153 −0 ...nel/geek-sources/files/3.4.0/fedora/NFS-optimise-away-unnecessary-setattrs-for-open-O_TRUNC.patch
  7. +109 −0 sys-kernel/geek-sources/files/3.4.0/fedora/NFSv4-Further-reduce-the-footprint-of-the-idmapper.patch
  8. +51 −0 ...kernel/geek-sources/files/3.4.0/fedora/NFSv4-Minor-cleanups-for-nfs4_handle_exception-and-n.patch
  9. +37 −0 ...kernel/geek-sources/files/3.4.0/fedora/NFSv4-Rate-limit-the-state-manager-for-lock-reclaim-.patch
  10. +46 −0 sys-kernel/geek-sources/files/3.4.0/fedora/NFSv4-Reduce-the-footprint-of-the-idmapper.patch
  11. +69 −0 sys-kernel/geek-sources/files/3.4.0/fedora/NFSv4-fix-open-O_TRUNC-and-ftruncate-error-handling.patch
  12. +2 −3 sys-kernel/geek-sources/files/3.4.0/fedora/TODO
  13. +384 −0 sys-kernel/geek-sources/files/3.4.0/fedora/apple-gmux-backlight-support.patch
  14. +132 −0 sys-kernel/geek-sources/files/3.4.0/fedora/arm-beagle-usb-init.patch
  15. +0 −11 sys-kernel/geek-sources/files/3.4.0/fedora/arm-tegra-sdhci-module-fix.patch
  16. +3,658 −0 sys-kernel/geek-sources/files/3.4.0/fedora/atl1c_net_next_update-3.4.patch
  17. +0 −101 sys-kernel/geek-sources/files/3.4.0/fedora/drm-cirrus-qemu-fix-crash.patch
  18. +26 −10 sys-kernel/geek-sources/files/3.4.0/fedora/drm-i915-dp-stfu.patch
  19. +161 −0 sys-kernel/geek-sources/files/3.4.0/fedora/drm-i915-lvds-dual-channel.patch
  20. +45 −0 sys-kernel/geek-sources/files/3.4.0/fedora/efifb-skip-DMI-checks-if-bootloader-knows.patch
  21. +98 −0 sys-kernel/geek-sources/files/3.4.0/fedora/hfsplus-Add-an-ioctl-to-bless-files.patch
  22. +39 −0 sys-kernel/geek-sources/files/3.4.0/fedora/hfsplus-initialise-userflags.patch
  23. +176 −0 sys-kernel/geek-sources/files/3.4.0/fedora/hugetlb-fix-resv_map-leak-in-error-path.patch
  24. +15 −0 sys-kernel/geek-sources/files/3.4.0/fedora/ips-noirq.patch
  25. +155 −0 ...geek-sources/files/3.4.0/fedora/ipw2x00-add-supported-cipher-suites-to-wiphy-initialization.patch
  26. +24 −15 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-32bit-mmap-exec-randomization.patch
  27. +34 −34 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-i386-nx-emulation.patch
  28. +16 −4 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-input-kill-stupid-messages.patch
  29. +75 −0 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-intel-iommu-igfx.patch
  30. +40 −42 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-makefile-after_link.patch
  31. +217 −0 sys-kernel/geek-sources/files/3.4.0/fedora/linux-3.3-newidmapper-01.patch
  32. +97 −0 sys-kernel/geek-sources/files/3.4.0/fedora/linux-3.3-newidmapper-02.patch
  33. +40 −0 sys-kernel/geek-sources/files/3.4.0/fedora/linux-3.3-newidmapper-03.patch
  34. +25 −0 sys-kernel/geek-sources/files/3.4.0/fedora/macvtap-zerocopy-validate-vector-length.patch
  35. +272 −0 ...s/3.4.0/fedora/mm-pmd_read_atomic-fix-32bit-PAE-pmd-walk-vs-pmd_populate-SMP-race-condition.patch
  36. +0 −7,779 sys-kernel/geek-sources/files/3.4.0/fedora/modsign-20120510.patch
  37. +0 −26 sys-kernel/geek-sources/files/3.4.0/fedora/modsign-fix-elf-rel.patch
  38. +40 −12 sys-kernel/geek-sources/files/3.4.0/fedora/patch_list
  39. +26 −0 sys-kernel/geek-sources/files/3.4.0/fedora/pci-fix-ats-compile.patch
  40. +0 −7 sys-kernel/geek-sources/files/3.4.0/fedora/rebase-notes.txt
  41. +49 −0 ...l/geek-sources/files/3.4.0/fedora/rtl818x-fix-sleeping-function-called-from-invalid-context.patch
  42. +16 −0 sys-kernel/geek-sources/files/3.4.0/fedora/silence-timekeeping-spew.patch
  43. +274 −0 sys-kernel/geek-sources/files/3.4.0/fedora/uefi-multi-gpu.patch
  44. +4,696 −0 sys-kernel/geek-sources/files/3.4.0/fedora/utrace.patch
  45. +642 −0 sys-kernel/geek-sources/files/3.4.0/fedora/vgaarb-vga_default_device.patch
  46. +118 −0 sys-kernel/geek-sources/files/3.4.0/fedora/x86-Avoid-invoking-RCU-when-CPU-is-idle.patch
  47. BIN sys-kernel/geek-sources/files/tuxonice-kernel-3.3.7.patch.xz
  48. +1 −1 sys-kernel/geek-sources/geek-sources-3.4.0.ebuild
View
2 app-emulation/wine/Manifest
@@ -34,5 +34,5 @@ DIST wine-1.5.5.tar.bz2 20158084 RMD160 02d99b464f66b7b45a728e9e40520968a938e2dd
DIST wine_gecko-1.5-x86.msi 15950848 RMD160 691e4e96abf2bd17a6d55f8bb784c40e23b0ff9c SHA1 07b2bc74d03c885bb39124a7641715314cd3ae71 SHA256 2e372a1b87ff2a22ad5127400ece4b09e55591d9f84e00bb562d294898a49b5c
DIST wine_gecko-1.5-x86_64.msi 16345088 RMD160 e5557156e11ebcc78529c655e5b93081e9bd5b9c SHA1 80a3b36c30bb79a11889879392fdc1fcda9ca165 SHA256 762e80b41e6922849b28299dc5810a28634d484fe73fb7ca52804460588a1730
EBUILD wine-1.5.3.ebuild 7167 RMD160 052ca0a308af14a76f2327a9582e382f240d2ea0 SHA1 a35661590b55c87fdf164c7e74e61f17e4df2146 SHA256 e084b5cc8e402e760395b98dab8180e1b6093201ff499f743bde301a4974fa8a
-EBUILD wine-1.5.5.ebuild 7209 RMD160 1cbbde72f91abd0ab2a8a90da92828db0b0cb519 SHA1 c98191e263ac821227d0f0b975662e43b7d9ba95 SHA256 e4d2e79931aacfd4ec28f7753d900e1f8a98862934750335ca9487ed54042659
+EBUILD wine-1.5.5.ebuild 7198 RMD160 8365f91201a3a01e42cc37a2c3b5ef7870d00762 SHA1 4fd4126079f0a1ee32fe09e5b33c4b1a76fc7594 SHA256 5641959836aa14a23b102e98f1f11c21c1c76cda9a167a8378d28989a01c09f7
MISC metadata.xml 1467 RMD160 75238f47773b9e1bbb13302d4d1acea09ebb8ec6 SHA1 2fc298194ff9ce8e5497ca93cc80151f1f077194 SHA256 99660c18aa56702f9d1e6d5be5238473954618a79275a371bfc0c7768a4e7e04
View
2 app-emulation/wine/wine-1.5.5.ebuild
@@ -129,7 +129,7 @@ src_prepare() {
# WinePulse – PulseAudio for Wine
# http://art.ified.ca/?page_id=40
# git://repo.or.cz/wine/multimedia.git
- EPATCH_OPTS="-p1 -F1 -s" epatch "${FILESDIR}/${P}-multimedia-2012-06-02.patch.xz"
+ EPATCH_OPTS="-p1 -F1 -s" epatch "${FILESDIR}/${P}-multimedia.patch.xz"
# Fix EAX sound in GTA San Andreas
# http://bugs.winehq.org/show_bug.cgi?id=14896
View
53 sys-kernel/geek-sources/Manifest
@@ -777,56 +777,82 @@ AUX 3.4.0/bfq/0002-block-introduce-the-BFQ-v3r4-I-O-sched-for-3.4.patch 166885 R
AUX 3.4.0/bfq/COPYING.BFQ 18476 RMD160 c0b49c4162aa7e8f5105cc7cc2ebd263a639c6f6 SHA1 122e25da9e0a88d311ad6fd4802240671ba8f647 SHA256 1a855332a98ce1996d0bb156120a3be72db36f3089b6e91670b2247edef68f9b
AUX 3.4.0/bfq/README.BFQ 7085 RMD160 0efbc7da02041517fa55dc5e75c826c83a576393 SHA1 608855a828f3d82d0a204f6b9b2a41c49747b295 SHA256 36ae9fa8e8d2e27e59dd86e08310db719c6364ea9eae70ace74d76e11b46fde7
AUX 3.4.0/bfq/patch_list 119 RMD160 a779482befe1367a8e58c782bba7c25ec814f543 SHA1 c4676737ae28608c7abca277731e76e7277f1d92 SHA256 0e017a4108f9379f21016d3a9f062a889f5d9776a35cc426658b7b4c9947b4ad
+AUX 3.4.0/fedora/0001-drm-radeon-don-t-mess-with-hot-plug-detect-for-eDP-o.patch 1440 RMD160 4efbb7531423e1e9affe1280ec29887f58032381 SHA1 82e59604e640cb69c672a13321a4888fc185ab33 SHA256 58b475e435d9f6f9e9dc5f1723cd1a8a41b09ad99ec9c0b1344d3de0ed7f746d
+AUX 3.4.0/fedora/3.4.1-stable-queue.patch.xz 49928 RMD160 e3587ec6f4937d1323cc180107b6ced094267d9f SHA1 9310475dc398bba93908e76d6d7b23c0d8a4daa6 SHA256 b314dc41fadcc52f6c8f94268395e6ffebde2e5010a7c773b4e9ed4061c697c9
+AUX 3.4.0/fedora/NFS-optimise-away-unnecessary-setattrs-for-open-O_TRUNC.patch 5141 RMD160 ba768700436dc7b78897a393542f46aff3479cde SHA1 a05dee845dd52a13d2de61f4bf79649c4328ea5b SHA256 147b7893e05ff107916fe8d222386748123af0bb691424b33d80938d855ed79e
+AUX 3.4.0/fedora/NFSv4-Further-reduce-the-footprint-of-the-idmapper.patch 3011 RMD160 70e845615f698cdc3fadfb1fd88369d209b5db95 SHA1 7d64a2e690b243b96b007e5f68306c330a59cb5e SHA256 6592483860cffe4798947a6e17c1c4cb44bbfcef6581f0695b282b834ce151ce
+AUX 3.4.0/fedora/NFSv4-Minor-cleanups-for-nfs4_handle_exception-and-n.patch 1750 RMD160 c703c061dee9f08d00a4ac60a7012f27bc335312 SHA1 a88ccc820732e5c0821835afd16c27868d5d30a3 SHA256 95c401df697af20a53c9b5e777705cbc643ed264d8db1d3e177de7874b44cdc2
+AUX 3.4.0/fedora/NFSv4-Rate-limit-the-state-manager-for-lock-reclaim-.patch 1122 RMD160 a590be9a3af6f2e622e4456102c1240099b8805a SHA1 f31acd42ad40bd512b141ded2cd8999ae7ef2b49 SHA256 40dda5ab91a60f0e6a1edfb6ff8b6de4d5f4a244a2ceac6f9780bc9785fd75bb
+AUX 3.4.0/fedora/NFSv4-Reduce-the-footprint-of-the-idmapper.patch 1379 RMD160 f5769c287bb37960c9d53e67f74629b4da466f88 SHA1 2cbee9d11d4ace91712a0f666a3a9cc5ee172798 SHA256 f689abec0dfc8fd14056c3160df9af6f2a2c5fad32bfc111ac0e38e944a8df6b
+AUX 3.4.0/fedora/NFSv4-fix-open-O_TRUNC-and-ftruncate-error-handling.patch 1970 RMD160 88ad9d50f7b1569ffe457669fd2be1defb049563 SHA1 7dae17462904a3f8104d40c99543e540b7da1f3d SHA256 454641f61eae6f9a5d030964601c77d48ce34c2a6170c65300cbf4365c53bbb3
AUX 3.4.0/fedora/PatchList.txt 4112 RMD160 39d18824521bece6e8dbd5d428137c3439a2ce66 SHA1 29e1ba485e7fc798f3764622d2fdcd2631615e27 SHA256 7f27c026c99155c62e343846818c3039f396171ffc360123b08477994bc02ae8
AUX 3.4.0/fedora/README.txt 3218 RMD160 95f826a60e04d4be9aa87c5fda2f74df503c8894 SHA1 8e1cfd3a077dd1ed01698f67fbcb36cb703ce8e3 SHA256 2227e4a8372d9fcc21f6b5ea1717f9218a3d376cf812586101c050c69c4effdb
-AUX 3.4.0/fedora/TODO 533 RMD160 c837d81431ead72d57383cad9bd6080ab2c88b01 SHA1 d98fdd60c603cf236d2d494e67052b3f1120dc7e SHA256 39f19bc4f46dfc453d7bbdbfb77201251735542423f0ef60beaa1693b6a72a73
+AUX 3.4.0/fedora/TODO 527 RMD160 4e5633be13f001a3fe0b42451831c1f1c4b9fe4f SHA1 81f6eb05ac7d1bd3404ab714f42daabc6aadc733 SHA256 9e11c6fb6bee197ab877e22173323fdec647fc2c1f3ea24f5fe3c6cd760eb0cc
AUX 3.4.0/fedora/acpi-sony-nonvs-blacklist.patch 1112 RMD160 6cf322e5bde73ed0d078054cc3743ae72637482c SHA1 d0b4cbef56b40d8897f04055a43d0e0c37dbeaa2 SHA256 6ffa764ec2d6136eec4dc6b4e3f93a71cb730ee877c445f8aaf1722d8014ec2c
+AUX 3.4.0/fedora/apple-gmux-backlight-support.patch 11288 RMD160 2e49d423a6c08ecd91a9692f1fd8cddeb03c0f74 SHA1 0563cb801983e7136eaf2c07d7dbe149b0cc299a SHA256 0abb271d729003a1c8a5f9ffc6c68bc906643f4a60ce496a68013197c996aec0
+AUX 3.4.0/fedora/arm-beagle-usb-init.patch 4758 RMD160 7885d091ca756133b526e8a8c7d308b5e3c76763 SHA1 b63c5bf5b7cd7037f38361bb69397474a9c7bab5 SHA256 2a6f8bbeef027270bc85609416f6ee7f26270948ddfb4314ec2eabbd59470d61
AUX 3.4.0/fedora/arm-omap-dt-compat.patch 1743 RMD160 2b13070f293fb262b5c777cbfe4c7c68006785cb SHA1 a4b7d3d0c41b9cb648dae50a150ad9ca0393f1ea SHA256 a1254b5a79f9f704bb6141aee8dad3154e83cd6dc1e7b25268892acfc4d4dab6
AUX 3.4.0/fedora/arm-smsc-support-reading-mac-address-from-device-tree.patch 2992 RMD160 abcd238e8e9243928109ed3a2729c39262687523 SHA1 c177e7dea01841aad39013463ff94ebe6e3594cc SHA256 155afbe93f49fc2b891b8c83ab4c54b14bc8a85e8daa039558abbb1050dfba08
AUX 3.4.0/fedora/arm-tegra-nvec-kconfig.patch 460 RMD160 e8de87e8aa72585149de8e5b179cd73a2d40b234 SHA1 5aba2c1693b61aa713f44c616f22b8d9aae48188 SHA256 6a7cd51ca2ac75dc45e9eb81a325c0a3eb844ecef067bd39cabb3ed20070ae92
-AUX 3.4.0/fedora/arm-tegra-sdhci-module-fix.patch 468 RMD160 b4b9302f4c378acd0c21170f710d6db94e606617 SHA1 e3abe6c683af4af31407fbf7dbe8c7c0f44b16ec SHA256 93c702c63da8f4b18ed3cc8fe09f7c8829d15a726db4faf6ef1127c5947a7ddf
AUX 3.4.0/fedora/arm-tegra-usb-no-reset-linux33.patch 708 RMD160 b3cb561e07ee276428bd76cf9c8bc0945f361a39 SHA1 82b4600acba52a746458991c8552cc0959572944 SHA256 1756aedfde568576088fc9866b78de7de898e84046206ee428b0fafb97903cbb
+AUX 3.4.0/fedora/atl1c_net_next_update-3.4.patch 126743 RMD160 cd38562536d1c0adae61a5d299fc41f6e8a2e59e SHA1 bb7a4d8dbd2e8130428b5da905468184365fcde0 SHA256 c28d69d8bc646cab86fdb8e27ebd8af57d308eaeac78fce0a8379e92a946abec
AUX 3.4.0/fedora/die-floppy-die.patch 808 RMD160 0ab37fba13148f9481febbcfcb2d14a4b72ab904 SHA1 3edf226aadbb6cbeb707cf1db20347c14ab4a56d SHA256 8c4db095ecf5f0a5f66790fd2afdeac1fa8eb999dfc442fb8f3aec4be02cd623
AUX 3.4.0/fedora/disable-i8042-check-on-apple-mac.patch 1509 RMD160 fce82863f6ebb41d4e1f812330e630fb0ad38515 SHA1 064fce1ee23bc4bab5db948ea23a9776bb61c8d8 SHA256 06967b05cdbad10c7fb87106bed1987863b5525a805331cb4f6fa16c75e8203f
AUX 3.4.0/fedora/dmar-disable-when-ricoh-multifunction.patch 1414 RMD160 80a1a7e6a60cf0fa14c4c98b050531c1bd7211ed SHA1 e81641f3bd31f112766d65edca01532b73061b37 SHA256 8501bb5a3a2e170e9e39345ab5f7242790c17e86fb75d375d83fb2c00b7d041e
-AUX 3.4.0/fedora/drm-cirrus-qemu-fix-crash.patch 2794 RMD160 201cfef168dd7b5f4daa47bb6cdd86ec02df01d8 SHA1 5ac17cbc15585a28bfed7c6718bfabc303a31d99 SHA256 e7618383eebfce39a366a236b966f281c967f2c62d2bf5571cc449a68cf8e3e7
AUX 3.4.0/fedora/drm-edid-try-harder-to-fix-up-broken-headers.patch 1413 RMD160 c2f76f07682bba9beaabb0c76f5e11a0803632ec SHA1 19e57396ee12c13d53b3272cda0c91d05f481a90 SHA256 efbfc7ba043b55c1afb8032beda1e9a6fece0c7f3e45faf226b2061cda8059b2
-AUX 3.4.0/fedora/drm-i915-dp-stfu.patch 1971 RMD160 0e624d0e7e1d6d6421aeabd7f24cd88cf0d53a94 SHA1 8011c96a8e832c4d8759f2a9c899b6cdea87dd30 SHA256 60284ee35418bb1968842405113a340280ccbd3734a914db65941947defb7fdb
+AUX 3.4.0/fedora/drm-i915-dp-stfu.patch 2514 RMD160 fe22e06e4bedc57fbd8f524632384b4ca52b2c01 SHA1 850e45f349cc16ea38e75ed9d98f493d063f2bae SHA256 de8dd445e4ef2871c6b5e98fbb0da6a7d3cf40cf5d5a8f4a2b9684d587e4d2a0
+AUX 3.4.0/fedora/drm-i915-lvds-dual-channel.patch 6020 RMD160 cb7698b1ea447e32a34421c759afc5502b71a4da SHA1 7c7284807fe607c45044b942defe0542a6d1475b SHA256 57946e76f8b0b5d9437b872b2b16d0d59363ce8f81c0a73fc2c6983fc18cfea9
AUX 3.4.0/fedora/drm-vgem.patch 12784 RMD160 1859a0e97c8b009c46586d3c1181e166ad8a06b2 SHA1 282825b7da6c375230d13d3d332a427103a8f315 SHA256 013f390602e489c005910e1e8558a6a54ea4afecdbec7c5a0d92d70a4e90ecea
AUX 3.4.0/fedora/efi-dont-map-boot-services-on-32bit.patch 727 RMD160 6f427dc214c9c2e977b0949fcbfe40cb437e530d SHA1 1c4537bd3e549125ed83e80dd97951c64f038e47 SHA256 e00b3dde22c79ac346e70350fda812e3ea763e88ee1ba181dbb970c5fda40ae4
+AUX 3.4.0/fedora/efifb-skip-DMI-checks-if-bootloader-knows.patch 1767 RMD160 f766e25d22aa03fe969c49e5d87f7918beb92b7f SHA1 67780d0d3e0b7dfee0ebe3443e32213aa47b304f SHA256 0a99b7ed88cc3f944d260cc2bfef783c14d1eba54629b499d9b693726abff42f
AUX 3.4.0/fedora/fix_xen_guest_on_old_EC2.patch 1293 RMD160 43de21ec7d291d2c095a49710d94185b1b044754 SHA1 d40a0cc21a834da2055cde21ae6889b764e9aa8d SHA256 02f51f9b636b105c81a3ed62145abdc0ecb043b8114eb10257854577f617f894
AUX 3.4.0/fedora/fs-proc-devtree-remove_proc_entry.patch 389 RMD160 8d0f5c3a1ae31ad1c612f6052fc1e21b99bbc6af SHA1 0637cbb3050735ac04ce0e22458d8cb5fc58114c SHA256 4076129f2043a641ae9d640c7611fbac70ba1da045c8e5119a01f7698ebc7aa9
+AUX 3.4.0/fedora/hfsplus-Add-an-ioctl-to-bless-files.patch 3342 RMD160 e4b72c8fb8639f2e760d9c1278601ef986359053 SHA1 3756e672c57aa59b680f0748a1416c3cc21dd2de SHA256 8d415b7bd0019ae1850651b9bfff2540234551ca280d50f819217dba138ae625
AUX 3.4.0/fedora/hfsplus-Fix-bless-ioctl-when-used-with-hardlinks.patch 4564 RMD160 52b530c9950c112e1111944e15d9a9b9eb059783 SHA1 1220c43f0a321fe01ddf3edcfdef8fdc65bb42fd SHA256 693fdbe475cf4b50f2121739822c09eb72e6358364178c793403a25d4d8d03f6
+AUX 3.4.0/fedora/hfsplus-initialise-userflags.patch 1341 RMD160 916bcaa43be421fdbd37b945ccde9e2395e9e57f SHA1 e730e47bccd5c53cc31802bcc9376593e2ceb912 SHA256 e8d6c499f3f77004d94bef6688d9c6249d7964bdbf078f5c10ae84639694f0c8
AUX 3.4.0/fedora/hibernate-freeze-filesystems.patch 7073 RMD160 b1ce5d7a30d75b32927b1e62dcc9c8cce1339a11 SHA1 21daa7f40398c0f5cedf17c13478c20b17fd92f9 SHA256 cac47429ffc01aa1052de5ef35c6f97e957f26aa8088033ce1d5f34916aa689a
AUX 3.4.0/fedora/highbank-export-clock-functions.patch 1179 RMD160 67892715e0aa471e406ef7123b0a88b95f9c7ba1 SHA1 9be23f529ee321faf1e9ad7f8e045073fcc91a42 SHA256 bb72f4ca5a1e4b42658e966cfc817d53887850c3da083a02c4bcf3c35a7d9d68
-AUX 3.4.0/fedora/linux-2.6-32bit-mmap-exec-randomization.patch 8526 RMD160 7b71bc370f8e79b573e61ab74da9ce09dca37f06 SHA1 67f676ca0cdc4e4527ff190f924dbf7d7ec867d8 SHA256 4aa2925acd5b30901395538aac36a16ac8853d1709c9104dff839e573fbc5ffe
+AUX 3.4.0/fedora/hugetlb-fix-resv_map-leak-in-error-path.patch 5579 RMD160 f14dff08cc5f7b3b125c28ba67c6c0557e95d595 SHA1 c9d19ea023ec16358bbcf001d7087e973ef15231 SHA256 8a42bf745102128901be1adc6991b2f805f44ee033626029de97f316a763bd04
+AUX 3.4.0/fedora/ips-noirq.patch 409 RMD160 f98ad8a60a537135431940935dc3bb5ac9d97b5c SHA1 b5afe83574ec37bd073df379c6d1c360a7ed27fd SHA256 d0523698dc76709cdc5ee938e3511b1bbb7cde811d52cc895b3ebcc82c2908eb
+AUX 3.4.0/fedora/ipw2x00-add-supported-cipher-suites-to-wiphy-initialization.patch 6647 RMD160 c9bb02db8735e507c1a2615392a17fffee73342e SHA1 664aafa80baf85d599b30f9a592b60d066f6079b SHA256 b70cb9cee33b2aed701552e782371fdc282c5229ba1b9e4792974d29b1d98c9e
+AUX 3.4.0/fedora/linux-2.6-32bit-mmap-exec-randomization.patch 8788 RMD160 021cd7d81cf70ae7d2ad3ded61650fe8641a1a94 SHA1 a21e748073e26dbdd2daba23cae0900ce882d402 SHA256 2fffee80250d4921467667c5f9baaa131948d7c21aa82f839d34a475bb0573ef
AUX 3.4.0/fedora/linux-2.6-acpi-debug-infinite-loop.patch 1021 RMD160 37486da61d8cd7aba0926ad79f1155ff573d4c50 SHA1 adf0c846dd3f31ac8a3cda3ba3610d865db692dc SHA256 2e2489726257be6b219a2fa0a423a4e0ebb03a72a4875523bc8938156b0bd956
AUX 3.4.0/fedora/linux-2.6-acpi-video-dos.patch 550 RMD160 f19a8f474e548e215de8f4b25cb9faa1603221c2 SHA1 ef76ce4e2a76701395d605702ab27ceb1b7154e6 SHA256 271b4b5d9ead27469b37c5a0793c8aa2945d5098329b506e0743688a3ae6afea
AUX 3.4.0/fedora/linux-2.6-crash-driver.patch 9700 RMD160 ea30d158b0b92e05290c727e2c746a728c1d2d59 SHA1 aa694f9123c82595cd6590b29aaf8a59e628b36d SHA256 4627fbc433b7e76d4cb94d4edde0fa3318ad6a3c4287c74a422564bb8846ad2d
AUX 3.4.0/fedora/linux-2.6-defaults-acpi-video.patch 406 RMD160 9fd5b50183f9208a257e105879b022496972119b SHA1 b73e1cda24a007cb525d905c2950bdde83f96241 SHA256 f4f5310a7dc5a56eae3bbca76485e3cd8bdf00b56f0df46847e90009213d1781
AUX 3.4.0/fedora/linux-2.6-e1000-ich9-montevina.patch 1959 RMD160 1d12d65193975fa4e37f592eca9d6614e5c6ce59 SHA1 57b5d41995846604d7b2fdcaa243a3a79e9ab441 SHA256 8a4bbfecc0eda3d38cb8bf1f40ebf4f07544b1e5c887e68b93f552bd08c26710
-AUX 3.4.0/fedora/linux-2.6-i386-nx-emulation.patch 18683 RMD160 973aa6cb2b96f842ae8f3b9b1c389fca994d6ce8 SHA1 85458fac8dbeb17c48f2edde0314590f239892f1 SHA256 3d142b09a9dacf70611f3070056b85d52746eccd28048a25c66dc5b8032545a7
-AUX 3.4.0/fedora/linux-2.6-input-kill-stupid-messages.patch 740 RMD160 86e96ddc51aebb76ce3b42f7eb124276204243ae SHA1 92c6e89b1b70a12e8490ab1de932bfb6d572bc01 SHA256 a3687429e49cd5424cf3973f92fc5e73571da89bb969889df48d31a8c6709bbe
-AUX 3.4.0/fedora/linux-2.6-makefile-after_link.patch 3662 RMD160 542f2a62ee92a0f903607b62c3407eff90c8430f SHA1 41aebda2082636f0d7da6b125cd80aa03dc197fa SHA256 3dab57f8709ddf3b6904801d88d6e8342b53f615d97d593fbd4e28a5b366f976
+AUX 3.4.0/fedora/linux-2.6-i386-nx-emulation.patch 18739 RMD160 4838234e3fa5232d0e1525b04adf4c7a385231b2 SHA1 2eb19e95cf0b5321a55a81c731d89ffc95888166 SHA256 c0f98caaccdd72dc20f00d3df3711be8c0a0911701997b1efe96867edfca0d3a
+AUX 3.4.0/fedora/linux-2.6-input-kill-stupid-messages.patch 1050 RMD160 d524b1bb7238bbbbc6cece544ee6009e5b903c69 SHA1 da89dff4fb4a097bc5d22b91505319a5bcf63584 SHA256 3f90d6bf6dcb06b8fb0271738d4ef675088a6c491006d8ec9f68f0cb69eb4886
+AUX 3.4.0/fedora/linux-2.6-intel-iommu-igfx.patch 2863 RMD160 3a05375c7a7d44ec70f1c42bea20d4275293eca3 SHA1 379b07f1d3739e64c9bb3c8611ce92b22a92c038 SHA256 f57bc0da8567d509fac1af6664797d85544eb40d000fc46f3df2772011c1e8f7
+AUX 3.4.0/fedora/linux-2.6-makefile-after_link.patch 3801 RMD160 81376349f941273806589e7ef10fddcecb630bb6 SHA1 05790e62ddad83b3034574d7ad75481a33788296 SHA256 ffa8a0a58770c89e1734602cc5bd06ccda353cbce9ac1a6f3e90c410ece97e9f
AUX 3.4.0/fedora/linux-2.6-serial-460800.patch 2357 RMD160 e08f4c585dcc1a8ca6bce2564e75509a5df0e07c SHA1 57f89c659ea6a7cdfc86058104ad32c3110ef66d SHA256 2bc422efa8b31ca166f3a9d6be87de2fd961ea6d7eb45fa460388c3276d69856
AUX 3.4.0/fedora/linux-2.6-silence-acpi-blacklist.patch 1086 RMD160 041a5608aa5f0ee73c34845794119bcb770e3e0f SHA1 0fd5dc8647ba28ec7ae8a83fd47e0d98b053131b SHA256 150aba635860a6c55ec7b84aa777110f8d57fde64c26fbbf72d3c4de9f49baec
AUX 3.4.0/fedora/linux-2.6-silence-fbcon-logo.patch 1162 RMD160 5341aeea97199835bb5b7e2fdcb16c91cd0e731e SHA1 3bdf03e1b7ab8aa43c4ecdace6e4eb016dd0feb9 SHA256 351be76fe7d397ca3796bb3c6874507db25a3b41430997e9d0445210e228dbb8
AUX 3.4.0/fedora/linux-2.6-silence-noise.patch 2538 RMD160 36fbeb100745a1aa4dbaafabfb4f5f4ac47b9c8b SHA1 d3ae8f88b7b1f6161875daa41b0b66f94551c0b7 SHA256 55fb6fcb14f05840cbcafb75a2e03d5a2bf6576a4b7b6b36a262755f1780a39e
AUX 3.4.0/fedora/linux-2.6.30-no-pcspkr-modalias.patch 447 RMD160 777cc86767b78c4f6a6c2fc2d0497147ee9f11cb SHA1 8ccf2b7b942f60e685198ca1ce2c2a1912e735e1 SHA256 3a2879b35835988460ee9b81531fa05ca19cae913ab4e68320770e3ec18d5f56
+AUX 3.4.0/fedora/linux-3.3-newidmapper-01.patch 7552 RMD160 a9eab4f67f63135cdcac8686a2d250528bb05bda SHA1 25eda7cb47c4dda516f17f62dc3512cc18249de0 SHA256 79a284b38ff1a210ba30132e4afa3163c63e79792ee426d25b3f81939fc11af5
+AUX 3.4.0/fedora/linux-3.3-newidmapper-02.patch 2709 RMD160 50288887e2f0e70862c5fa0581017b1ce275faf1 SHA1 34509eb7e0b10de055f101b2cfabc6874ad33ec7 SHA256 ec91d03f4a9c3798ab80da992b67b9c88e1605d0ca2d055d93647ced38c9bf26
+AUX 3.4.0/fedora/linux-3.3-newidmapper-03.patch 2023 RMD160 0242fce48185acb4e56de8008a0d182e69dd4e6b SHA1 3893f8aaa7088533922b0634a6a37753141da3b1 SHA256 847607cba70e4b9c2f70a6bbf4a32d776cb2d14e7de65df5ce583d722e2e387f
AUX 3.4.0/fedora/lis3-improve-handling-of-null-rate.patch 2803 RMD160 003241ef5de054feefbf825dfb6775340d952820 SHA1 b8cb3d41dbb50514a77024cefa20974866ea4e13 SHA256 5ee641ea185a163f45309d0856950ecb5bd377da6b5d4dd5fb79edbe8e781f0f
-AUX 3.4.0/fedora/modsign-20120510.patch 237978 RMD160 a5f40de39d352c58b456bdc64243a375a791a25e SHA1 7ad25fce9fe3475646f0216a1fc18a721e52dbb0 SHA256 fffc40d3ea8096ea8932567f0507441391306d1e64bf0362338e6344083e283e
-AUX 3.4.0/fedora/modsign-fix-elf-rel.patch 923 RMD160 de83e253677d39bd62ea853aa25c182c633447cb SHA1 c627ea8ff8c4cc74839fdbf68fa35dff6c2b3336 SHA256 40194343a78dc42218dcb8c84cfd205954555256753e58aae6c9417dead93ed5
+AUX 3.4.0/fedora/macvtap-zerocopy-validate-vector-length.patch 1010 RMD160 22aa3bd38b24213689535d54890fedb9123d261e SHA1 2de8580385b29d748fc53a930bc765945ae2e885 SHA256 11d188b5aae49f4bef21c564024a3bb48c01de59ae964445546623765de9ecf9
+AUX 3.4.0/fedora/mm-pmd_read_atomic-fix-32bit-PAE-pmd-walk-vs-pmd_populate-SMP-race-condition.patch 11730 RMD160 16f9b3ddc197f712e1a7d7eca0f7746c016707f9 SHA1 d40c343c41be5dcbb6ab0e4f48e14797ccb9223a SHA256 7b30cd6bd01e74c16597c96f8125635b99e41976514405de564d4eae9dc262b2
AUX 3.4.0/fedora/nx-emu-remove-cpuinitdata-for-disable_nx-on-x86_32.patch 1490 RMD160 6ca0dbe1387b72244bff2f3315b7132bc5e01fd7 SHA1 613a6a9910175d10c2ed995ba1cadc65ac172ba4 SHA256 b6f7d9d9b4ff005b4fd57df842262ce1fa1f455624d9d21089c8da7a785a921e
-AUX 3.4.0/fedora/patch_list 2541 RMD160 d0a6a479edf6c28876a7bb0e360fc473c77c3f75 SHA1 29704a6357487ca147b114ca7cadcb480b8cb375 SHA256 ca99ac514ff21ff3d9701da48280722eec766b99d29f4d3cf294c843af110266
+AUX 3.4.0/fedora/patch_list 3209 RMD160 9e86b82b96b23dd12e80daf75c144d9fa3027e85 SHA1 669e01313035f4fbf0fd578205ccbab53d044c6b SHA256 11ce355ddb3f62fb978e583ce97c11f0a61ede41ad195be8f295d250750abe4f
+AUX 3.4.0/fedora/pci-fix-ats-compile.patch 773 RMD160 7cde49517032a42a869bddf29643de12b80d1120 SHA1 b47c8d993e533ec0785421a6a9501516784ebd96 SHA256 745baef9d63e2aab1db0b4560bece89ea0e8b13fa6a5b645c13e60e0f9629a28
AUX 3.4.0/fedora/power-x86-destdir.patch 1082 RMD160 a035b657753ed3657c27c5cce6e122f3c0b73e92 SHA1 060e648c0c760babce7466660b0a3b135d11642f SHA256 66863db866ad9d201d2ebc7efd5976060a1008e42d465de70a6b9014a6e3aa5f
AUX 3.4.0/fedora/quite-apm.patch 524 RMD160 547dc1d82102e29c1074d9a5dc26c67ca63c8170 SHA1 35dc9981544d00e88bcc2056ce127a046a60e6a0 SHA256 85ae2df6f83bce81fe376a5780c8f5b957b289a7e9d20a30ba8d0cf9ab12fad2
-AUX 3.4.0/fedora/rebase-notes.txt 268 RMD160 aee152cdef0fee74f2fe467cc617b8665f511171 SHA1 3074967cab724703642e7569b06b8a4b989ff9c1 SHA256 0f429eceb24814d86eedadaf4e1cf9af82ff7daf9394912701c5e48abe59012d
+AUX 3.4.0/fedora/rtl818x-fix-sleeping-function-called-from-invalid-context.patch 2005 RMD160 77ecfc9a217a3ecda877a221551cd00441ff7544 SHA1 46629443be5b6aa460408e333d1abd5c984ff59d SHA256 7761b9088ef9aaa54e903a2b93b679c0e6d34cd6d8b11e027c6c3035224bd57d
AUX 3.4.0/fedora/scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch 641 RMD160 c00fd12cf380443e7b269042783c5856059e61b6 SHA1 b38c4bebac5f94c189bba1df73f46ded141fcb8d SHA256 43335c51b8c7f75a724d66cc8febff8a6561cfd6d98a7aad96ac5871f8b523a4
AUX 3.4.0/fedora/selinux-apply-different-permission-to-ptrace-child.patch 5650 RMD160 605ad3ad4c38b705b72755775a82003a43dbf49c SHA1 4b91d0210348a25f193e1f8f49b59cc775182fbb SHA256 7f5692d0eb8410e109f7417aea7999fa9d17ccd4216a4489a195cdab40aeb3a5
AUX 3.4.0/fedora/shlib_base_randomize.patch 2841 RMD160 8ff964b81390ef63600b6a9f850d719de220ada8 SHA1 ec62a9d2b5fe448b97ab2db14033ceda410b607f SHA256 4db3da9f228d8945aacebcabb40a22e39b857a474962765623188e0d49db8295
+AUX 3.4.0/fedora/silence-timekeeping-spew.patch 648 RMD160 1c93b753f36b67ec77feaf09eb54d308bd6ff220 SHA1 171dededf66d15278696c21f79e8ac5695daf5b1 SHA256 32e3790f2de973e9f1a8608cb6b157a71228c539f1ea5e83e9f6739b32957b69
AUX 3.4.0/fedora/taint-vbox.patch 556 RMD160 99ed5dac8e8bdb22f733727bf0ff060be3da305b SHA1 82d31400ea1eaad2aff5cda3ff9ebbb43a9bac50 SHA256 c5b7b02be94e2a868567ecd6715c19e4b46a037dd9b6893e93cdf69825b88b9e
+AUX 3.4.0/fedora/uefi-multi-gpu.patch 7931 RMD160 d9365cf9e7149663a2cef303fbe457dc8c5d4b75 SHA1 7308d79ede19bd3028867d5cece5993c0f8e168e SHA256 30a1311ee1e01bbc558f92cde1cffd6230fa74f81b55ad52ddf75d420d7c7de0
AUX 3.4.0/fedora/unhandled-irqs-switch-to-polling.patch 9252 RMD160 b186a1b3729ecc50a393d7c42a8c7bd4dd3e7add SHA1 97c181cdff9c390bbbe94605c7eed0a78cdd9dbb SHA256 4c499765cde7a5b59e78fdbe1527f035c47dd79fa8b149bff743ac0f3c973a08
+AUX 3.4.0/fedora/utrace.patch 166570 RMD160 cc9d3f66f548597199ab659b9cc0aae53595d697 SHA1 637ee64f9f100cb2672af05ecfff528b14c2ba1b SHA256 b5dc3a783babd3bcf79dcc658b4fcd90d0cf1d6fec4b3f9925949f2ce5a3a078
+AUX 3.4.0/fedora/vgaarb-vga_default_device.patch 26946 RMD160 81c17c0815ada2a00b11eea5b1e85aff4ce97e1a SHA1 5f6e4dc3de2c9f6bf714b69a6835e6f76f951a9f SHA256 d208905f47fb818f2ac55178557c110978748019019a21afe3f01037f2d72361
AUX 3.4.0/fedora/weird-root-dentry-name-debug.patch 634 RMD160 0356b7a707411e1df3618a83c237b499ed905316 SHA1 996d6f40e4af008010400961a7099aad58a86183 SHA256 89e2dad3e745c82e723301ed7d40c7a056e934ab402a13f582e84e127d6bb39c
+AUX 3.4.0/fedora/x86-Avoid-invoking-RCU-when-CPU-is-idle.patch 3109 RMD160 a72546dba4270a7e50c0761f687a5a71fcd4ff07 SHA1 0011d72ae7c64afb3824dc04a1aa466c9d3d807f SHA256 02811ba6f1b822ddb01335b7238fa91010da807a4bf925f6be21914c5253f85a
AUX 3.4.0/mageia/3rd-3rdparty-1.0-tree.patch 5422 RMD160 bef2c0c55389a7b9f802f6e01121c465a444b558 SHA1 af653217e995756ec5d02773a74be870f55b4062 SHA256 abb13c313aae8ce980bade2eb4a2e437d506834a18f4af0af2dd7c96db19822c
AUX 3.4.0/mageia/3rd-3rdparty-merge.patch 5637 RMD160 7fecc5cb2fa53887a0bd98c7ed3e2f34d738d795 SHA1 fbc2414b40e2fe7f1e6c53261171dfe8e17627a0 SHA256 14ecd1789290e87f46ff1d3bbd7c859c8e838331438816f78190709f8c1f7aef
AUX 3.4.0/mageia/3rd-acerhk-0.5.35.patch 144379 RMD160 82b1471899d669c24310bb3904fd493b8ffc57bb SHA1 53ceee2da21f11f4fb3f10570c96e3c5acf2d51f SHA256 5905ba61642cd67b42adcb506cecaa34e842831634376d0e123566fb5d743a99
@@ -1195,6 +1221,7 @@ AUX gentoo-larry-logo-v2.patch 18714 RMD160 7ffcd7116c8362985bba1bc662d3aaa05af0
AUX larry.png 2601 RMD160 bbb48d5a5a2bab2b21e914d14a77c57c0a2456e5 SHA1 eaf5da25401a670b19400c7e117023183503795c SHA256 686bfefe405367299cdf4e7e5b9b654745e1f060f536f10f7bb6999131a78ae8
AUX logo_linux_clut224.ppm 15927 RMD160 67270646834b48cde0d0171358462525e0d3bdd7 SHA1 3aeaeb1604623157dcae00ebb9dd84fb51f6ea6b SHA256 2d19e67644171e3005b06d5cb9d28cebb1675cbeccd2ce433aa3f1f2a26940d4
AUX tuxonice-kernel-3.3.6.patch.xz 140204 RMD160 688066f5ebbabec51cf76296798de74a2ed33446 SHA1 aa170763ebbb11beb096634d046568d21088248d SHA256 47ba215aaa5113ed54dfe0fbd519ff6f2d090a819624c86781652be2660c2ef6
+AUX tuxonice-kernel-3.3.7.patch.xz 140204 RMD160 688066f5ebbabec51cf76296798de74a2ed33446 SHA1 aa170763ebbb11beb096634d046568d21088248d SHA256 47ba215aaa5113ed54dfe0fbd519ff6f2d090a819624c86781652be2660c2ef6
AUX tuxonice-kernel-3.4.0.patch.xz 139936 RMD160 7064b34e80357a75f6f2b9f314327412170fe391 SHA1 e8428ad5617745ae23126a80af4633a9955fdfd1 SHA256 fd8f373d2c5eda72df0e771d599ee134dc3e5f7a086be44dcc2dfbbbaa4fcd35
DIST 4200_fbcondecor-0.9.6.patch 71285 RMD160 ea921fa0ac37071dda57e9e72e884dd6a6295f98 SHA1 8f39f93306237824c1565367e370a067dfd32a65 SHA256 e8735d4a287ee352e0e292edd964c1c014aff6d7f82804abf1d4460640a338e1
DIST bld-3.4-rc4.tar.bz2 7563 RMD160 3e59a00d4258a6c5951f71b62812a572d525cfbe SHA1 a7aca78e61ecb9e89f2eac6b5d859a0a44b4bdcd SHA256 f1bbb80ba113e64c646174dbe12641396186b81f436189e004ebb33d3d21953b
@@ -1212,5 +1239,5 @@ DIST patch-3.4-rt7.patch.xz 119840 RMD160 fa8b936192128fe191e3e3414a0ff02c70f1df
DIST patch-imqmq-3.3.diff.xz 12288 RMD160 4fdd242be5bdccf838533ffe1167b642e767e476 SHA1 3999779be3f74e6ebfa5e81ede419f1399534bc8 SHA256 0b44c59c12120140357ba111c23e0c3934d571fe7d25a2c729d4bd489d0984b6
EBUILD geek-sources-3.3.6.ebuild 9888 RMD160 6e79cc47e1c1a8f32ee25c7bd609a98351bbdd41 SHA1 5d4011dc00d7640131388df6913908ff5ed6c13e SHA256 b545d05a3dc85d816f101d5c460971cc200c6f195f65fed83f42f656c35a5e43
EBUILD geek-sources-3.3.7.ebuild 10028 RMD160 8b62e53920d568b995350d93f3a5136bfd28d5e4 SHA1 1b03743075c5a9be982b5332b5e7feb86ce746cb SHA256 2ffed3b9a6690b3bc526e78af868248f45b69c91e0e27e56caf15b6ce3302694
-EBUILD geek-sources-3.4.0.ebuild 10366 RMD160 1587fc2927d3e63406b5be89ba5e3ad0b66db018 SHA1 66f08c92c99bc4a7727405341c804465f9ebbf68 SHA256 1c9817a10c23e8370dac50dae94904ad45dfdcaffa753f228350805b83e3e0e0
+EBUILD geek-sources-3.4.0.ebuild 10366 RMD160 a6030b854f1303c6381f12c81de52256db5f14e4 SHA1 d676a16c6154ab0b4c6b5b66a83587f162648434 SHA256 3559f80069d9f3f7c8391b939ea930f6020867cd825021528289a6b9bd007962
MISC metadata.xml 1419 RMD160 50c7a47c1ba5382c08f4414777c14a44b530456e SHA1 a1b61c6f90e79a1e4068e2df6f8fbdb33b7e8fbb SHA256 930745776002d4bd0f3878c806641c119f9ba61e27f796f8333699bdcd467162
View
38 ...ources/files/3.4.0/fedora/0001-drm-radeon-don-t-mess-with-hot-plug-detect-for-eDP-o.patch
@@ -0,0 +1,38 @@
+From 0971d87045f5052de9f16f3b1aa0dce59f59a060 Mon Sep 17 00:00:00 2001
+From: Jerome Glisse <jglisse@redhat.com>
+Date: Thu, 3 May 2012 19:05:40 -0400
+Subject: [PATCH] drm/radeon: don't mess with hot plug detect for eDP or LVDS
+ connector
+
+It seems imac pannel doesn't like whe we change the hot plug setup
+and then refuse to work. This should fix :
+https://bugzilla.redhat.com/show_bug.cgi?id=726143
+
+Signed-off-by: Matthew Garrett <mjg@redhat.com>
+Signed-off-by: Jerome Glisse <jglisse@redhat.com>
+---
+ drivers/gpu/drm/radeon/r600.c | 8 ++++++++
+ 1 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
+index 4fbc590..5fd0490 100644
+--- a/drivers/gpu/drm/radeon/r600.c
++++ b/drivers/gpu/drm/radeon/r600.c
+@@ -713,6 +713,14 @@ void r600_hpd_init(struct radeon_device *rdev)
+ list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
+ struct radeon_connector *radeon_connector = to_radeon_connector(connector);
+
++ if (connector->connector_type == DRM_MODE_CONNECTOR_eDP ||
++ connector->connector_type == DRM_MODE_CONNECTOR_LVDS) {
++ /* don't try to enable HDP on eDP or LVDS help to avoid
++ * issue such as:
++ * https://bugzilla.redhat.com/show_bug.cgi?id=726143
++ */
++ continue;
++ }
+ if (ASIC_IS_DCE3(rdev)) {
+ u32 tmp = DC_HPDx_CONNECTION_TIMER(0x9c4) | DC_HPDx_RX_INT_TIMER(0xfa);
+ if (ASIC_IS_DCE32(rdev))
+--
+1.7.7.6
+
View
BIN sys-kernel/geek-sources/files/3.4.0/fedora/3.4.1-stable-queue.patch.xz
Binary file not shown.
View
153 ...-sources/files/3.4.0/fedora/NFS-optimise-away-unnecessary-setattrs-for-open-O_TRUNC.patch
@@ -0,0 +1,153 @@
+From: Trond Myklebust <Trond.Myklebust@netapp.com>
+
+Currently, we will correctly optimise away a truncate that doesn't
+change the file size. However, in the case of open(O_TRUNC), we
+also want to optimise away the time changes.
+
+Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
+---
+ fs/nfs/dir.c | 25 +++++++++++++++++++------
+ fs/nfs/inode.c | 4 ++--
+ fs/nfs/nfs4proc.c | 10 +++++++---
+ 3 files changed, 28 insertions(+), 11 deletions(-)
+
+diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
+index fd9a872..bb132a8 100644
+--- a/fs/nfs/dir.c
++++ b/fs/nfs/dir.c
+@@ -1429,6 +1429,7 @@ static struct dentry *nfs_atomic_lookup(struct inode *dir, struct dentry *dentry
+ }
+
+ open_flags = nd->intent.open.flags;
++ attr.ia_valid = 0;
+
+ ctx = create_nfs_open_context(dentry, open_flags);
+ res = ERR_CAST(ctx);
+@@ -1437,11 +1438,14 @@ static struct dentry *nfs_atomic_lookup(struct inode *dir, struct dentry *dentry
+
+ if (nd->flags & LOOKUP_CREATE) {
+ attr.ia_mode = nd->intent.open.create_mode;
+- attr.ia_valid = ATTR_MODE;
++ attr.ia_valid |= ATTR_MODE;
+ attr.ia_mode &= ~current_umask();
+- } else {
++ } else
+ open_flags &= ~(O_EXCL | O_CREAT);
+- attr.ia_valid = 0;
++
++ if (open_flags & O_TRUNC) {
++ attr.ia_valid |= ATTR_SIZE;
++ attr.ia_size = 0;
+ }
+
+ /* Open the file on the server */
+@@ -1495,6 +1499,7 @@ static int nfs_open_revalidate(struct dentry *dentry, struct nameidata *nd)
+ struct inode *inode;
+ struct inode *dir;
+ struct nfs_open_context *ctx;
++ struct iattr attr;
+ int openflags, ret = 0;
+
+ if (nd->flags & LOOKUP_RCU)
+@@ -1523,19 +1528,27 @@ static int nfs_open_revalidate(struct dentry *dentry, struct nameidata *nd)
+ /* We cannot do exclusive creation on a positive dentry */
+ if ((openflags & (O_CREAT|O_EXCL)) == (O_CREAT|O_EXCL))
+ goto no_open_dput;
+- /* We can't create new files, or truncate existing ones here */
+- openflags &= ~(O_CREAT|O_EXCL|O_TRUNC);
++ /* We can't create new files here */
++ openflags &= ~(O_CREAT|O_EXCL);
+
+ ctx = create_nfs_open_context(dentry, openflags);
+ ret = PTR_ERR(ctx);
+ if (IS_ERR(ctx))
+ goto out;
++
++ attr.ia_valid = 0;
++ if (openflags & O_TRUNC) {
++ attr.ia_valid |= ATTR_SIZE;
++ attr.ia_size = 0;
++ nfs_wb_all(inode);
++ }
++
+ /*
+ * Note: we're not holding inode->i_mutex and so may be racing with
+ * operations that change the directory. We therefore save the
+ * change attribute *before* we do the RPC call.
+ */
+- inode = NFS_PROTO(dir)->open_context(dir, ctx, openflags, NULL);
++ inode = NFS_PROTO(dir)->open_context(dir, ctx, openflags, &attr);
+ if (IS_ERR(inode)) {
+ ret = PTR_ERR(inode);
+ switch (ret) {
+diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
+index f649fba..57d0abb 100644
+--- a/fs/nfs/inode.c
++++ b/fs/nfs/inode.c
+@@ -401,7 +401,7 @@ out_no_inode:
+ goto out;
+ }
+
+-#define NFS_VALID_ATTRS (ATTR_MODE|ATTR_UID|ATTR_GID|ATTR_SIZE|ATTR_ATIME|ATTR_ATIME_SET|ATTR_MTIME|ATTR_MTIME_SET|ATTR_FILE)
++#define NFS_VALID_ATTRS (ATTR_MODE|ATTR_UID|ATTR_GID|ATTR_SIZE|ATTR_ATIME|ATTR_ATIME_SET|ATTR_MTIME|ATTR_MTIME_SET|ATTR_FILE|ATTR_OPEN)
+
+ int
+ nfs_setattr(struct dentry *dentry, struct iattr *attr)
+@@ -423,7 +423,7 @@ nfs_setattr(struct dentry *dentry, struct iattr *attr)
+
+ /* Optimization: if the end result is no change, don't RPC */
+ attr->ia_valid &= NFS_VALID_ATTRS;
+- if ((attr->ia_valid & ~ATTR_FILE) == 0)
++ if ((attr->ia_valid & ~(ATTR_FILE|ATTR_OPEN)) == 0)
+ return 0;
+
+ /* Write all dirty data */
+diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
+index 1515e45..c4c6b48 100644
+--- a/fs/nfs/nfs4proc.c
++++ b/fs/nfs/nfs4proc.c
+@@ -833,7 +833,7 @@ static struct nfs4_opendata *nfs4_opendata_alloc(struct dentry *dentry,
+ p->o_arg.bitmask = server->attr_bitmask;
+ p->o_arg.dir_bitmask = server->cache_consistency_bitmask;
+ p->o_arg.claim = NFS4_OPEN_CLAIM_NULL;
+- if (flags & O_CREAT) {
++ if (attrs != NULL && attrs->ia_valid != 0) {
+ u32 *s;
+
+ p->o_arg.u.attrs = &p->attrs;
+@@ -890,7 +890,7 @@ static int can_open_cached(struct nfs4_state *state, fmode_t mode, int open_mode
+ {
+ int ret = 0;
+
+- if (open_mode & O_EXCL)
++ if (open_mode & (O_EXCL|O_TRUNC))
+ goto out;
+ switch (mode & (FMODE_READ|FMODE_WRITE)) {
+ case FMODE_READ:
+@@ -1038,7 +1038,7 @@ static struct nfs4_state *nfs4_try_open_cached(struct nfs4_opendata *opendata)
+ struct nfs4_state *state = opendata->state;
+ struct nfs_inode *nfsi = NFS_I(state->inode);
+ struct nfs_delegation *delegation;
+- int open_mode = opendata->o_arg.open_flags & O_EXCL;
++ int open_mode = opendata->o_arg.open_flags & (O_EXCL|O_TRUNC);
+ fmode_t fmode = opendata->o_arg.fmode;
+ nfs4_stateid stateid;
+ int ret = -EAGAIN;
+@@ -2439,6 +2439,10 @@ nfs4_proc_setattr(struct dentry *dentry, struct nfs_fattr *fattr,
+ }
+ }
+
++ /* Deal with open(O_TRUNC) */
++ if (sattr->ia_valid & ATTR_OPEN)
++ sattr->ia_valid &= ~(ATTR_MTIME|ATTR_CTIME|ATTR_OPEN);
++
+ status = nfs4_do_setattr(inode, cred, fattr, sattr, state);
+ if (status == 0)
+ nfs_setattr_update_inode(inode, sattr);
+--
+1.7.7.6
+
+_______________________________________________
+kernel mailing list
+kernel@lists.fedoraproject.org
+https://admin.fedoraproject.org/mailman/listinfo/kernel
View
109 .../geek-sources/files/3.4.0/fedora/NFSv4-Further-reduce-the-footprint-of-the-idmapper.patch
@@ -0,0 +1,109 @@
+diff -up linux-3.2.noarch/fs/nfs/idmap.c.orig linux-3.2.noarch/fs/nfs/idmap.c
+--- linux-3.2.noarch/fs/nfs/idmap.c.orig 2012-03-14 13:08:37.462928792 -0400
++++ linux-3.2.noarch/fs/nfs/idmap.c 2012-03-14 13:10:17.076030982 -0400
+@@ -365,7 +365,7 @@ struct idmap_hashent {
+
+ struct idmap_hashtable {
+ __u8 h_type;
+- struct idmap_hashent h_entries[IDMAP_HASH_SZ];
++ struct idmap_hashent *h_entries;
+ };
+
+ struct idmap {
+@@ -420,20 +420,39 @@ nfs_idmap_new(struct nfs_client *clp)
+ return 0;
+ }
+
++static void
++idmap_alloc_hashtable(struct idmap_hashtable *h)
++{
++ if (h->h_entries != NULL)
++ return;
++ h->h_entries = kcalloc(IDMAP_HASH_SZ,
++ sizeof(*h->h_entries),
++ GFP_KERNEL);
++}
++
++static void
++idmap_free_hashtable(struct idmap_hashtable *h)
++{
++ int i;
++
++ if (h->h_entries == NULL)
++ return;
++ for (i = 0; i < IDMAP_HASH_SZ; i++)
++ kfree(h->h_entries[i].ih_name);
++ kfree(h->h_entries);
++}
++
+ void
+ nfs_idmap_delete(struct nfs_client *clp)
+ {
+ struct idmap *idmap = clp->cl_idmap;
+- int i;
+
+ if (!idmap)
+ return;
+ rpc_unlink(idmap->idmap_dentry);
+ clp->cl_idmap = NULL;
+- for (i = 0; i < ARRAY_SIZE(idmap->idmap_user_hash.h_entries); i++)
+- kfree(idmap->idmap_user_hash.h_entries[i].ih_name);
+- for (i = 0; i < ARRAY_SIZE(idmap->idmap_group_hash.h_entries); i++)
+- kfree(idmap->idmap_group_hash.h_entries[i].ih_name);
++ idmap_free_hashtable(&idmap->idmap_user_hash);
++ idmap_free_hashtable(&idmap->idmap_group_hash);
+ kfree(idmap);
+ }
+
+@@ -443,6 +462,8 @@ nfs_idmap_delete(struct nfs_client *clp)
+ static inline struct idmap_hashent *
+ idmap_name_hash(struct idmap_hashtable* h, const char *name, size_t len)
+ {
++ if (h->h_entries == NULL)
++ return NULL;
+ return &h->h_entries[fnvhash32(name, len) % IDMAP_HASH_SZ];
+ }
+
+@@ -451,6 +472,8 @@ idmap_lookup_name(struct idmap_hashtable
+ {
+ struct idmap_hashent *he = idmap_name_hash(h, name, len);
+
++ if (he == NULL)
++ return NULL;
+ if (he->ih_namelen != len || memcmp(he->ih_name, name, len) != 0)
+ return NULL;
+ if (time_after(jiffies, he->ih_expires))
+@@ -461,6 +484,8 @@ idmap_lookup_name(struct idmap_hashtable
+ static inline struct idmap_hashent *
+ idmap_id_hash(struct idmap_hashtable* h, __u32 id)
+ {
++ if (h->h_entries == NULL)
++ return NULL;
+ return &h->h_entries[fnvhash32(&id, sizeof(id)) % IDMAP_HASH_SZ];
+ }
+
+@@ -468,6 +493,9 @@ static struct idmap_hashent *
+ idmap_lookup_id(struct idmap_hashtable *h, __u32 id)
+ {
+ struct idmap_hashent *he = idmap_id_hash(h, id);
++
++ if (he == NULL)
++ return NULL;
+ if (he->ih_id != id || he->ih_namelen == 0)
+ return NULL;
+ if (time_after(jiffies, he->ih_expires))
+@@ -483,12 +511,14 @@ idmap_lookup_id(struct idmap_hashtable *
+ static inline struct idmap_hashent *
+ idmap_alloc_name(struct idmap_hashtable *h, char *name, size_t len)
+ {
++ idmap_alloc_hashtable(h);
+ return idmap_name_hash(h, name, len);
+ }
+
+ static inline struct idmap_hashent *
+ idmap_alloc_id(struct idmap_hashtable *h, __u32 id)
+ {
++ idmap_alloc_hashtable(h);
+ return idmap_id_hash(h, id);
+ }
+
View
51 ...eek-sources/files/3.4.0/fedora/NFSv4-Minor-cleanups-for-nfs4_handle_exception-and-n.patch
@@ -0,0 +1,51 @@
+From 14977489ffdb80d4caf5a184ba41b23b02fbacd9 Mon Sep 17 00:00:00 2001
+From: Trond Myklebust <Trond.Myklebust@netapp.com>
+Date: Tue, 27 Mar 2012 18:31:25 -0400
+Subject: [PATCH] NFSv4: Minor cleanups for nfs4_handle_exception and
+ nfs4_async_handle_error
+
+Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
+---
+ fs/nfs/nfs4proc.c | 10 +++++-----
+ 1 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
+index 1933e67..f82bde0 100644
+--- a/fs/nfs/nfs4proc.c
++++ b/fs/nfs/nfs4proc.c
+@@ -270,7 +270,7 @@ static int nfs4_handle_exception(struct nfs_server *server, int errorcode, struc
+ case 0:
+ return 0;
+ case -NFS4ERR_OPENMODE:
+- if (nfs_have_delegation(inode, FMODE_READ)) {
++ if (inode && nfs_have_delegation(inode, FMODE_READ)) {
+ nfs_inode_return_delegation(inode);
+ exception->retry = 1;
+ return 0;
+@@ -282,10 +282,9 @@ static int nfs4_handle_exception(struct nfs_server *server, int errorcode, struc
+ case -NFS4ERR_DELEG_REVOKED:
+ case -NFS4ERR_ADMIN_REVOKED:
+ case -NFS4ERR_BAD_STATEID:
+- if (state != NULL)
+- nfs_remove_bad_delegation(state->inode);
+ if (state == NULL)
+ break;
++ nfs_remove_bad_delegation(state->inode);
+ nfs4_schedule_stateid_recovery(server, state);
+ goto wait_on_recovery;
+ case -NFS4ERR_EXPIRED:
+@@ -3825,8 +3824,9 @@ nfs4_async_handle_error(struct rpc_task *task, const struct nfs_server *server,
+ case -NFS4ERR_DELEG_REVOKED:
+ case -NFS4ERR_ADMIN_REVOKED:
+ case -NFS4ERR_BAD_STATEID:
+- if (state != NULL)
+- nfs_remove_bad_delegation(state->inode);
++ if (state == NULL)
++ break;
++ nfs_remove_bad_delegation(state->inode);
+ case -NFS4ERR_OPENMODE:
+ if (state == NULL)
+ break;
+--
+1.7.7.6
+
View
37 ...eek-sources/files/3.4.0/fedora/NFSv4-Rate-limit-the-state-manager-for-lock-reclaim-.patch
@@ -0,0 +1,37 @@
+From 34d91cfbc163c6e2a136a27c96918fc35de06341 Mon Sep 17 00:00:00 2001
+From: William Dauchy <wdauchy@gmail.com>
+Date: Wed, 14 Mar 2012 12:32:04 +0100
+Subject: [PATCH] NFSv4: Rate limit the state manager for lock reclaim warning
+ messages
+
+Adding rate limit on `Lock reclaim failed` messages since it could fill
+up system logs
+Signed-off-by: William Dauchy <wdauchy@gmail.com>
+Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
+
+Conflicts:
+
+ fs/nfs/nfs4state.c
+---
+ fs/nfs/nfs4state.c | 5 +++--
+ 1 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
+index bacb271..3676b5c 100644
+--- a/fs/nfs/nfs4state.c
++++ b/fs/nfs/nfs4state.c
+@@ -1247,8 +1247,9 @@ restart:
+ spin_lock(&state->state_lock);
+ list_for_each_entry(lock, &state->lock_states, ls_locks) {
+ if (!(lock->ls_flags & NFS_LOCK_INITIALIZED))
+- printk("%s: Lock reclaim failed!\n",
+- __func__);
++ pr_warn_ratelimited("NFS: "
++ "%s: Lock reclaim "
++ "failed!\n", __func__);
+ }
+ spin_unlock(&state->state_lock);
+ nfs4_put_open_state(state);
+--
+1.7.7.6
+
View
46 sys-kernel/geek-sources/files/3.4.0/fedora/NFSv4-Reduce-the-footprint-of-the-idmapper.patch
@@ -0,0 +1,46 @@
+diff -up linux-3.2.noarch/fs/nfs/idmap.c.orig linux-3.2.noarch/fs/nfs/idmap.c
+--- linux-3.2.noarch/fs/nfs/idmap.c.orig 2012-02-07 07:12:52.585471833 -0500
++++ linux-3.2.noarch/fs/nfs/idmap.c 2012-03-14 13:08:37.462928792 -0400
+@@ -360,7 +360,7 @@ struct idmap_hashent {
+ unsigned long ih_expires;
+ __u32 ih_id;
+ size_t ih_namelen;
+- char ih_name[IDMAP_NAMESZ];
++ const char *ih_name;
+ };
+
+ struct idmap_hashtable {
+@@ -424,11 +424,16 @@ void
+ nfs_idmap_delete(struct nfs_client *clp)
+ {
+ struct idmap *idmap = clp->cl_idmap;
++ int i;
+
+ if (!idmap)
+ return;
+ rpc_unlink(idmap->idmap_dentry);
+ clp->cl_idmap = NULL;
++ for (i = 0; i < ARRAY_SIZE(idmap->idmap_user_hash.h_entries); i++)
++ kfree(idmap->idmap_user_hash.h_entries[i].ih_name);
++ for (i = 0; i < ARRAY_SIZE(idmap->idmap_group_hash.h_entries); i++)
++ kfree(idmap->idmap_group_hash.h_entries[i].ih_name);
+ kfree(idmap);
+ }
+
+@@ -491,9 +496,14 @@ static void
+ idmap_update_entry(struct idmap_hashent *he, const char *name,
+ size_t namelen, __u32 id)
+ {
++ char *str = kmalloc(namelen + 1, GFP_KERNEL);
++ if (str == NULL)
++ return;
++ kfree(he->ih_name);
+ he->ih_id = id;
+- memcpy(he->ih_name, name, namelen);
+- he->ih_name[namelen] = '\0';
++ memcpy(str, name, namelen);
++ str[namelen] = '\0';
++ he->ih_name = str;
+ he->ih_namelen = namelen;
+ he->ih_expires = jiffies + nfs_idmap_cache_timeout;
+ }
View
69 ...geek-sources/files/3.4.0/fedora/NFSv4-fix-open-O_TRUNC-and-ftruncate-error-handling.patch
@@ -0,0 +1,69 @@
+From: Trond Myklebust <Trond.Myklebust@netapp.com>
+
+If the file wasn't opened for writing, then truncate and ftruncate
+need to report the appropriate errors.
+
+Reported-by: Miklos Szeredi <miklos@szeredi.hu>
+Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
+Cc: stable@vger.kernel.org
+---
+ fs/nfs/dir.c | 4 ++--
+ fs/nfs/nfs4proc.c | 15 ++++++++++++---
+ 2 files changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
+index bb132a8..51a2686 100644
+--- a/fs/nfs/dir.c
++++ b/fs/nfs/dir.c
+@@ -1429,7 +1429,7 @@ static struct dentry *nfs_atomic_lookup(struct inode *dir, struct dentry *dentry
+ }
+
+ open_flags = nd->intent.open.flags;
+- attr.ia_valid = 0;
++ attr.ia_valid = ATTR_OPEN;
+
+ ctx = create_nfs_open_context(dentry, open_flags);
+ res = ERR_CAST(ctx);
+@@ -1536,7 +1536,7 @@ static int nfs_open_revalidate(struct dentry *dentry, struct nameidata *nd)
+ if (IS_ERR(ctx))
+ goto out;
+
+- attr.ia_valid = 0;
++ attr.ia_valid = ATTR_OPEN;
+ if (openflags & O_TRUNC) {
+ attr.ia_valid |= ATTR_SIZE;
+ attr.ia_size = 0;
+diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
+index c4c6b48..e2a2893 100644
+--- a/fs/nfs/nfs4proc.c
++++ b/fs/nfs/nfs4proc.c
+@@ -1921,10 +1921,19 @@ static int nfs4_do_setattr(struct inode *inode, struct rpc_cred *cred,
+ };
+ int err;
+ do {
+- err = nfs4_handle_exception(server,
+- _nfs4_do_setattr(inode, cred, fattr, sattr, state),
+- &exception);
++ err = _nfs4_do_setattr(inode, cred, fattr, sattr, state);
++ switch (err) {
++ case -NFS4ERR_OPENMODE:
++ if (state && !(state->state & FMODE_WRITE)) {
++ err = -EBADF;
++ if (sattr->ia_valid & ATTR_OPEN)
++ err = -EACCES;
++ goto out;
++ }
++ }
++ err = nfs4_handle_exception(server, err, &exception);
+ } while (exception.retry);
++out:
+ return err;
+ }
+
+--
+1.7.7.6
+
+_______________________________________________
+kernel mailing list
+kernel@lists.fedoraproject.org
+https://admin.fedoraproject.org/mailman/listinfo/kernel
View
5 sys-kernel/geek-sources/files/3.4.0/fedora/TODO
@@ -1,8 +1,7 @@
-* Post 3.5:
-- Check if PaulMcK has fixed CONFIG_RCU_FAST_NO_HZ
-
Config TODOs:
* review & disable a bunch of the I2C, RTC, DVB, SOUND options.
+* Re-enable CONFIG_RELOCATABLE for 32bit builds with 3.4
+
Spec file TODOs:
View
384 sys-kernel/geek-sources/files/3.4.0/fedora/apple-gmux-backlight-support.patch
@@ -0,0 +1,384 @@
+commit 9964e2a108292685fbbf0980493c5e9776eac762
+Author: Seth Forshee <seth.forshee@canonical.com>
+Date: Fri Mar 16 14:41:21 2012 -0500
+
+ apple_bl: Add register/unregister functions
+
+ Add functions to allow other modules to enable or disable apple_bl. This
+ will be used by the gmux driver to disable apple_bl when the gmux is
+ present, as it is a better and more reliable option for brightness
+ control.
+
+ Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
+ Signed-off-by: Matthew Garrett <mjg@redhat.com>
+
+diff --git a/drivers/video/backlight/apple_bl.c b/drivers/video/backlight/apple_bl.c
+index be98d15..a523b25 100644
+--- a/drivers/video/backlight/apple_bl.c
++++ b/drivers/video/backlight/apple_bl.c
+@@ -24,6 +24,7 @@
+ #include <linux/io.h>
+ #include <linux/pci.h>
+ #include <linux/acpi.h>
++#include <linux/atomic.h>
+
+ static struct backlight_device *apple_backlight_device;
+
+@@ -221,14 +222,32 @@ static struct acpi_driver apple_bl_driver = {
+ },
+ };
+
++static atomic_t apple_bl_registered = ATOMIC_INIT(0);
++
++int apple_bl_register(void)
++{
++ if (atomic_xchg(&apple_bl_registered, 1) == 0)
++ return acpi_bus_register_driver(&apple_bl_driver);
++
++ return 0;
++}
++EXPORT_SYMBOL_GPL(apple_bl_register);
++
++void apple_bl_unregister(void)
++{
++ if (atomic_xchg(&apple_bl_registered, 0) == 1)
++ acpi_bus_unregister_driver(&apple_bl_driver);
++}
++EXPORT_SYMBOL_GPL(apple_bl_unregister);
++
+ static int __init apple_bl_init(void)
+ {
+- return acpi_bus_register_driver(&apple_bl_driver);
++ return apple_bl_register();
+ }
+
+ static void __exit apple_bl_exit(void)
+ {
+- acpi_bus_unregister_driver(&apple_bl_driver);
++ apple_bl_unregister();
+ }
+
+ module_init(apple_bl_init);
+diff --git a/include/linux/apple_bl.h b/include/linux/apple_bl.h
+new file mode 100644
+index 0000000..47bedc0
+--- /dev/null
++++ b/include/linux/apple_bl.h
+@@ -0,0 +1,26 @@
++/*
++ * apple_bl exported symbols
++ */
++
++#ifndef _LINUX_APPLE_BL_H
++#define _LINUX_APPLE_BL_H
++
++#ifdef CONFIG_BACKLIGHT_APPLE
++
++extern int apple_bl_register(void);
++extern void apple_bl_unregister(void);
++
++#else /* !CONFIG_BACKLIGHT_APPLE */
++
++static inline int apple_bl_register(void)
++{
++ return 0;
++}
++
++static inline void apple_bl_unregister(void)
++{
++}
++
++#endif /* !CONFIG_BACKLIGHT_APPLE */
++
++#endif /* _LINUX_APPLE_BL_H */
+commit 89c093937dc8b07db4652251c83ec3710e5f15a2
+Author: Seth Forshee <seth.forshee@canonical.com>
+Date: Fri Mar 16 14:41:22 2012 -0500
+
+ platform/x86: Add driver for Apple gmux device
+
+ Apple laptops with hybrid graphics have a device named gmux that
+ controls the muxing of the LVDS panel between the GPUs as well as screen
+ brightness. This driver adds support for the gmux device. Only backlight
+ control is supported initially.
+
+ Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
+ Signed-off-by: Matthew Garrett <mjg@redhat.com>
+ Tested-by: Grant Likely <grant.likely@secretlab.ca>
+
+diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
+index ce10f03..c5b4bfe 100644
+--- a/drivers/platform/x86/Kconfig
++++ b/drivers/platform/x86/Kconfig
+@@ -752,4 +752,14 @@ config SAMSUNG_Q10
+ This driver provides support for backlight control on Samsung Q10
+ and related laptops, including Dell Latitude X200.
+
++config APPLE_GMUX
++ tristate "Apple Gmux Driver"
++ depends on PNP
++ select BACKLIGHT_CLASS_DEVICE
++ ---help---
++ This driver provides support for the gmux device found on many
++ Apple laptops, which controls the display mux for the hybrid
++ graphics as well as the backlight. Currently only backlight
++ control is supported by the driver.
++
+ endif # X86_PLATFORM_DEVICES
+diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
+index dcfee6b..bf7e4f9 100644
+--- a/drivers/platform/x86/Makefile
++++ b/drivers/platform/x86/Makefile
+@@ -49,3 +49,4 @@ obj-$(CONFIG_MXM_WMI) += mxm-wmi.o
+ obj-$(CONFIG_INTEL_MID_POWER_BUTTON) += intel_mid_powerbtn.o
+ obj-$(CONFIG_INTEL_OAKTRAIL) += intel_oaktrail.o
+ obj-$(CONFIG_SAMSUNG_Q10) += samsung-q10.o
++obj-$(CONFIG_APPLE_GMUX) += apple-gmux.o
+diff --git a/drivers/platform/x86/apple-gmux.c b/drivers/platform/x86/apple-gmux.c
+new file mode 100644
+index 0000000..c81e31f
+--- /dev/null
++++ b/drivers/platform/x86/apple-gmux.c
+@@ -0,0 +1,242 @@
++/*
++ * Gmux driver for Apple laptops
++ *
++ * Copyright (C) Canonical Ltd. <seth.forshee@canonical.com>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/init.h>
++#include <linux/backlight.h>
++#include <linux/acpi.h>
++#include <linux/pnp.h>
++#include <linux/apple_bl.h>
++#include <acpi/video.h>
++
++struct apple_gmux_data {
++ unsigned long iostart;
++ unsigned long iolen;
++
++ struct backlight_device *bdev;
++};
++
++/*
++ * gmux port offsets. Many of these are not yet used, but may be in the
++ * future, and it's useful to have them documented here anyhow.
++ */
++#define GMUX_PORT_VERSION_MAJOR 0x04
++#define GMUX_PORT_VERSION_MINOR 0x05
++#define GMUX_PORT_VERSION_RELEASE 0x06
++#define GMUX_PORT_SWITCH_DISPLAY 0x10
++#define GMUX_PORT_SWITCH_GET_DISPLAY 0x11
++#define GMUX_PORT_INTERRUPT_ENABLE 0x14
++#define GMUX_PORT_INTERRUPT_STATUS 0x16
++#define GMUX_PORT_SWITCH_DDC 0x28
++#define GMUX_PORT_SWITCH_EXTERNAL 0x40
++#define GMUX_PORT_SWITCH_GET_EXTERNAL 0x41
++#define GMUX_PORT_DISCRETE_POWER 0x50
++#define GMUX_PORT_MAX_BRIGHTNESS 0x70
++#define GMUX_PORT_BRIGHTNESS 0x74
++
++#define GMUX_MIN_IO_LEN (GMUX_PORT_BRIGHTNESS + 4)
++
++#define GMUX_INTERRUPT_ENABLE 0xff
++#define GMUX_INTERRUPT_DISABLE 0x00
++
++#define GMUX_INTERRUPT_STATUS_ACTIVE 0
++#define GMUX_INTERRUPT_STATUS_DISPLAY (1 << 0)
++#define GMUX_INTERRUPT_STATUS_POWER (1 << 2)
++#define GMUX_INTERRUPT_STATUS_HOTPLUG (1 << 3)
++
++#define GMUX_BRIGHTNESS_MASK 0x00ffffff
++#define GMUX_MAX_BRIGHTNESS GMUX_BRIGHTNESS_MASK
++
++static inline u8 gmux_read8(struct apple_gmux_data *gmux_data, int port)
++{
++ return inb(gmux_data->iostart + port);
++}
++
++static inline void gmux_write8(struct apple_gmux_data *gmux_data, int port,
++ u8 val)
++{
++ outb(val, gmux_data->iostart + port);
++}
++
++static inline u32 gmux_read32(struct apple_gmux_data *gmux_data, int port)
++{
++ return inl(gmux_data->iostart + port);
++}
++
++static int gmux_get_brightness(struct backlight_device *bd)
++{
++ struct apple_gmux_data *gmux_data = bl_get_data(bd);
++ return gmux_read32(gmux_data, GMUX_PORT_BRIGHTNESS) &
++ GMUX_BRIGHTNESS_MASK;
++}
++
++static int gmux_update_status(struct backlight_device *bd)
++{
++ struct apple_gmux_data *gmux_data = bl_get_data(bd);
++ u32 brightness = bd->props.brightness;
++
++ /*
++ * Older gmux versions require writing out lower bytes first then
++ * setting the upper byte to 0 to flush the values. Newer versions
++ * accept a single u32 write, but the old method also works, so we
++ * just use the old method for all gmux versions.
++ */
++ gmux_write8(gmux_data, GMUX_PORT_BRIGHTNESS, brightness);
++ gmux_write8(gmux_data, GMUX_PORT_BRIGHTNESS + 1, brightness >> 8);
++ gmux_write8(gmux_data, GMUX_PORT_BRIGHTNESS + 2, brightness >> 16);
++ gmux_write8(gmux_data, GMUX_PORT_BRIGHTNESS + 3, 0);
++
++ return 0;
++}
++
++static const struct backlight_ops gmux_bl_ops = {
++ .get_brightness = gmux_get_brightness,
++ .update_status = gmux_update_status,
++};
++
++static int __devinit gmux_probe(struct pnp_dev *pnp,
++ const struct pnp_device_id *id)
++{
++ struct apple_gmux_data *gmux_data;
++ struct resource *res;
++ struct backlight_properties props;
++ struct backlight_device *bdev;
++ u8 ver_major, ver_minor, ver_release;
++ int ret = -ENXIO;
++
++ gmux_data = kzalloc(sizeof(*gmux_data), GFP_KERNEL);
++ if (!gmux_data)
++ return -ENOMEM;
++ pnp_set_drvdata(pnp, gmux_data);
++
++ res = pnp_get_resource(pnp, IORESOURCE_IO, 0);
++ if (!res) {
++ pr_err("Failed to find gmux I/O resource\n");
++ goto err_free;
++ }
++
++ gmux_data->iostart = res->start;
++ gmux_data->iolen = res->end - res->start;
++
++ if (gmux_data->iolen < GMUX_MIN_IO_LEN) {
++ pr_err("gmux I/O region too small (%lu < %u)\n",
++ gmux_data->iolen, GMUX_MIN_IO_LEN);
++ goto err_free;
++ }
++
++ if (!request_region(gmux_data->iostart, gmux_data->iolen,
++ "Apple gmux")) {
++ pr_err("gmux I/O already in use\n");
++ goto err_free;
++ }
++
++ /*
++ * On some machines the gmux is in ACPI even thought the machine
++ * doesn't really have a gmux. Check for invalid version information
++ * to detect this.
++ */
++ ver_major = gmux_read8(gmux_data, GMUX_PORT_VERSION_MAJOR);
++ ver_minor = gmux_read8(gmux_data, GMUX_PORT_VERSION_MINOR);
++ ver_release = gmux_read8(gmux_data, GMUX_PORT_VERSION_RELEASE);
++ if (ver_major == 0xff && ver_minor == 0xff && ver_release == 0xff) {
++ pr_info("gmux device not present\n");
++ ret = -ENODEV;
++ goto err_release;
++ }
++
++ pr_info("Found gmux version %d.%d.%d\n", ver_major, ver_minor,
++ ver_release);
++
++ memset(&props, 0, sizeof(props));
++ props.type = BACKLIGHT_PLATFORM;
++ props.max_brightness = gmux_read32(gmux_data, GMUX_PORT_MAX_BRIGHTNESS);
++
++ /*
++ * Currently it's assumed that the maximum brightness is less than
++ * 2^24 for compatibility with old gmux versions. Cap the max
++ * brightness at this value, but print a warning if the hardware
++ * reports something higher so that it can be fixed.
++ */
++ if (WARN_ON(props.max_brightness > GMUX_MAX_BRIGHTNESS))
++ props.max_brightness = GMUX_MAX_BRIGHTNESS;
++
++ bdev = backlight_device_register("gmux_backlight", &pnp->dev,
++ gmux_data, &gmux_bl_ops, &props);
++ if (IS_ERR(bdev)) {
++ ret = PTR_ERR(bdev);
++ goto err_release;
++ }
++
++ gmux_data->bdev = bdev;
++ bdev->props.brightness = gmux_get_brightness(bdev);
++ backlight_update_status(bdev);
++
++ /*
++ * The backlight situation on Macs is complicated. If the gmux is
++ * present it's the best choice, because it always works for
++ * backlight control and supports more levels than other options.
++ * Disable the other backlight choices.
++ */
++ acpi_video_unregister();
++ apple_bl_unregister();
++
++ return 0;
++
++err_release:
++ release_region(gmux_data->iostart, gmux_data->iolen);
++err_free:
++ kfree(gmux_data);
++ return ret;
++}
++
++static void __devexit gmux_remove(struct pnp_dev *pnp)
++{
++ struct apple_gmux_data *gmux_data = pnp_get_drvdata(pnp);
++
++ backlight_device_unregister(gmux_data->bdev);
++ release_region(gmux_data->iostart, gmux_data->iolen);
++ kfree(gmux_data);
++
++ acpi_video_register();
++ apple_bl_register();
++}
++
++static const struct pnp_device_id gmux_device_ids[] = {
++ {"APP000B", 0},
++ {"", 0}
++};
++
++static struct pnp_driver gmux_pnp_driver = {
++ .name = "apple-gmux",
++ .probe = gmux_probe,
++ .remove = __devexit_p(gmux_remove),
++ .id_table = gmux_device_ids,
++};
++
++static int __init apple_gmux_init(void)
++{
++ return pnp_register_driver(&gmux_pnp_driver);
++}
++
++static void __exit apple_gmux_exit(void)
++{
++ pnp_unregister_driver(&gmux_pnp_driver);
++}
++
++module_init(apple_gmux_init);
++module_exit(apple_gmux_exit);
++
++MODULE_AUTHOR("Seth Forshee <seth.forshee@canonical.com>");
++MODULE_DESCRIPTION("Apple Gmux Driver");
++MODULE_LICENSE("GPL");
++MODULE_DEVICE_TABLE(pnp, gmux_device_ids);
View
132 sys-kernel/geek-sources/files/3.4.0/fedora/arm-beagle-usb-init.patch
@@ -0,0 +1,132 @@
+From: "Govindraj.R" <govindraj.raja at ti.com>
+
+All beagle boards rev > AX/BX have external usb hubs connected to ehci
+interface, external hub/peripheral uses a nreset sequence for which
+uart2_rx.gpio_147 pin in mux mode4(USB2HS_nRST) is used on all beagle
+boards expect rev Ax/BX.
+(Reference to all beagle boards rev schematics:
+http://beagleboard.org/hardware/design)
+
+Initialising uart2 will lead to serial init taking over uart2_rx pin
+so init uart2_rx pin mux only for Beagle AX/BX rev boards.
+Dont init uart2 for all other boards allowing usb_ehci functionality.
+
+To initialise individual uart port by id utilise and modify the existing
+available func. omap_serial_board_init.
+
+Cc: Tony Lindgren <tony at atomide.com>
+Cc: Kevin Hilman <khilman at ti.com>
+Cc: Koen Kooi <koen at dominion.thruhere.net>
+Tested-by: Peter Ujfalusi <peter.ujfalusi at ti.com>
+Tested-by: Robert Nelson <robertcnelson at gmail.com>
+Signed-off-by: Govindraj.R <govindraj.raja at ti.com>
+---
+ arch/arm/mach-omap2/board-omap3beagle.c | 6 +++-
+ arch/arm/mach-omap2/serial.c | 41 ++++++++++++++++-------------
+ arch/arm/plat-omap/include/plat/serial.h | 3 +-
+ 3 files changed, 30 insertions(+), 20 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
+index 7ffcd28..19d6fb5 100644
+--- a/arch/arm/mach-omap2/board-omap3beagle.c
++++ b/arch/arm/mach-omap2/board-omap3beagle.c
+@@ -126,6 +126,7 @@ static void __init omap3_beagle_init_rev(void)
+ beagle_config.mmc1_gpio_wp = 29;
+ beagle_config.reset_gpio = 170;
+ beagle_config.usr_button_gpio = 7;
++ omap_serial_board_init(NULL, 1);
+ break;
+ case 6:
+ printk(KERN_INFO "OMAP3 Beagle Rev: C1/C2/C3\n");
+@@ -528,7 +529,10 @@ static void __init omap3_beagle_init(void)
+ platform_add_devices(omap3_beagle_devices,
+ ARRAY_SIZE(omap3_beagle_devices));
+ omap_display_init(&beagle_dss_data);
+- omap_serial_init();
++ omap_serial_board_init(NULL, 0);
++ omap_serial_board_init(NULL, 2);
++ omap_serial_board_init(NULL, 3);
++
+ omap_sdrc_init(mt46h32m32lf6_sdrc_params,
+ mt46h32m32lf6_sdrc_params);
+
+diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c
+index f590afc..e7c0462 100644
+--- a/arch/arm/mach-omap2/serial.c
++++ b/arch/arm/mach-omap2/serial.c
+@@ -393,30 +393,32 @@ void __init omap_serial_init_port(struct omap_board_data *bdata,
+ /**
+ * omap_serial_board_init() - initialize all supported serial ports
+ * @info: platform specific data pointer
++ * @port_id: uart port number to be initialised
+ *
+- * Initializes all available UARTs as serial ports. Platforms
++ * Initializes individual UARTs as serial ports. Platforms
+ * can call this function when they want to have default behaviour
+- * for serial ports (e.g initialize them all as serial ports).
++ * for serial ports (e.g initialize individual serial ports based on port id).
+ */
+-void __init omap_serial_board_init(struct omap_uart_port_info *info)
++void __init omap_serial_board_init(struct omap_uart_port_info *info, u8 port_id)
+ {
+ struct omap_uart_state *uart;
+ struct omap_board_data bdata;
+
+- list_for_each_entry(uart, &uart_list, node) {
+- bdata.id = uart->num;
+- bdata.flags = 0;
+- bdata.pads = NULL;
+- bdata.pads_cnt = 0;
+-
+- if (cpu_is_omap44xx() || cpu_is_omap34xx())
+- omap_serial_fill_default_pads(&bdata);
+-
+- if (!info)
+- omap_serial_init_port(&bdata, NULL);
+- else
+- omap_serial_init_port(&bdata, &info[uart->num]);
+- }
++ list_for_each_entry(uart, &uart_list, node)
++ if (uart->num == port_id) {
++ bdata.id = uart->num;
++ bdata.flags = 0;
++ bdata.pads = NULL;
++ bdata.pads_cnt = 0;
++
++ if (!cpu_is_omap24xx())
++ omap_serial_fill_default_pads(&bdata);
++
++ if (!info)
++ omap_serial_init_port(&bdata, NULL);
++ else
++ omap_serial_init_port(&bdata, info);
++ }
+ }
+
+ /**
+@@ -428,5 +430,8 @@ void __init omap_serial_board_init(struct omap_uart_port_info *info)
+ */
+ void __init omap_serial_init(void)
+ {
+- omap_serial_board_init(NULL);
++ struct omap_uart_state *uart;
++
++ list_for_each_entry(uart, &uart_list, node)
++ omap_serial_board_init(NULL, uart->num);
+ }
+diff --git a/arch/arm/plat-omap/include/plat/serial.h b/arch/arm/plat-omap/include/plat/serial.h
+index 198d1e6..043b251 100644
+--- a/arch/arm/plat-omap/include/plat/serial.h
++++ b/arch/arm/plat-omap/include/plat/serial.h
+@@ -111,7 +111,8 @@ struct omap_uart_port_info;
+ struct omap_uart_port_info;
+
+ extern void omap_serial_init(void);
+-extern void omap_serial_board_init(struct omap_uart_port_info *platform_data);
++extern void omap_serial_board_init(struct omap_uart_port_info *platform_data,
++ u8 port_id);
+ extern void omap_serial_init_port(struct omap_board_data *bdata,
+ struct omap_uart_port_info *platform_data);
+ #endif
+--
+1.7.5.4
View
11 sys-kernel/geek-sources/files/3.4.0/fedora/arm-tegra-sdhci-module-fix.patch
@@ -1,11 +0,0 @@
---- linux-3.5.0-0.rc0.git3.1.fc18.armv7hl/drivers/mmc/host/sdhci-tegra.c.orig 2012-05-23 06:59:19.797302757 -0500
-+++ linux-3.5.0-0.rc0.git3.1.fc18.armv7hl/drivers/mmc/host/sdhci-tegra.c 2012-05-22 15:26:07.154823359 -0500
-@@ -190,7 +190,7 @@
- #endif
- {}
- };
--MODULE_DEVICE_TABLE(of, sdhci_dt_ids);
-+MODULE_DEVICE_TABLE(of, sdhci_tegra_dt_match);
-
- static struct tegra_sdhci_platform_data * __devinit sdhci_tegra_dt_parse_pdata(
- struct platform_device *pdev)
View
3,658 sys-kernel/geek-sources/files/3.4.0/fedora/atl1c_net_next_update-3.4.patch
3,658 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
101 sys-kernel/geek-sources/files/3.4.0/fedora/drm-cirrus-qemu-fix-crash.patch
@@ -1,101 +0,0 @@
-diff --git a/drivers/gpu/drm/cirrus/cirrus_drv.c b/drivers/gpu/drm/cirrus/cirrus_drv.c
-index d703823..7053140 100644
---- a/drivers/gpu/drm/cirrus/cirrus_drv.c
-+++ b/drivers/gpu/drm/cirrus/cirrus_drv.c
-@@ -35,9 +35,28 @@ static DEFINE_PCI_DEVICE_TABLE(pciidlist) = {
- {0,}
- };
-
-+
-+static void cirrus_kick_out_firmware_fb(struct pci_dev *pdev)
-+{
-+ struct apertures_struct *ap;
-+ bool primary = false;
-+
-+ ap = alloc_apertures(1);
-+ ap->ranges[0].base = pci_resource_start(pdev, 0);
-+ ap->ranges[0].size = pci_resource_len(pdev, 0);
-+
-+#ifdef CONFIG_X86
-+ primary = pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
-+#endif
-+ remove_conflicting_framebuffers(ap, "cirrusdrmfb", primary);
-+ kfree(ap);
-+}
-+
- static int __devinit
- cirrus_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
- {
-+ cirrus_kick_out_firmware_fb(pdev);
-+
- return drm_get_pci_dev(pdev, ent, &driver);
- }
-
-diff --git a/drivers/gpu/drm/cirrus/cirrus_drv.h b/drivers/gpu/drm/cirrus/cirrus_drv.h
-index 21bdfa8..64ea597 100644
---- a/drivers/gpu/drm/cirrus/cirrus_drv.h
-+++ b/drivers/gpu/drm/cirrus/cirrus_drv.h
-@@ -145,7 +145,7 @@ struct cirrus_device {
- struct ttm_bo_device bdev;
- atomic_t validate_sequence;
- } ttm;
--
-+ bool mm_inited;
- };
-
-
-diff --git a/drivers/gpu/drm/cirrus/cirrus_ttm.c b/drivers/gpu/drm/cirrus/cirrus_ttm.c
-index 2ebcd11..50e170f 100644
---- a/drivers/gpu/drm/cirrus/cirrus_ttm.c
-+++ b/drivers/gpu/drm/cirrus/cirrus_ttm.c
-@@ -275,12 +275,17 @@ int cirrus_mm_init(struct cirrus_device *cirrus)
- pci_resource_len(dev->pdev, 0),
- DRM_MTRR_WC);
-
-+ cirrus->mm_inited = true;
- return 0;
- }
-
- void cirrus_mm_fini(struct cirrus_device *cirrus)
- {
- struct drm_device *dev = cirrus->dev;
-+
-+ if (!cirrus->mm_inited)
-+ return;
-+
- ttm_bo_device_release(&cirrus->ttm.bdev);
-
- cirrus_ttm_global_release(cirrus);
-diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
-index 3c8e04f..93e832d 100644
---- a/drivers/gpu/drm/mgag200/mgag200_drv.c
-+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
-@@ -41,9 +41,28 @@ static DEFINE_PCI_DEVICE_TABLE(pciidlist) = {
-
- MODULE_DEVICE_TABLE(pci, pciidlist);
-
-+static void mgag200_kick_out_firmware_fb(struct pci_dev *pdev)
-+{
-+ struct apertures_struct *ap;
-+ bool primary = false;
-+
-+ ap = alloc_apertures(1);
-+ ap->ranges[0].base = pci_resource_start(pdev, 0);
-+ ap->ranges[0].size = pci_resource_len(pdev, 0);
-+
-+#ifdef CONFIG_X86
-+ primary = pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
-+#endif
-+ remove_conflicting_framebuffers(ap, "mgag200drmfb", primary);
-+ kfree(ap);
-+}
-+
-+
- static int __devinit
- mga_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
- {
-+ mgag200_kick_out_firmware_fb(pdev);
-+
- return drm_get_pci_dev(pdev, ent, &driver);
- }
-
View
36 sys-kernel/geek-sources/files/3.4.0/fedora/drm-i915-dp-stfu.patch
@@ -1,8 +1,21 @@
+From 04a43e2598db35b3d0ec25925bb8475b5c0a3809 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Fri, 16 Mar 2012 16:39:11 -0400
+Subject: [PATCH] drm/i915/dp: Use DRM_ERROR not WARN for sanity checks
+
+These are noisy as shit and creating a ton of abrt reports. I don't
+need more, thanks. Proper fix upstream eventually.
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+ drivers/gpu/drm/i915/intel_dp.c | 14 ++++++++------
+ 1 files changed, 8 insertions(+), 6 deletions(-)
+
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index 296cfc2..516e1e2 100644
+index 94f860c..6bf27c9 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
-@@ -350,7 +350,7 @@ intel_dp_check_edp(struct intel_dp *intel_dp)
+@@ -331,7 +331,7 @@ intel_dp_check_edp(struct intel_dp *intel_dp)
if (!is_edp(intel_dp))
return;
if (!ironlake_edp_have_panel_power(intel_dp) && !ironlake_edp_have_panel_vdd(intel_dp)) {
@@ -11,7 +24,7 @@ index 296cfc2..516e1e2 100644
DRM_DEBUG_KMS("Status 0x%08x Control 0x%08x\n",
I915_READ(PCH_PP_STATUS),
I915_READ(PCH_PP_CONTROL));
-@@ -400,7 +400,7 @@ intel_dp_aux_ch(struct intel_dp *intel_dp,
+@@ -386,7 +386,7 @@ intel_dp_aux_ch(struct intel_dp *intel_dp,
}
if (try == 3) {
@@ -20,7 +33,7 @@ index 296cfc2..516e1e2 100644
I915_READ(ch_ctl));
return -EBUSY;
}
-@@ -1024,8 +1024,8 @@ static void ironlake_edp_panel_vdd_on(struct intel_dp *intel_dp)
+@@ -992,8 +992,8 @@ static void ironlake_edp_panel_vdd_on(struct intel_dp *intel_dp)
return;
DRM_DEBUG_KMS("Turn eDP VDD on\n");
@@ -31,7 +44,7 @@ index 296cfc2..516e1e2 100644
intel_dp->want_panel_vdd = true;
-@@ -1090,7 +1090,8 @@ static void ironlake_edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
+@@ -1058,7 +1058,8 @@ static void ironlake_edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
return;
DRM_DEBUG_KMS("Turn eDP VDD off %d\n", intel_dp->want_panel_vdd);
@@ -41,13 +54,16 @@ index 296cfc2..516e1e2 100644
intel_dp->want_panel_vdd = false;
-@@ -1160,7 +1161,8 @@ static void ironlake_edp_panel_off(struct intel_dp *intel_dp)
+@@ -1128,7 +1129,8 @@ static void ironlake_edp_panel_off(struct intel_dp *intel_dp)
DRM_DEBUG_KMS("Turn eDP power off\n");
-- WARN(!intel_dp->want_panel_vdd, "Need VDD to turn off panel\n");
-+ if (!intel_dp->want_panel_vdd)
-+ DRM_ERROR("Need VDD to turn off panel\n");
+- WARN(intel_dp->want_panel_vdd, "Cannot turn power off while VDD is on\n");
++ if (intel_dp->want_panel_vdd)
++ DRM_ERROR("Cannot turn power off while VDD is on\n");
pp = ironlake_get_pp_control(dev_priv);
- pp &= ~(POWER_TARGET_ON | PANEL_POWER_RESET | EDP_BLC_ENABLE);
+ pp &= ~(POWER_TARGET_ON | EDP_FORCE_VDD | PANEL_POWER_RESET | EDP_BLC_ENABLE);
+--
+1.7.7.6
+
View
161 sys-kernel/geek-sources/files/3.4.0/fedora/drm-i915-lvds-dual-channel.patch
@@ -0,0 +1,161 @@
+From b03543857fd75876b96e10d4320b775e95041bb7 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 20 Mar 2012 12:07:05 +0000
+Subject: drm/i915: Check VBIOS value for determining LVDS dual channel mode, too
+
+Currently i915 driver checks [PCH_]LVDS register bits to decide
+whether to set up the dual-link or the single-link mode. This relies
+implicitly on that BIOS initializes the register properly at boot.
+However, BIOS doesn't initialize it always. When the machine is
+booted with the closed lid, BIOS skips the LVDS reg initialization.
+This ends up in blank output on a machine with a dual-link LVDS when
+you open the lid after the boot.
+
+This patch adds a workaround for that problem by checking the initial
+LVDS register value in VBT.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=37742
+Tested-By: Paulo Zanoni <paulo.r.zanoni@intel.com>
+Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+---
+diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
+index b6098b0..4cbed7f 100644
+--- a/drivers/gpu/drm/i915/i915_drv.h
++++ b/drivers/gpu/drm/i915/i915_drv.h
+@@ -406,6 +406,8 @@ typedef struct drm_i915_private {
+ unsigned int lvds_use_ssc:1;
+ unsigned int display_clock_mode:1;
+ int lvds_ssc_freq;
++ unsigned int bios_lvds_val; /* initial [PCH_]LVDS reg val in VBIOS */
++ unsigned int lvds_val; /* used for checking LVDS channel mode */
+ struct {
+ int rate;
+ int lanes;
+diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c
+index 0ae76d6..e4317da 100644
+--- a/drivers/gpu/drm/i915/intel_bios.c
++++ b/drivers/gpu/drm/i915/intel_bios.c
+@@ -173,6 +173,28 @@ get_lvds_dvo_timing(const struct bdb_lvds_lfp_data *lvds_lfp_data,
+ return (struct lvds_dvo_timing *)(entry + dvo_timing_offset);
+ }
+
++/* get lvds_fp_timing entry
++ * this function may return NULL if the corresponding entry is invalid
++ */
++static const struct lvds_fp_timing *
++get_lvds_fp_timing(const struct bdb_header *bdb,
++ const struct bdb_lvds_lfp_data *data,
++ const struct bdb_lvds_lfp_data_ptrs *ptrs,
++ int index)
++{
++ size_t data_ofs = (const u8 *)data - (const u8 *)bdb;
++ u16 data_size = ((const u16 *)data)[-1]; /* stored in header */
++ size_t ofs;
++
++ if (index >= ARRAY_SIZE(ptrs->ptr))
++ return NULL;
++ ofs = ptrs->ptr[index].fp_timing_offset;
++ if (ofs < data_ofs ||
++ ofs + sizeof(struct lvds_fp_timing) > data_ofs + data_size)
++ return NULL;
++ return (const struct lvds_fp_timing *)((const u8 *)bdb + ofs);
++}
++
+ /* Try to find integrated panel data */
+ static void
+ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+@@ -182,6 +204,7 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+ const struct bdb_lvds_lfp_data *lvds_lfp_data;
+ const struct bdb_lvds_lfp_data_ptrs *lvds_lfp_data_ptrs;
+ const struct lvds_dvo_timing *panel_dvo_timing;
++ const struct lvds_fp_timing *fp_timing;
+ struct drm_display_mode *panel_fixed_mode;
+ int i, downclock;
+
+@@ -243,6 +266,19 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
+ "Normal Clock %dKHz, downclock %dKHz\n",
+ panel_fixed_mode->clock, 10*downclock);
+ }
++
++ fp_timing = get_lvds_fp_timing(bdb, lvds_lfp_data,
++ lvds_lfp_data_ptrs,
++ lvds_options->panel_type);
++ if (fp_timing) {
++ /* check the resolution, just to be sure */
++ if (fp_timing->x_res == panel_fixed_mode->hdisplay &&
++ fp_timing->y_res == panel_fixed_mode->vdisplay) {
++ dev_priv->bios_lvds_val = fp_timing->lvds_reg_val;
++ DRM_DEBUG_KMS("VBT initial LVDS value %x\n",
++ dev_priv->bios_lvds_val);
++ }
++ }
+ }
+
+ /* Try to find sdvo panel data */
+diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
+index 683002fb..a76ac2e 100644
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -360,6 +360,27 @@ static const intel_limit_t intel_limits_ironlake_display_port = {
+ .find_pll = intel_find_pll_ironlake_dp,
+ };
+
++static bool is_dual_link_lvds(struct drm_i915_private *dev_priv,
++ unsigned int reg)
++{
++ unsigned int val;
++
++ if (dev_priv->lvds_val)
++ val = dev_priv->lvds_val;
++ else {
++ /* BIOS should set the proper LVDS register value at boot, but
++ * in reality, it doesn't set the value when the lid is closed;
++ * we need to check "the value to be set" in VBT when LVDS
++ * register is uninitialized.
++ */
++ val = I915_READ(reg);
++ if (!(val & ~LVDS_DETECTED))
++ val = dev_priv->bios_lvds_val;
++ dev_priv->lvds_val = val;
++ }
++ return (val & LVDS_CLKB_POWER_MASK) == LVDS_CLKB_POWER_UP;
++}
++
+ static const intel_limit_t *intel_ironlake_limit(struct drm_crtc *crtc,
+ int refclk)
+ {
+@@ -368,8 +389,7 @@ static const intel_limit_t *intel_ironlake_limit(struct drm_crtc *crtc,
+ const intel_limit_t *limit;
+
+ if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) {
+- if ((I915_READ(PCH_LVDS) & LVDS_CLKB_POWER_MASK) ==
+- LVDS_CLKB_POWER_UP) {
++ if (is_dual_link_lvds(dev_priv, PCH_LVDS)) {
+ /* LVDS dual channel */
+ if (refclk == 100000)
+ limit = &intel_limits_ironlake_dual_lvds_100m;
+@@ -397,8 +417,7 @@ static const intel_limit_t *intel_g4x_limit(struct drm_crtc *crtc)
+ const intel_limit_t *limit;
+
+ if (intel_pipe_has_type(crtc, INTEL_OUTPUT_LVDS)) {
+- if ((I915_READ(LVDS) & LVDS_CLKB_POWER_MASK) ==
+- LVDS_CLKB_POWER_UP)
++ if (is_dual_link_lvds(dev_priv, LVDS))
+ /* LVDS with dual channel */
+ limit = &intel_limits_g4x_dual_channel_lvds;
+ else
+@@ -536,8 +555,7 @@ intel_find_best_PLL(const intel_limit_t *limit, struct drm_crtc *crtc,
+ * reliably set up different single/dual channel state, if we
+ * even can.
+ */
+- if ((I915_READ(LVDS) & LVDS_CLKB_POWER_MASK) ==
+- LVDS_CLKB_POWER_UP)
++ if (is_dual_link_lvds(dev_priv, LVDS))
+ clock.p2 = limit->p2.p2_fast;
+ else
+ clock.p2 = limit->p2.p2_slow;
+--
+cgit v0.9.0.2-2-gbebe
View
45 sys-kernel/geek-sources/files/3.4.0/fedora/efifb-skip-DMI-checks-if-bootloader-knows.patch
@@ -0,0 +1,45 @@
+commit 9b989ae8a30f5a430fabbf911e0643bca96c3fd1
+Author: Matthew Garrett <mjg@redhat.com>
+Date: Thu Apr 26 17:35:58 2012 -0400
+
+ efifb: Skip DMI checks if the bootloader knows what it's doing
+
+ The majority of the DMI checks in efifb are for cases where the bootloader
+ has provided invalid information. However, on some machines the overrides
+ may do more harm than good due to configuration differences between machines
+ with the same machine identifier. It turns out that it's possible for the
+ bootloader to get the correct information on GOP-based systems, but we
+ can't guarantee that the kernel's being booted with one that's been updated
+ to do so. Add support for a capabilities flag that can be set by the
+ bootloader, and skip the DMI checks in that case.
+
+ Signed-off-by: Matthew Garrett <mjg@redhat.com>
+
+diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
+index b4a632a..932abaa 100644
+--- a/drivers/video/efifb.c
++++ b/drivers/video/efifb.c
+@@ -553,7 +553,9 @@ static int __init efifb_init(void)
+ int ret;
+ char *option = NULL;
+
+- dmi_check_system(dmi_system_table);
++ if (screen_info.orig_video_isVGA != VIDEO_TYPE_EFI ||
++ !(screen_info.capabilities & VIDEO_CAPABILITY_SKIP_QUIRKS))
++ dmi_check_system(dmi_system_table);
+
+ if (screen_info.orig_video_isVGA != VIDEO_TYPE_EFI)
+ return -ENODEV;
+diff --git a/include/linux/screen_info.h b/include/linux/screen_info.h
+index 899fbb4..fb3c5a8 100644
+--- a/include/linux/screen_info.h
++++ b/include/linux/screen_info.h
+@@ -68,6 +68,8 @@ struct screen_info {
+
+ #define VIDEO_FLAGS_NOCURSOR (1 << 0) /* The video mode has no cursor set */
+
++#define VIDEO_CAPABILITY_SKIP_QUIRKS (1 << 0)
++
+ #ifdef __KERNEL__
+ extern struct screen_info screen_info;
+
View
98 sys-kernel/geek-sources/files/3.4.0/fedora/hfsplus-Add-an-ioctl-to-bless-files.patch
@@ -0,0 +1,98 @@
+Making an hfsplus partition bootable requires the ability to "bless" a
+file by putting its inode number in the volume header. Doing this from
+userspace on a mounted filesystem is impractical since the kernel will
+write back the original values on unmount. Add an ioctl to allow userspace
+to update the volume header information based on the target file.
+
+Signed-off-by: Matthew Garrett <mjg@redhat.com>
+---
+Kept the ioctl in the hfs code, but moved it to a different range to reduce
+reduce the chances of someone stepping on it with another filesystem.
+ Documentation/ioctl/ioctl-number.txt | 1 +
+ fs/hfsplus/hfsplus_fs.h | 5 +++++
+ fs/hfsplus/ioctl.c | 34 ++++++++++++++++++++++++++++++++++
+ 3 files changed, 40 insertions(+), 0 deletions(-)
+diff --git a/Documentation/ioctl/ioctl-number.txt b/Documentation/ioctl/ioctl-number.txt
+index 4840334..37a4248 100644
+--- a/Documentation/ioctl/ioctl-number.txt
++++ b/Documentation/ioctl/ioctl-number.txt
+@@ -218,6 +218,7 @@ Code Seq#(hex) Include File Comments
+ 'h' 00-7F conflict! Charon filesystem
+ <mailto:zapman@interlan.net>
+ 'h' 00-1F linux/hpet.h conflict!
++'h' 80-8F fs/hfsplus/ioctl.c
+ 'i' 00-3F linux/i2o-dev.h conflict!
+ 'i' 0B-1F linux/ipmi.h conflict!
+ 'i' 80-8F linux/i8k.h
+diff --git a/fs/hfsplus/hfsplus_fs.h b/fs/hfsplus/hfsplus_fs.h
+index 21a5b7f..4e75ac6 100644
+--- a/fs/hfsplus/hfsplus_fs.h
++++ b/fs/hfsplus/hfsplus_fs.h
+@@ -317,6 +317,11 @@ static inline unsigned short hfsplus_min_io_size(struct super_block *sb)
+
+
+ /*
++ * hfs+-specific ioctl for making the filesystem bootable
++ */
++#define HFSPLUS_IOC_BLESS _IO('h', 0x80)
++
++/*
+ * Functions in any *.c used in other files
+ */
+
+diff --git a/fs/hfsplus/ioctl.c b/fs/hfsplus/ioctl.c
+index f66c765..c640ba5 100644
+--- a/fs/hfsplus/ioctl.c
++++ b/fs/hfsplus/ioctl.c
+@@ -20,6 +20,38 @@
+ #include <asm/uaccess.h>
+ #include "hfsplus_fs.h"
+
++/*
++ * "Blessing" an HFS+ filesystem writes metadata to the superblock informing
++ * the platform firmware which file to boot from
++ */
++static int hfsplus_ioctl_bless(struct file *file, int __user *user_flags)
++{
++ struct dentry *dentry = file->f_path.dentry;
++ struct inode *inode = dentry->d_inode;
++ struct hfsplus_sb_info *sbi = HFSPLUS_SB(inode->i_sb);
++ struct hfsplus_vh *vh = sbi->s_vhdr;
++ struct hfsplus_vh *bvh = sbi->s_backup_vhdr;
++
++ if (!capable(CAP_SYS_ADMIN))
++ return -EPERM;
++
++ mutex_lock(&sbi->vh_mutex);
++
++ /* Directory containing the bootable system */
++ vh->finder_info[0] = bvh->finder_info[0] =
++ cpu_to_be32(parent_ino(dentry));
++
++ /* Bootloader */
++ vh->finder_info[1] = bvh->finder_info[1] = cpu_to_be32(inode->i_ino);
++
++ /* Per spec, the OS X system folder - same as finder_info[0] here */
++ vh->finder_info[5] = bvh->finder_info[5] =
++ cpu_to_be32(parent_ino(dentry));
++
++ mutex_unlock(&sbi->vh_mutex);
++ return 0;
++}
++
+ static int hfsplus_ioctl_getflags(struct file *file, int __user *user_flags)
+ {
+ struct inode *inode = file->f_path.dentry->d_inode;
+@@ -108,6 +140,8 @@ long hfsplus_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
+ return hfsplus_ioctl_getflags(file, argp);
+ case HFSPLUS_IOC_EXT2_SETFLAGS:
+ return hfsplus_ioctl_setflags(file, argp);
++ case HFSPLUS_IOC_BLESS:
++ return hfsplus_ioctl_bless(file, argp);
+ default:
+ return -ENOTTY;
+ }
+--
+1.7.7.6
+
+
View
39 sys-kernel/geek-sources/files/3.4.0/fedora/hfsplus-initialise-userflags.patch
@@ -0,0 +1,39 @@
+From f3922382ce930e76773fb06416a7a6081a8702ad Mon Sep 17 00:00:00 2001
+From: Matthew Garrett <mjg@redhat.com>
+Date: Tue, 13 Mar 2012 12:10:34 -0400
+Subject: [PATCH] hfsplus: initialise userflags
+
+The userflags field was being written to the filesystem without being
+initialised. Make sure it's clear, since otherwise files end up with
+garbage attributes.
+
+Signed-off-by: Matthew Garrett <mjg@redhat.com>
+Signed-off-by: Christoph Hellwig <hch@lst.de>
+Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
+---
+ fs/hfsplus/inode.c | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/fs/hfsplus/inode.c b/fs/hfsplus/inode.c
+index 6643b24..82b69ee 100644
+--- a/fs/hfsplus/inode.c
++++ b/fs/hfsplus/inode.c
+@@ -193,6 +193,7 @@ static struct dentry *hfsplus_file_lookup(struct inode *dir,
+ mutex_init(&hip->extents_lock);
+ hip->extent_state = 0;
+ hip->flags = 0;
++ hip->userflags = 0;
+ set_bit(HFSPLUS_I_RSRC, &hip->flags);
+
+ err = hfs_find_init(HFSPLUS_SB(sb)->cat_tree, &fd);
+@@ -400,6 +401,7 @@ struct inode *hfsplus_new_inode(struct super_block *sb, umode_t mode)
+ atomic_set(&hip->opencnt, 0);
+ hip->extent_state = 0;
+ hip->flags = 0;
++ hip->userflags = 0;
+ memset(hip->first_extents, 0, sizeof(hfsplus_extent_rec));
+ memset(hip->cached_extents, 0, sizeof(hfsplus_extent_rec));
+ hip->alloc_blocks = 0;
+--
+1.7.7.6
+
View
176 sys-kernel/geek-sources/files/3.4.0/fedora/hugetlb-fix-resv_map-leak-in-error-path.patch
@@ -0,0 +1,176 @@
+From c50ac050811d6485616a193eb0f37bfbd191cc89 Mon Sep 17 00:00:00 2001
+From: Dave Hansen <dave@linux.vnet.ibm.com>
+Date: Tue, 29 May 2012 15:06:46 -0700
+Subject: [PATCH] hugetlb: fix resv_map leak in error path
+
+When called for anonymous (non-shared) mappings, hugetlb_reserve_pages()
+does a resv_map_alloc(). It depends on code in hugetlbfs's
+vm_ops->close() to release that allocation.
+
+However, in the mmap() failure path, we do a plain unmap_region() without
+the remove_vma() which actually calls vm_ops->close().
+
+This is a decent fix. This leak could get reintroduced if new code (say,
+after hugetlb_reserve_pages() in hugetlbfs_file_mmap()) decides to return
+an error. But, I think it would have to unroll the reservation anyway.
+
+Christoph's test case:
+
+ http://marc.info/?l=linux-mm&m=133728900729735
+
+This patch applies to 3.4 and later. A version for earlier kernels is at
+https://lkml.org/lkml/2012/5/22/418.
+
+Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
+Acked-by: Mel Gorman <mel@csn.ul.ie>
+Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
+Reported-by: Christoph Lameter <cl@linux.com>
+Tested-by: Christoph Lameter <cl@linux.com>
+Cc: Andrea Arcangeli <aarcange@redhat.com>
+Cc: <stable@vger.kernel.org> [2.6.32+]
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+---
+ mm/hugetlb.c | 28 ++++++++++++++++++++++------
+ 1 files changed, 22 insertions(+), 6 deletions(-)
+
+diff --git a/mm/hugetlb.c b/mm/hugetlb.c
+index 41a647d..285a81e 100644
+--- a/mm/hugetlb.c
++++ b/mm/hugetlb.c
+@@ -2157,6 +2157,15 @@ static void hugetlb_vm_op_open(struct vm_area_struct *vma)
+ kref_get(&reservations->refs);
+ }
+
++static void resv_map_put(struct vm_area_struct *vma)
++{
++ struct resv_map *reservations = vma_resv_map(vma);
++
++ if (!reservations)
++ return;
++ kref_put(&reservations->refs, resv_map_release);
++}
++
+ static void hugetlb_vm_op_close(struct vm_area_struct *vma)
+ {
+ struct hstate *h = hstate_vma(vma);
+@@ -2173,7 +2182,7 @@ static void hugetlb_vm_op_close(struct vm_area_struct *vma)
+ reserve = (end - start) -
+ region_count(&reservations->regions, start, end);
+
+- kref_put(&reservations->refs, resv_map_release);
++ resv_map_put(vma);
+
+ if (reserve) {
+ hugetlb_acct_memory(h, -reserve);
+@@ -2991,12 +3000,16 @@ int hugetlb_reserve_pages(struct inode *inode,
+ set_vma_resv_flags(vma, HPAGE_RESV_OWNER);
+ }
+
+- if (chg < 0)
+- return chg;
++ if (chg < 0) {
++ ret = chg;
++ goto out_err;
++ }
+
+ /* There must be enough pages in the subpool for the mapping */
+- if (hugepage_subpool_get_pages(spool, chg))
+- return -ENOSPC;
++ if (hugepage_subpool_get_pages(spool, chg)) {
++ ret = -ENOSPC;
++ goto out_err;
++ }
+
+ /*
+ * Check enough hugepages are available for the reservation.
+@@ -3005,7 +3018,7 @@ int hugetlb_reserve_pages(struct inode *inode,
+ ret = hugetlb_acct_memory(h, chg);
+ if (ret < 0) {
+ hugepage_subpool_put_pages(spool, chg);
+- return ret;
++ goto out_err;
+ }
+
+ /*
+@@ -3022,6 +3035,9 @@ int hugetlb_reserve_pages(struct inode *inode,
+ if (!vma || vma->vm_flags & VM_MAYSHARE)
+ region_add(&inode->i_mapping->private_list, from, to);
+ return 0;
++out_err:
++ resv_map_put(vma);
++ return ret;
+ }
+
+ void hugetlb_unreserve_pages(struct inode *inode, long offset, long freed)
+--
+1.7.7.6
+
+From 4523e1458566a0e8ecfaff90f380dd23acc44d27 Mon Sep 17 00:00:00 2001
+From: Dave Hansen <dave@linux.vnet.ibm.com>
+Date: Wed, 30 May 2012 07:51:07 -0700
+Subject: [PATCH] mm: fix vma_resv_map() NULL pointer
+
+hugetlb_reserve_pages() can be used for either normal file-backed
+hugetlbfs mappings, or MAP_HUGETLB. In the MAP_HUGETLB, semi-anonymous
+mode, there is not a VMA around. The new call to resv_map_put() assumed
+that there was, and resulted in a NULL pointer dereference:
+
+ BUG: unable to handle kernel NULL pointer dereference at 0000000000000030
+ IP: vma_resv_map+0x9/0x30
+ PGD 141453067 PUD 1421e1067 PMD 0
+ Oops: 0000 [#1] PREEMPT SMP
+ ...
+ Pid: 14006, comm: trinity-child6 Not tainted 3.4.0+ #36
+ RIP: vma_resv_map+0x9/0x30
+ ...
+ Process trinity-child6 (pid: 14006, threadinfo ffff8801414e0000, task ffff8801414f26b0)
+ Call Trace:
+ resv_map_put+0xe/0x40
+ hugetlb_reserve_pages+0xa6/0x1d0
+ hugetlb_file_setup+0x102/0x2c0
+ newseg+0x115/0x360
+ ipcget+0x1ce/0x310
+ sys_shmget+0x5a/0x60
+ system_call_fastpath+0x16/0x1b
+
+This was reported by Dave Jones, but was reproducible with the
+libhugetlbfs test cases, so shame on me for not running them in the
+first place.
+
+With this, the oops is gone, and the output of libhugetlbfs's
+run_tests.py is identical to plain 3.4 again.
+
+[ Marked for stable, since this was introduced by commit c50ac050811d
+ ("hugetlb: fix resv_map leak in error path") which was also marked for
+ stable ]
+
+Reported-by: Dave Jones <davej@redhat.com>
+Cc: Mel Gorman <mel@csn.ul.ie>
+Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
+Cc: Christoph Lameter <cl@linux.com>
+Cc: Andrea Arcangeli <aarcange@redhat.com>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: <stable@vger.kernel.org> [2.6.32+]
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+---
+ mm/hugetlb.c | 3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/mm/hugetlb.c b/mm/hugetlb.c
+index 285a81e..e198831 100644
+--- a/mm/hugetlb.c
++++ b/mm/hugetlb.c
+@@ -3036,7 +3036,8 @@ int hugetlb_reserve_pages(struct inode *inode,
+ region_add(&inode->i_mapping->private_list, from, to);
+ return 0;
+ out_err:
+- resv_map_put(vma);
++ if (vma)
++ resv_map_put(vma);
+ return ret;
+ }
+
+--
+1.7.7.6
+
View
15 sys-kernel/geek-sources/files/3.4.0/fedora/ips-noirq.patch
@@ -0,0 +1,15 @@
+--- a/drivers/platform/x86/intel_ips.c
++++ a/drivers/platform/x86/intel_ips.c
+@@ -1603,6 +1603,12 @@ static int ips_probe(struct pci_dev *dev, const struct pci_device_id *id)
+ goto error_unmap;
+ }
+
++ /* No IRQ assigned is a BIOS failure... */
++ if (dev->irq <= 0) {
++ ret = -ENODEV;
++ goto error_unmap;
++ }
++
+ /*
+ * IRQ handler for ME interaction
+ * Note: don't use MSI here as the PCH has bugs.
View
155 ...rces/files/3.4.0/fedora/ipw2x00-add-supported-cipher-suites-to-wiphy-initialization.patch
@@ -0,0 +1,155 @@
+Path: news.gmane.org!not-for-mail
+From: Stanislav Yakovlev <stas.yakovlev-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
+Newsgroups: gmane.linux.kernel.wireless.general
+Subject: [PATCH] net/wireless: ipw2x00: add supported cipher suites to wiphy initialization
+Date: Tue, 10 Apr 2012 21:44:47 -0400
+Lines: 97
+Approved: news@gmane.org
+Message-ID: <1334108687-12954-1-git-send-email-stas.yakovlev@gmail.com>
+NNTP-Posting-Host: plane.gmane.org
+X-Trace: dough.gmane.org 1334108469 22291 80.91.229.3 (11 Apr 2012 01:41:09 GMT)
+X-Complaints-To: usenet@dough.gmane.org
+NNTP-Posting-Date: Wed, 11 Apr 2012 01:41:09 +0000 (UTC)
+Cc: simar-hi6Y0CQ0nG0@public.gmane.org, linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
+ Stanislav Yakovlev <stas.yakovlev-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
+To: linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org
+Original-X-From: linux-wireless-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Wed Apr 11 03:41:07 2012
+Return-path: <linux-wireless-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
+Envelope-to: glkwg-linux-wireless-wOFGN7rlS/M9smdsby/KFg@public.gmane.org
+Original-Received: from vger.kernel.org ([209.132.180.67])
+ by plane.gmane.org with esmtp (Exim 4.69)
+ (envelope-from <linux-wireless-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>)
+ id 1SHmYV-0004IK-CT
+ for glkwg-linux-wireless-wOFGN7rlS/M9smdsby/KFg@public.gmane.org; Wed, 11 Apr 2012 03:41:07 +0200
+Original-Received: (majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org) by vger.kernel.org via listexpand
+ id S1759898Ab2DKBlF (ORCPT
+ <rfc822;glkwg-linux-wireless@m.gmane.org>);
+ Tue, 10 Apr 2012 21:41:05 -0400
+Original-Received: from mail-ob0-f174.google.com ([209.85.214.174]:60108 "EHLO
+ mail-ob0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+ with ESMTP id S1753779Ab2DKBlE (ORCPT
+ <rfc822;linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>);
+ Tue, 10 Apr 2012 21:41:04 -0400
+Original-Received: by obbtb18 with SMTP id tb18so567970obb.19
+ for <linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>; Tue, 10 Apr 2012 18:41:02 -0700 (PDT)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
+ d=gmail.com; s=20120113;
+ h=from:to:cc:subject:date:message-id:x-mailer;
+ bh=8+D+Uuo0bIOG6rz8vxd6TGAxmrbuAw2bjWhd058IjOQ=;
+ b=beOgy1Y9ZAV1Xw5XqsnPDJ1Oc0qOpOo+gCWlwmWbLdVHxUVG+ZVuRW9eCRQkh+5bZm
+ 5Ic+xOISztYUJp144Fr4flnbGPRKKp7jP8qQ/HvCOo34J6MCgBlnuWNYKbn4/NUvOYAh
+ SeHpk2D8yOHbiWAMV+JGTqGG+/N4jVvRL147Yg1IfNDAJd8Ahbl0wARLOVg8WGGTSPvn
+ MU3HNbmKFFBDhnukYr4keCnjixuDkqPYGMYuDrsmKdiAFHBRDI6qudnvaqi8F8gbtaWg
+ dfssdTbmNYM/R/PJenInoy7IbRps2iW9ZX+zFzydZWp2EyJ4EZkKrYKmnezQgNJzRVex
+ KHfg==
+Original-Received: by 10.60.24.9 with SMTP id q9mr19071024oef.4.1334108462648;
+ Tue, 10 Apr 2012 18:41:02 -0700 (PDT)
+Original-Received: from localhost.localdomain (50-0-191-227.dsl.static.sonic.net. [50.0.191.227])
+ by mx.google.com with ESMTPS id tx2sm1309336obb.8.2012.04.10.18.40.54
+ (version=TLSv1/SSLv3 cipher=OTHER);
+ Tue, 10 Apr 2012 18:41:01 -0700 (PDT)
+X-Mailer: git-send-email 1.7.2.5
+Original-Sender: linux-wireless-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
+Precedence: bulk
+List-ID: <linux-wireless.vger.kernel.org>
+X-Mailing-List: linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
+Xref: news.gmane.org gmane.linux.kernel.wireless.general:88613
+Archived-At: <http://permalink.gmane.org/gmane.linux.kernel.wireless.general/88613>
+
+Driver doesn't report its supported cipher suites through cfg80211
+interface. It still uses wext interface and probably will not work
+through nl80211, but will at least correctly advertise supported
+features.
+
+Bug was reported by Omar Siam.
+https://bugzilla.kernel.org/show_bug.cgi?id=43049
+
+Signed-off-by: Stanislav Yakovlev <stas.yakovlev-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
+---
+ drivers/net/wireless/ipw2x00/ipw.h | 23 +++++++++++++++++++++++
+ drivers/net/wireless/ipw2x00/ipw2100.c | 4 ++++
+ drivers/net/wireless/ipw2x00/ipw2200.c | 4 ++++
+ 3 files changed, 31 insertions(+), 0 deletions(-)
+ create mode 100644 drivers/net/wireless/ipw2x00/ipw.h
+
+diff --git a/drivers/net/wireless/ipw2x00/ipw.h b/drivers/net/wireless/ipw2x00/ipw.h
+new file mode 100644
+index 0000000..4007bf5
+--- /dev/null
++++ b/drivers/net/wireless/ipw2x00/ipw.h
+@@ -0,0 +1,23 @@
++/*
++ * Intel Pro/Wireless 2100, 2200BG, 2915ABG network connection driver
++ *
++ * Copyright 2012 Stanislav Yakovlev <stas.yakovlev-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#ifndef __IPW_H__
++#define __IPW_H__
++
++#include <linux/ieee80211.h>
++
++static const u32 ipw_cipher_suites[] = {
++ WLAN_CIPHER_SUITE_WEP40,
++ WLAN_CIPHER_SUITE_WEP104,
++ WLAN_CIPHER_SUITE_TKIP,
++ WLAN_CIPHER_SUITE_CCMP,
++};
++
++#endif
+diff --git a/drivers/net/wireless/ipw2x00/ipw2100.c b/drivers/net/wireless/ipw2x00/ipw2100.c
+index f0551f8..7c8e8b1 100644
+--- a/drivers/net/wireless/ipw2x00/ipw2100.c
++++ b/drivers/net/wireless/ipw2x00/ipw2100.c
+@@ -166,6 +166,7 @@ that only one external action is invoked at a time.
+ #include <net/lib80211.h>
+
+ #include "ipw2100.h"
++#include "ipw.h"
+
+ #define IPW2100_VERSION "git-1.2.2"
+
+@@ -1946,6 +1947,9 @@ static int ipw2100_wdev_init(struct net_device *dev)
+ wdev->wiphy->bands[IEEE80211_BAND_2GHZ] = bg_band;
+ }
+
++ wdev->wiphy->cipher_suites = ipw_cipher_suites;
++ wdev->wiphy->n_cipher_suites = ARRAY_SIZE(ipw_cipher_suites);
++
+ set_wiphy_dev(wdev->wiphy, &priv->pci_dev->dev);
+ if (wiphy_register(wdev->wiphy)) {
+ ipw2100_down(priv);
+diff --git a/drivers/net/wireless/ipw2x00/ipw2200.c b/drivers/net/wireless/ipw2x00/ipw2200.c
+index 2b02257..bb4f42a 100644
+--- a/drivers/net/wireless/ipw2x00/ipw2200.c
++++ b/drivers/net/wireless/ipw2x00/ipw2200.c
+@@ -34,6 +34,7 @@
+ #include <linux/slab.h>
+ #include <net/cfg80211-wext.h>
+ #include "ipw2200.h"
++#include "ipw.h"
+
+
+ #ifndef KBUILD_EXTMOD
+@@ -11533,6 +11534,9 @@ static int ipw_wdev_init(struct net_device *dev)
+ wdev->wiphy->bands[IEEE80211_BAND_5GHZ] = a_band;
+ }
+
++ wdev->wiphy->cipher_suites = ipw_cipher_suites;
++ wdev->wiphy->n_cipher_suites = ARRAY_SIZE(ipw_cipher_suites);
++
+ set_wiphy_dev(wdev->wiphy, &priv->pci_dev->dev);
+
+ /* With that information in place, we can now register the wiphy... */
+--
+1.7.2.5
+
+--
+To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
+the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
+More majordomo info at http://vger.kernel.org/majordomo-info.html
+
View
39 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-32bit-mmap-exec-randomization.patch
@@ -1,8 +1,17 @@
+Before:
+Heap randomisation test (PIE) : 16 bits (guessed)
+Main executable randomisation (PIE) : 8 bits (guessed)
+
+after:
+Heap randomisation test (PIE) : 19 bits (guessed)
+Main executable randomisation (PIE) : 12 bits (guessed)
+
+
diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
-index 735279e..0f9f005 100644
+index 1d92a5a..81fef23 100644
--- a/arch/x86/kernel/process.c
+++ b/arch/x86/kernel/process.c
-@@ -756,6 +756,16 @@ unsigned long arch_align_stack(unsigned long sp)
+@@ -753,6 +753,16 @@ unsigned long arch_align_stack(unsigned long sp)
unsigned long arch_randomize_brk(struct mm_struct *mm)
{
unsigned long range_end = mm->brk + 0x02000000;
@@ -51,10 +60,10 @@ index 66e6d93..b80cde7 100644
ret = addr;
goto up_fail;
diff --git a/include/linux/mm.h b/include/linux/mm.h
-index 7d5c37f..92cb90d 100644
+index 74aa71b..d9971db 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
-@@ -1389,7 +1389,13 @@ extern int install_special_mapping(struct mm_struct *mm,
+@@ -1391,7 +1391,13 @@ extern int install_special_mapping(struct mm_struct *mm,
unsigned long addr, unsigned long len,
unsigned long flags, struct page **pages);
@@ -70,10 +79,10 @@ index 7d5c37f..92cb90d 100644
extern unsigned long mmap_region(struct file *file, unsigned long addr,
unsigned long len, unsigned long flags,
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
-index 26574c7..54a063d 100644
+index 3cc3062..b42f00b 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
-@@ -294,6 +294,9 @@ struct mm_struct {
+@@ -293,6 +293,9 @@ struct mm_struct {
unsigned long (*get_unmapped_area) (struct file *filp,
unsigned long addr, unsigned long len,
unsigned long pgoff, unsigned long flags);
@@ -84,10 +93,10 @@ index 26574c7..54a063d 100644
#endif
unsigned long mmap_base; /* base of mmap area */
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f45c0b2..7234f1d 100644
+index 81a173c..3f9f5c4 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
-@@ -391,6 +391,10 @@ extern void arch_pick_mmap_layout(struct mm_struct *mm);
+@@ -390,6 +390,10 @@ extern void arch_pick_mmap_layout(struct mm_struct *mm);
extern unsigned long
arch_get_unmapped_area(struct file *, unsigned long, unsigned long,
unsigned long, unsigned long);
@@ -99,18 +108,18 @@ index f45c0b2..7234f1d 100644
arch_get_unmapped_area_topdown(struct file *filp, unsigned long addr,
unsigned long len, unsigned long pgoff,
diff --git a/mm/mmap.c b/mm/mmap.c
-index e8dcfc7..4bb6ac9 100644
+index 848ef52..65650a5 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
-@@ -31,6 +31,7 @@
+@@ -30,6 +30,7 @@
+ #include <linux/perf_event.h>
#include <linux/audit.h>
#include <linux/khugepaged.h>
- #include <linux/uprobes.h>
+#include <linux/random.h>
#include <asm/uaccess.h>
#include <asm/cacheflush.h>
-@@ -1013,7 +1014,8 @@ static unsigned long do_mmap_pgoff(struct file *file, unsigned long addr,
+@@ -995,7 +996,8 @@ static unsigned long do_mmap_pgoff(struct file *file, unsigned long addr,
/* Obtain the address to map to. we verify (or select) it and ensure
* that it represents a valid section of the address space.
*/
@@ -120,7 +129,7 @@ index e8dcfc7..4bb6ac9 100644
if (addr & ~PAGE_MASK)
return addr;
-@@ -1603,8 +1605,8 @@ void arch_unmap_area_topdown(struct mm_struct *mm, unsigned long addr)
+@@ -1580,8 +1582,8 @@ void arch_unmap_area_topdown(struct mm_struct *mm, unsigned long addr)
}
unsigned long
@@ -131,7 +140,7 @@ index e8dcfc7..4bb6ac9 100644
{
unsigned long (*get_area)(struct file *, unsigned long,
unsigned long, unsigned long, unsigned long);
-@@ -1617,7 +1619,11 @@ get_unmapped_area(struct file *file, unsigned long addr, unsigned long len,
+@@ -1594,7 +1596,11 @@ get_unmapped_area(struct file *file, unsigned long addr, unsigned long len,
if (len > TASK_SIZE)
return -ENOMEM;
@@ -144,7 +153,7 @@ index e8dcfc7..4bb6ac9 100644
if (file && file->f_op && file->f_op->get_unmapped_area)
get_area = file->f_op->get_unmapped_area;
addr = get_area(file, addr, len, pgoff, flags);
-@@ -1631,8 +1637,83 @@ get_unmapped_area(struct file *file, unsigned long addr, unsigned long len,
+@@ -1608,8 +1614,83 @@ get_unmapped_area(struct file *file, unsigned long addr, unsigned long len,
return arch_rebalance_pgtables(addr, len);
}
View
68 sys-kernel/geek-sources/files/3.4.0/fedora/linux-2.6-i386-nx-emulation.patch
@@ -1,5 +1,5 @@
diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h
-index 8bf1c06..49f8ab2 100644
+index e95822d..00b222f 100644
--- a/arch/x86/include/asm/desc.h
+++ b/arch/x86/include/asm/desc.h
@@ -5,6 +5,7 @@
@@ -8,9 +8,9 @@ index 8bf1c06..49f8ab2 100644
+#include <linux/mm_types.h>
#include <linux/smp.h>
- #include <linux/percpu.h>
-@@ -100,6 +101,9 @@ static inline int desc_empty(const void *ptr)
+ static inline void fill_ldt(struct desc_struct *desc, const struct user_desc *info)
+@@ -99,6 +100,9 @@ static inline int desc_empty(const void *ptr)
#define load_TLS(t, cpu) native_load_tls(t, cpu)
#define set_ldt native_set_ldt
@@ -20,7 +20,7 @@ index 8bf1c06..49f8ab2 100644
#define write_ldt_entry(dt, entry, desc) native_write_ldt_entry(dt, entry, desc)
#define write_gdt_entry(dt, entry, desc, type) native_write_gdt_entry(dt, entry, desc, type)
-@@ -405,4 +409,25 @@ static inline void set_system_intr_gate_ist(int n, void *addr, unsigned ist)
+@@ -404,4 +408,25 @@ static inline void set_system_intr_gate_ist(int n, void *addr, unsigned ist)
_set_gate(n, GATE_INTERRUPT, addr, 0x3, ist, __KERNEL_CS);
}
@@ -73,10 +73,10 @@ index 5f55e69..aba94f0 100644
#ifdef CONFIG_SMP
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
-index aa0f913..016fcf6 100644
+index a7d2db9..cc4ad60 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
-@@ -299,6 +299,12 @@ static inline void set_ldt(const void *addr, unsigned entries)
+@@ -298,6 +298,12 @@ static inline void set_ldt(const void *addr, unsigned entries)
{
PVOP_VCALL2(pv_cpu_ops.set_ldt, addr, entries);
}
@@ -104,10 +104,10 @@ index 8e8b9a4..cca421e 100644
void (*load_tls)(struct thread_struct *t, unsigned int cpu);
#ifdef CONFIG_X86_64
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
-index 82f29e7..d8597f2 100644
+index d43cad7..07da281 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
-@@ -841,6 +841,22 @@ static void __cpuinit identify_cpu(struct cpuinfo_x86 *c)
+@@ -839,6 +839,22 @@ static void __cpuinit identify_cpu(struct cpuinfo_x86 *c)
/* Filter out anything that depends on CPUID levels we don't have */
filter_cpuid_features(c, true);
@@ -131,10 +131,10 @@ index 82f29e7..d8597f2 100644
if (!c->x86_model_id[0]) {
const char *p;
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
-index 9ce8859..d19990c 100644
+index d90272e..cc594fc 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
-@@ -360,6 +360,9 @@ struct pv_cpu_ops pv_cpu_ops = {
+@@ -358,6 +358,9 @@ struct pv_cpu_ops pv_cpu_ops = {
.read_tscp = native_read_tscp,
.load_tr_desc = native_load_tr_desc,
.set_ldt = native_set_ldt,
@@ -145,10 +145,10 @@ index 9ce8859..d19990c 100644
.load_idt = native_load_idt,
.store_gdt = native_store_gdt,
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
-index 01d8d40..4c2ece1 100644
+index 324cd72..95618a4 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
-@@ -191,7 +191,10 @@ int copy_thread(unsigned long clone_flags, unsigned long sp,
+@@ -249,7 +249,10 @@ int copy_thread(unsigned long clone_flags, unsigned long sp,
void
start_thread(struct pt_regs *regs, unsigned long new_ip, unsigned long new_sp)
{
@@ -159,7 +159,7 @@ index 01d8d40..4c2ece1 100644
regs->fs = 0;
regs->ds = __USER_DS;
regs->es = __USER_DS;
-@@ -199,6 +202,11 @@ start_thread(struct pt_regs *regs, unsigned long new_ip, unsigned long new_sp)
+@@ -257,6 +260,11 @@ start_thread(struct pt_regs *regs, unsigned long new_ip, unsigned long new_sp)
regs->cs = __USER_CS;
regs->ip = new_ip;
regs->sp = new_sp;
@@ -171,7 +171,7 @@ index 01d8d40..4c2ece1 100644
/*
* Free the old FP and other extended state
*/
-@@ -264,6 +272,9 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -321,6 +329,9 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
*/
lazy_save_gs(prev->gs);
@@ -181,7 +181,7 @@ index 01d8d40..4c2ece1 100644
/*
* Load the per-thread Thread-Local Storage descriptor.
*/
-@@ -334,3 +345,40 @@ unsigned long get_wchan(struct task_struct *p)
+@@ -389,3 +400,40 @@ unsigned long get_wchan(struct task_struct *p)
return 0;
}
@@ -223,10 +223,10 @@ index 01d8d40..4c2ece1 100644
+ set_user_cs(&mm->context.user_cs, 0);
+}
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
-index 92d5756..662c2f9 100644
+index 4d42300..4cb14a1 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
-@@ -108,6 +108,78 @@ static inline void preempt_conditional_cli(struct pt_regs *regs)
+@@ -107,6 +107,78 @@ static inline void preempt_conditional_cli(struct pt_regs *regs)
dec_preempt_count();
}
@@ -305,7 +305,7 @@ index 92d5756..662c2f9 100644
static void __kprobes
do_trap(int trapnr, int signr, char *str, struct pt_regs *regs,
long error_code, siginfo_t *info)
-@@ -268,6 +340,29 @@ do_general_protection(struct pt_regs *regs, long error_code)
+@@ -263,6 +335,29 @@ do_general_protection(struct pt_regs *regs, long error_code)
if (!user_mode(regs))
goto gp_in_kernel;
@@ -335,7 +335,7 @@ index 92d5756..662c2f9 100644
tsk->thread.error_code = error_code;
tsk->thread.trap_nr = X86_TRAP_GP;
-@@ -646,20 +741,37 @@ do_device_not_available(struct pt_regs *regs, long error_code)
+@@ -650,20 +745,37 @@ do_device_not_available(struct pt_regs *regs, long error_code)
}
#ifdef CONFIG_X86_32
@@ -413,7 +413,7 @@ index 410531d..eb040ad 100644
"missing in CPU!\n");
} else {
diff --git a/arch/x86/mm/tlb.c b/arch/x86/mm/tlb.c
-index 3804471..3c7805c 100644
+index d6c0418..c15b765 100644
--- a/arch/x86/mm/tlb.c
+++ b/arch/x86/mm/tlb.c
@@ -7,6 +7,7 @@