[Erledigt] Nvidia Legacy 340.101/340.102 und Kernel 4.10/4.11/4.12

    [Erledigt] Nvidia Legacy 340.101/340.102 und Kernel 4.10/4.11/4.12

    Und auf ein Neues, aber dieses Mal mit einer (halbwegs bösen) Überraschung dabei.

    Neuer Kernel, altes Problem, aber man wird bei den üblichen Verdächtigen fündig.

    Die Patches, die man schon seit Wochen finden konnten, waren recht "rudimentär", eine Funktion, die man eher selten braucht ("CPU Hotplugging") wurde dabei deaktiviert, dann noch ein paar Kleinigkeiten, alles kein Problem, oder?

    Aber dann gab es zunächst eine -vermeintliche positive- Überraschung, NVidia hatte wenige Tage vor dem Release des 4.10er Kernels eine neue Version des 340er Legacytreibers (340.102) veröffentlicht, und man konnte zumindest hoffen, daß diese Version vielleicht ohne Patches gegen 4.10 baut, auch wenn NVidia eigentlich keine Treiber für noch nicht veröffentlichte Kernel herausbringt.

    Wie zu erwarten, Pustekuchen, also einen der gefundenen Patches für 4.10 angewandt, und da gab es die böse Überraschung:

    Der Treiber funktionierte nicht und die Fehlermeldung kam mir schwer bekannt vor.

    Langer Rede, gar kein Sinn, NVidia hatte in den 340.102 nicht mal die Kompatibilität für 4.9 eingebaut!

    *ARGH*

    Dazu fällt mir nur der Meister selbst ein:

    youtube.com/watch?v=iYWzMvlj2RQ

    Aber wo wir gerade bei Überraschungen waren, dieses Mal findet sich ein passender Patch bei einem der "nicht so üblichen" Verdächtigen.

    Quellcode

    1. wget -c http://archive.ubuntu.com/ubuntu/pool/restricted/n/nvidia-graphics-drivers-340/nvidia-graphics-drivers-340_340.102-0ubuntu1.diff.gz


    Ja, allen Ernstes bei *Buntu findet sich ein passender Patch, der im Gegensatz zu den ersten Patches für 4.10 auch keinen "dreckigen" Hack beinhaltet und eine Funktion (CPU HOTPLUG) einfach ausknipst.

    Quellcode

    1. zcat nvidia-graphics-drivers-340_340.102-0ubuntu1.diff.gz | patch -p1
    2. patching file debian/copyright
    3. patching file debian/create-uvm-dev-node
    4. patching file debian/dkms.conf
    5. patching file debian/dkms_nvidia.conf
    6. patching file debian/dkms_nvidia/patches/allow_sublevel_greater_than_5.patch
    7. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.0.patch
    8. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.10.patch
    9. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.11.patch
    10. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.13.patch
    11. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.14.patch
    12. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.18.patch
    13. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.6.patch
    14. patching file debian/dkms_nvidia/patches/buildfix_kernel_3.8.patch
    15. patching file debian/dkms_nvidia/patches/buildfix_kernel_4.0.patch
    16. patching file debian/dkms_nvidia/patches/buildfix_kernel_4.10.patch
    17. patching file debian/dkms_nvidia/patches/buildfix_kernel_4.6.patch
    18. patching file debian/dkms_nvidia/patches/buildfix_kernel_4.9.patch
    19. patching file debian/dkms_nvidia/patches/make-use-of-the-new-uapi-framework.patch
    20. patching file debian/dkms_nvidia/patches/register-VT-switch-requirements.patch
    21. patching file debian/dkms_nvidia/patches/replace-VM_RESERVED-with-VM_DONTEXPAND-and-VM_DONTDU.patch
    22. patching file debian/dkms_nvidia_uvm.conf
    23. patching file debian/glamor.conf
    24. patching file debian/headers/cl.h
    25. patching file debian/headers/cl_gl.h
    26. patching file debian/headers/cl_platform.h
    27. patching file debian/headers/cuda.h
    28. patching file debian/headers/cudaGL.h
    29. patching file debian/headers/cudaVDPAU.h
    30. patching file debian/headers/gl.h
    31. patching file debian/headers/glext.h
    32. patching file debian/headers/glx.h
    33. patching file debian/headers/glxext.h
    34. patching file debian/libcuda1-340.dirs
    35. patching file debian/libcuda1-340.install
    36. patching file debian/libcuda1-340.links
    37. patching file debian/libcuda1-340.links32
    38. patching file debian/libcuda1-340.shlibs
    39. patching file debian/nvidia-340-dev.install
    40. patching file debian/nvidia-340-dev.links
    41. patching file debian/nvidia-340-dev.preinst
    42. patching file debian/nvidia-340.README.Debian
    43. patching file debian/nvidia-340.dirs
    44. patching file debian/nvidia-340.dirs32
    45. patching file debian/nvidia-340.docs
    46. patching file debian/nvidia-340.grub-gfxpayload
    47. patching file debian/nvidia-340.install
    48. patching file debian/nvidia-340.links
    49. patching file debian/nvidia-340.links32
    50. patching file debian/nvidia-340.override
    51. patching file debian/nvidia-340.postinst
    52. patching file debian/nvidia-340.postrm
    53. patching file debian/nvidia-340.preinst
    54. patching file debian/nvidia-340.prerm
    55. patching file debian/nvidia-340.shlibs
    56. patching file debian/nvidia-libopencl1-340.dirs
    57. patching file debian/nvidia-libopencl1-340.install
    58. patching file debian/nvidia-libopencl1-340.links
    59. patching file debian/nvidia-libopencl1-340.links32
    60. patching file debian/nvidia-libopencl1-340.shlibs
    61. patching file debian/nvidia-opencl-icd-340.dirs
    62. patching file debian/nvidia-opencl-icd-340.install
    63. patching file debian/nvidia-opencl-icd-340.links
    64. patching file debian/nvidia-opencl-icd-340.links32
    65. patching file debian/nvidia_supported
    66. patching file debian/rules
    67. patching file debian/start-nvidia-persistenced
    68. patching file debian/stop-nvidia-persistenced
    69. patching file debian/substvars
    70. patching file debian/templates/control.in
    71. patching file debian/templates/copyright.in
    72. patching file debian/templates/dkms_nvidia.conf.in
    73. patching file debian/templates/libcuda1-flavour.dirs.in
    74. patching file debian/templates/libcuda1-flavour.install.in
    75. patching file debian/templates/libcuda1-flavour.links.in
    76. patching file debian/templates/libcuda1-flavour.links32.in
    77. patching file debian/templates/libcuda1-flavour.shlibs.in
    78. patching file debian/templates/nvidia-graphics-drivers-dev.install.in
    79. patching file debian/templates/nvidia-graphics-drivers-dev.links.in
    80. patching file debian/templates/nvidia-graphics-drivers-dev.preinst.in
    81. patching file debian/templates/nvidia-graphics-drivers.README.Debian.in
    82. patching file debian/templates/nvidia-graphics-drivers.dirs.in
    83. patching file debian/templates/nvidia-graphics-drivers.dirs32.in
    84. patching file debian/templates/nvidia-graphics-drivers.docs.in
    85. patching file debian/templates/nvidia-graphics-drivers.grub-gfxpayload.in
    86. patching file debian/templates/nvidia-graphics-drivers.install.in
    87. patching file debian/templates/nvidia-graphics-drivers.links.in
    88. patching file debian/templates/nvidia-graphics-drivers.links32.in
    89. patching file debian/templates/nvidia-graphics-drivers.override.in
    90. patching file debian/templates/nvidia-graphics-drivers.postinst.in
    91. patching file debian/templates/nvidia-graphics-drivers.postrm.in
    92. patching file debian/templates/nvidia-graphics-drivers.preinst.in
    93. patching file debian/templates/nvidia-graphics-drivers.prerm.in
    94. patching file debian/templates/nvidia-graphics-drivers.shlibs.in
    95. patching file debian/templates/nvidia-libopencl1-flavour.dirs.in
    96. patching file debian/templates/nvidia-libopencl1-flavour.install.in
    97. patching file debian/templates/nvidia-libopencl1-flavour.links.in
    98. patching file debian/templates/nvidia-libopencl1-flavour.links32.in
    99. patching file debian/templates/nvidia-libopencl1-flavour.shlibs.in
    100. patching file debian/templates/nvidia-opencl-icd-flavour.dirs.in
    101. patching file debian/templates/nvidia-opencl-icd-flavour.install.in
    102. patching file debian/templates/nvidia-opencl-icd-flavour.links.in
    103. patching file debian/templates/nvidia-opencl-icd-flavour.links32.in
    104. patching file debian/var-lib-snapd-lib-gl.mount


    Benötigt werden die Patches

    Quellcode

    1. buildfix_kernel_4.9.patch
    2. buildfix_kernel_4.10.patch


    welche man nach obigem Befehl im Verzeichnis "debian/dkms_nvidia/patches/" finden kann.

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE Leap 42.2 - Kernel 4.13.x - fluxbox 1.3.7

    Bitmessage: BM-2D8h8QZmvHfgbixWeiG1NDZHG1iXAhBz8K

    Kernel 4.11

    Für Kernel 4.11 wird zusätzlich zu den Patches aus dem vorigen Beitrag noch dieser hier benötigt:

    Unterschiede-Datei

    1. --- nv-drm.c.orig 2017-05-11 18:28:37.182882021 +0200
    2. +++ nv-drm.c 2017-05-11 18:32:36.902885752 +0200
    3. @@ -48,7 +48,11 @@
    4. return -ENODEV;
    5. }
    6. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    7. static int nv_drm_unload(
    8. +#else
    9. +static void nv_drm_unload(
    10. +#endif
    11. struct drm_device *dev
    12. )
    13. {
    14. @@ -60,11 +64,19 @@
    15. {
    16. BUG_ON(nvl->drm != dev);
    17. nvl->drm = NULL;
    18. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    19. return 0;
    20. +#else
    21. + return;
    22. +#endif
    23. }
    24. }
    25. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    26. return -ENODEV;
    27. +#else
    28. + return;
    29. +#endif
    30. }
    31. static void nv_gem_free(
    32. --- uvm/nvidia_uvm_linux.h.orig 2017-01-16 21:15:32.000000000 +0100
    33. +++ uvm/nvidia_uvm_linux.h 2017-05-11 18:34:56.478887925 +0200
    34. @@ -124,6 +124,9 @@
    35. #include <linux/delay.h> /* mdelay, udelay */
    36. #include <linux/sched.h> /* suser(), capable() replacement */
    37. +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
    38. +#include <linux/sched/signal.h>
    39. +#endif
    40. #include <linux/moduleparam.h> /* module_param() */
    41. #if !defined(NV_VMWARE)
    42. #include <asm/tlbflush.h> /* flush_tlb(), flush_tlb_all() */
    43. @@ -362,6 +365,7 @@
    44. void address_space_init_once(struct address_space *mapping);
    45. #endif
    46. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    47. #if !defined(NV_FATAL_SIGNAL_PENDING_PRESENT)
    48. static inline int __fatal_signal_pending(struct task_struct *p)
    49. {
    50. @@ -373,6 +377,7 @@
    51. return signal_pending(p) && __fatal_signal_pending(p);
    52. }
    53. #endif
    54. +#endif
    55. //
    56. // Before the current->cred structure was introduced, current->euid,
    57. --- uvm/nvidia_uvm_lite.c.orig 2017-05-11 18:28:40.150882067 +0200
    58. +++ uvm/nvidia_uvm_lite.c 2017-05-11 18:39:45.536100057 +0200
    59. @@ -818,7 +818,11 @@
    60. }
    61. #if defined(NV_VM_OPERATIONS_STRUCT_HAS_FAULT)
    62. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    63. int _fault(struct vm_area_struct *vma, struct vm_fault *vmf)
    64. +#else
    65. +int _fault(struct vm_fault *vmf)
    66. +#endif
    67. {
    68. #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
    69. unsigned long vaddr = (unsigned long)vmf->virtual_address;
    70. @@ -828,7 +832,11 @@
    71. struct page *page = NULL;
    72. int retval;
    73. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    74. retval = _fault_common(vma, vaddr, &page, vmf->flags);
    75. +#else
    76. + retval = _fault_common(NULL, vaddr, &page, vmf->flags);
    77. +#endif
    78. vmf->page = page;
    79. @@ -866,7 +874,11 @@
    80. // it's dealing with anonymous mapping (see handle_pte_fault).
    81. //
    82. #if defined(NV_VM_OPERATIONS_STRUCT_HAS_FAULT)
    83. +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
    84. int _sigbus_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
    85. +#else
    86. +int _sigbus_fault(struct vm_fault *vmf)
    87. +#endif
    88. {
    89. vmf->page = NULL;
    90. return VM_FAULT_SIGBUS;


    Hier das Ganze als base64 uuencoded:

    Quellcode

    1. begin-base64 644 nvidia340-4.11.diff
    2. LS0tIG52LWRybS5jLm9yaWcJMjAxNy0wNS0xMSAxODoyODozNy4xODI4ODIw
    3. MjEgKzAyMDAKKysrIG52LWRybS5jCTIwMTctMDUtMTEgMTg6MzI6MzYuOTAy
    4. ODg1NzUyICswMjAwCkBAIC00OCw3ICs0OCwxMSBAQAogICAgIHJldHVybiAt
    5. RU5PREVWOwogfQogCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVM
    6. X1ZFUlNJT04oNCwgMTEsIDApCiBzdGF0aWMgaW50IG52X2RybV91bmxvYWQo
    7. CisjZWxzZQorc3RhdGljIHZvaWQgbnZfZHJtX3VubG9hZCgKKyNlbmRpZgog
    8. ICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXYKICkKIHsKQEAgLTYwLDExICs2
    9. NCwxOSBAQAogICAgICAgICB7CiAgICAgICAgICAgICBCVUdfT04obnZsLT5k
    10. cm0gIT0gZGV2KTsKICAgICAgICAgICAgIG52bC0+ZHJtID0gTlVMTDsKKyNp
    11. ZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTig0LCAxMSwg
    12. MCkKICAgICAgICAgICAgIHJldHVybiAwOworI2Vsc2UKKyAgICAgICAgICAg
    13. IHJldHVybjsKKyNlbmRpZgogICAgICAgICB9CiAgICAgfQogCisjaWYgTElO
    14. VVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oNCwgMTEsIDApCiAg
    15. ICAgcmV0dXJuIC1FTk9ERVY7CisjZWxzZQorICAgIHJldHVybjsKKyNlbmRp
    16. ZgogfQogCiBzdGF0aWMgdm9pZCBudl9nZW1fZnJlZSgKLS0tIHV2bS9udmlk
    17. aWFfdXZtX2xpbnV4Lmgub3JpZwkyMDE3LTAxLTE2IDIxOjE1OjMyLjAwMDAw
    18. MDAwMCArMDEwMAorKysgdXZtL252aWRpYV91dm1fbGludXguaAkyMDE3LTA1
    19. LTExIDE4OjM0OjU2LjQ3ODg4NzkyNSArMDIwMApAQCAtMTI0LDYgKzEyNCw5
    20. IEBACiAjaW5jbHVkZSA8bGludXgvZGVsYXkuaD4gICAgICAgICAgICAvKiBt
    21. ZGVsYXksIHVkZWxheSAgICAgICAgICAgICAgICAgICAqLwogCiAjaW5jbHVk
    22. ZSA8bGludXgvc2NoZWQuaD4gICAgICAgICAgICAvKiBzdXNlcigpLCBjYXBh
    23. YmxlKCkgcmVwbGFjZW1lbnQgICAqLworI2lmIExJTlVYX1ZFUlNJT05fQ09E
    24. RSA+PSBLRVJORUxfVkVSU0lPTig0LCAxMSwgMCkKKyNpbmNsdWRlIDxsaW51
    25. eC9zY2hlZC9zaWduYWwuaD4KKyNlbmRpZgogI2luY2x1ZGUgPGxpbnV4L21v
    26. ZHVsZXBhcmFtLmg+ICAgICAgLyogbW9kdWxlX3BhcmFtKCkgICAgICAgICAg
    27. ICAgICAgICAgKi8KICNpZiAhZGVmaW5lZChOVl9WTVdBUkUpCiAjaW5jbHVk
    28. ZSA8YXNtL3RsYmZsdXNoLmg+ICAgICAgICAgICAvKiBmbHVzaF90bGIoKSwg
    29. Zmx1c2hfdGxiX2FsbCgpICAgICAqLwpAQCAtMzYyLDYgKzM2NSw3IEBACiAg
    30. ICAgdm9pZCBhZGRyZXNzX3NwYWNlX2luaXRfb25jZShzdHJ1Y3QgYWRkcmVz
    31. c19zcGFjZSAqbWFwcGluZyk7CiAjZW5kaWYKIAorI2lmIExJTlVYX1ZFUlNJ
    32. T05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDQsIDExLCAwKQogI2lmICFkZWZp
    33. bmVkKE5WX0ZBVEFMX1NJR05BTF9QRU5ESU5HX1BSRVNFTlQpCiAgICAgc3Rh
    34. dGljIGlubGluZSBpbnQgX19mYXRhbF9zaWduYWxfcGVuZGluZyhzdHJ1Y3Qg
    35. dGFza19zdHJ1Y3QgKnApCiAgICAgewpAQCAtMzczLDYgKzM3Nyw3IEBACiAg
    36. ICAgICAgIHJldHVybiBzaWduYWxfcGVuZGluZyhwKSAmJiBfX2ZhdGFsX3Np
    37. Z25hbF9wZW5kaW5nKHApOwogICAgIH0KICNlbmRpZgorI2VuZGlmCiAKIC8v
    38. CiAvLyBCZWZvcmUgdGhlIGN1cnJlbnQtPmNyZWQgc3RydWN0dXJlIHdhcyBp
    39. bnRyb2R1Y2VkLCBjdXJyZW50LT5ldWlkLAotLS0gdXZtL252aWRpYV91dm1f
    40. bGl0ZS5jLm9yaWcJMjAxNy0wNS0xMSAxODoyODo0MC4xNTA4ODIwNjcgKzAy
    41. MDAKKysrIHV2bS9udmlkaWFfdXZtX2xpdGUuYwkyMDE3LTA1LTExIDE4OjM5
    42. OjQ1LjUzNjEwMDA1NyArMDIwMApAQCAtODE4LDcgKzgxOCwxMSBAQAogfQog
    43. CiAjaWYgZGVmaW5lZChOVl9WTV9PUEVSQVRJT05TX1NUUlVDVF9IQVNfRkFV
    44. TFQpCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04o
    45. NCwgMTEsIDApCiBpbnQgX2ZhdWx0KHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAq
    46. dm1hLCBzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKKyNlbHNlCitpbnQgX2ZhdWx0
    47. KHN0cnVjdCB2bV9mYXVsdCAqdm1mKQorI2VuZGlmCiB7CiAjaWYgTElOVVhf
    48. VkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oNCwgMTAsIDApCiAgICAg
    49. dW5zaWduZWQgbG9uZyB2YWRkciA9ICh1bnNpZ25lZCBsb25nKXZtZi0+dmly
    50. dHVhbF9hZGRyZXNzOwpAQCAtODI4LDcgKzgzMiwxMSBAQAogICAgIHN0cnVj
    51. dCBwYWdlICpwYWdlID0gTlVMTDsKICAgICBpbnQgcmV0dmFsOwogCisjaWYg
    52. TElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oNCwgMTEsIDAp
    53. CiAgICAgcmV0dmFsID0gX2ZhdWx0X2NvbW1vbih2bWEsIHZhZGRyLCAmcGFn
    54. ZSwgdm1mLT5mbGFncyk7CisjZWxzZQorICAgIHJldHZhbCA9IF9mYXVsdF9j
    55. b21tb24oTlVMTCwgdmFkZHIsICZwYWdlLCB2bWYtPmZsYWdzKTsKKyNlbmRp
    56. ZgogCiAgICAgdm1mLT5wYWdlID0gcGFnZTsKIApAQCAtODY2LDcgKzg3NCwx
    57. MSBAQAogLy8gaXQncyBkZWFsaW5nIHdpdGggYW5vbnltb3VzIG1hcHBpbmcg
    58. KHNlZSBoYW5kbGVfcHRlX2ZhdWx0KS4KIC8vCiAjaWYgZGVmaW5lZChOVl9W
    59. TV9PUEVSQVRJT05TX1NUUlVDVF9IQVNfRkFVTFQpCisjaWYgTElOVVhfVkVS
    60. U0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oNCwgMTEsIDApCiBpbnQgX3Np
    61. Z2J1c19mYXVsdChzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgc3RydWN0
    62. IHZtX2ZhdWx0ICp2bWYpCisjZWxzZQoraW50IF9zaWdidXNfZmF1bHQoc3Ry
    63. dWN0IHZtX2ZhdWx0ICp2bWYpCisjZW5kaWYKIHsKICAgICB2bWYtPnBhZ2Ug
    64. PSBOVUxMOwogICAgIHJldHVybiBWTV9GQVVMVF9TSUdCVVM7Cg==
    65. ====


    Wie man daraus den Patch erstellen kann, habe ich in folgendem Beitrag beschrieben

    Nvidia Legacy 340.98/340.101 und Kernel 4.9

    die Ausgabedatei heißt (bei richtiger Anwendung von uudecode) "nvidia340-4.11.diff".

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE Leap 42.2 - Kernel 4.13.x - fluxbox 1.3.7

    Bitmessage: BM-2D8h8QZmvHfgbixWeiG1NDZHG1iXAhBz8K
    Im Kernel 4.11.1 aus Kernel-Stable ist aber der drm Patch enthalten, muss man da trotzdem noch patchen?

    Quellcode

    1. rpm -q --changelog kernel-default | grep -iA5 'Mai 15 2017'
    2. * Mo Mai 15 2017 jslaby@suse.cz
    3. - Linux 4.11.1 (bnc#1012628 bnc#1038615).
    4. - Delete
    5. patches.fixes/refcount-change-EXPORT_SYMBOL-markings.patch.
    6. - commit c31e8e6

    Quellcode

    1. uname -a
    2. Linux linux64 4.11.1-1.ga37d575-default #1 SMP PREEMPT Mon May 15 14:33:13 UTC 2017 (a37d575) x86_64 x86_64 x86_64 GNU/Linux


    Dieser Patch ist momentan noch nicht im Tumbleweed Kernel enthalten.
    Eben gegen die aktuellen Pakete aus Kernel:stable

    Quellcode

    1. kernel-default-devel-4.11.1-1.1.ga37d575.x86_64.rpm
    2. kernel-devel-4.11.1-1.1.ga37d575.noarch.rpm
    3. kernel-macros-4.11.1-1.1.ga37d575.noarch.rpm
    4. kernel-syms-4.11.1-1.1.ga37d575.x86_64.rpm


    getestet und ja, man braucht den Patch.

    Wundert mich auch nicht, denn z.B. das hier

    Quellcode

    1. +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
    2. +#include <linux/sched/signal.h>
    3. +#endif


    musste ich auch bei mindestens einem anderen "out of tree" Treiber hinzufügen, damit er gegen 4.11.x baut.

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE Leap 42.2 - Kernel 4.13.x - fluxbox 1.3.7

    Bitmessage: BM-2D8h8QZmvHfgbixWeiG1NDZHG1iXAhBz8K

    And now for something completely ....

    .. the same.

    Für Kernel 4.12.x braucht es dann zusätzlich (=zusätzlich zu den ganzen Patches für 4.9-4.11 in den vorigen Beiträgen) noch diesen Patch

    raw.githubusercontent.com/Hosh…40/files/linux-4.12.patch

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE Leap 42.2 - Kernel 4.13.x - fluxbox 1.3.7

    Bitmessage: BM-2D8h8QZmvHfgbixWeiG1NDZHG1iXAhBz8K

    Neu

    Mit dem Release der Treiberversion 340.104 durch NVIDIA werden die obigen Patches zumindest bis einschließlich Kernel 4.13 nicht mehr benötigt.

    Deshalb

    a) Licht aus

    und

    b) auf ein Neues im nächsten Thread zu diesem Thema, wenn der 340.104 nicht mehr gegen eine neuere Kernelversion baut.

    Greetz,

    RM
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE Leap 42.2 - Kernel 4.13.x - fluxbox 1.3.7

    Bitmessage: BM-2D8h8QZmvHfgbixWeiG1NDZHG1iXAhBz8K