Hello,

The linux kernel-3.13 is released.  I had no problems configuring
or compiling but the nvidia-drivers-331.38 will not load.  Fortunately
a quick fix for the impatient is here:

https://devtalk.nvidia.com/default/topic/644906/331-20-on-3-13-rc1-kernel/

However, the patch given in the forum will not work with the latest
nvidia-drivers-331.38.  I have made a diff, based on the same patch,
that does work.  Just add the attached file, nvidia331.38.patch to
/etc/portage/patches/x11-drivers/nvidia-drivers.

Another change in kernel-3.13 is that now the kernel microcode driver
will load firmware directly from /lib64/firmware.  The helper utility
microcode_ctl is no longer necessary to update the CPU microcode.
(Unless I am mistaken, this was not possible in earlier kernels.)

Gentoo, however, seems to still use microcode_ctl to update the microcode.
To change to the newer direct method, a converter utility is found
here:

https://fedorahosted.org/microcode_ctl/

The utility "intel-microcode2ucode" will translate the intel microcode
data into a form that is copied into /lib64/firmware.  The kernel can then
load the microcode directly at boot time without the need for microcode_ctl.

Again, I could be wrong but Gentoo has not moved up to this new method yet.

Frank Peters

diff -crB NVIDIA-Linux-x86_64-331.38-orig/kernel/nv-acpi.c NVIDIA-Linux-x86_64-331.38/kernel/nv-acpi.c
*** NVIDIA-Linux-x86_64-331.38-orig/kernel/nv-acpi.c	2014-01-08 21:49:24.000000000 -0500
--- NVIDIA-Linux-x86_64-331.38/kernel/nv-acpi.c	2014-01-20 12:19:56.000000000 -0500
***************
*** 303,309 ****
  
      if (pNvAcpiObject->notify_handler_installed)
      {
!         NV_ACPI_OS_WAIT_EVENTS_COMPLETE();
  
          // remove event notifier
          status = acpi_remove_notify_handler(device->handle, ACPI_DEVICE_NOTIFY, nv_acpi_event);
--- 303,311 ----
  
      if (pNvAcpiObject->notify_handler_installed)
      {
! #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0) 
!        NV_ACPI_OS_WAIT_EVENTS_COMPLETE();
! #endif
  
          // remove event notifier
          status = acpi_remove_notify_handler(device->handle, ACPI_DEVICE_NOTIFY, nv_acpi_event);

Reply via email to