Компания NVIDIA представила (http://www.nvnews.net/vbulletin/showthread.php?p=2552177) релиз проприетарного видеодрайвера NVIDIA 295.49. Драйвер доступен для Linux (http://www.nvidia.com/object/linux-display-ia32-295.49-drive...), FreeBSD (http://www.nvidia.com/object/freebsd-x86-295.49-driver.html) и Solaris (http://www.nvidia.com/object/solaris-display-295.49-driver.html).
В новой версии добавлена поддержка GPU GeForce GTX 690 и устранено несколько проблем с производительностью. В частности, устранено падение производительности при использовании интегрированных GPU Geforce 6 и Geforce 7, а также решены проблемы с очень медленным открытием, перемещением и закрытием окон OpenGL-приложений на системах с картами Quadro FX 4600, Quadro FX 5600, GeForce 8800 GTX, GeForce 8800 GTS и GeForce 8800 Ultra.URL: http://www.nvnews.net/vbulletin/showthread.php?p=2552177
Новость: http://www.opennet.me/opennews/art.shtml?num=33773
Можно помедленее, я зыпысываю, ещё 302 не успел затестить... :)---
Патыч, для 3.4.0+, я не вдуплю, в каком Linux они нашли <asm/system.h>
diff -ur NVIDIA-Linux-x86_64-295.49/kernel/conftest.sh 295.49/kernel/conftest.sh
--- kernel/conftest.sh 2012-05-01 10:46:38.000000000 +0400
+++ kernel/conftest.sh 2012-05-04 22:19:39.463000001 +0400
@@ -512,7 +512,6 @@
# and if it as an 'event' member.
#
echo "$CONFTEST_PREAMBLE
- #include <asm/system.h>
#include <linux/pm.h>
void conftest_pm_message_t(pm_message_t state) {
pm_message_t *p = &state;
diff -ur NVIDIA-Linux-x86_64-295.49/kernel/nv-linux.h 295.49/kernel/nv-linux.h
--- kernel/nv-linux.h 2012-05-01 10:46:38.000000000 +0400
+++ kernel/nv-linux.h 2012-05-04 22:20:11.049000001 +0400
@@ -111,7 +111,6 @@
#include <linux/timer.h>
#include <asm/div64.h> /* do_div() */
-#include <asm/system.h> /* cli, sli, save_flags */
#include <asm/io.h> /* ioremap, virt_to_phys */
#include <asm/uaccess.h> /* access_ok */
#include <asm/page.h> /* PAGE_OFFSET */
Во, или даже так... Оказывается в 3.4.0 выкинули <asm/system.h>
Кстати, на дривер 302.07 тоже налазит.
--- kernel/conftest.sh 2012-05-01 10:46:38.000000000 +0400
+++ kernel/conftest.sh 2012-05-04 22:19:39.463000001 +0400
@@ -512,7 +512,6 @@
# and if it as an 'event' member.
#
echo "$CONFTEST_PREAMBLE
- #include <asm/system.h>
#include <linux/pm.h>
void conftest_pm_message_t(pm_message_t state) {
pm_message_t *p = &state;
--- kernel/nv-linux.h 2012-05-01 10:46:38.000000000 +0400
+++ kernel/nv-linux.h 2012-05-04 23:35:26.315000020 +0400
@@ -111,7 +111,6 @@
#include <linux/timer.h>#include <asm/div64.h> /* do_div() */
-#include <asm/system.h> /* cli, sli, save_flags */
#include <asm/io.h> /* ioremap, virt_to_phys */
#include <asm/uaccess.h> /* access_ok */
#include <asm/page.h> /* PAGE_OFFSET */
@@ -994,9 +993,19 @@
# define NV_IS_SUSER() capable(CAP_SYS_ADMIN)
# define NV_PCI_DEVICE_NAME(dev) ((dev)->pretty_name)
# define NV_NUM_CPUS() num_online_cpus()
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)
+# include <asm/system.h>
# define NV_CLI() local_irq_disable()
# define NV_SAVE_FLAGS(eflags) local_save_flags(eflags)
# define NV_RESTORE_FLAGS(eflags) local_irq_restore(eflags)
+#else
+# include <asm/irqflags.h>
+# define NV_CLI() arch_local_irq_disable()
+# define NV_SAVE_FLAGS() arch_local_save_flags()
+# define NV_RESTORE_FLAGS(eflags) arch_local_irq_restore(eflags)
+#endif
+
# define NV_MAY_SLEEP() (!irqs_disabled() && !in_interrupt() && !NV_IN_ATOMIC())
# define NV_MODULE_PARAMETER(x) module_param(x, int, 0)
# define NV_MODULE_STRING_PARAMETER(x) module_param(x, charp, 0)
--- kernel/nv-pat.c 2012-04-27 22:50:12.000000000 +0400
+++ kernel/nv-pat.c 2012-05-04 23:48:45.842000011 +0400
@@ -109,7 +109,11 @@
return;
#endif+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)
NV_SAVE_FLAGS(eflags);
+#else
+ NV_SAVE_FLAGS();
+#endif
NV_CLI();
nv_disable_caches(&cr4);@@ -135,7 +139,11 @@
return;
#endif+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)
NV_SAVE_FLAGS(eflags);
+#else
+ NV_SAVE_FLAGS();
+#endif
NV_CLI();
nv_disable_caches(&cr4);
Значит SLI уже не будет?
SLI - это Scalable Link Interface, или чего?
Косячок был, флаги не сохранял...
diff -ur a/kernel/conftest.sh b/kernel/conftest.sh
--- a/kernel/conftest.sh 2012-04-27 22:50:12.000000000 +0400
+++ b/kernel/conftest.sh 2012-05-08 05:15:24.042000162 +0400
@@ -512,7 +512,6 @@
# and if it as an 'event' member.
#
echo "$CONFTEST_PREAMBLE
- #include <asm/system.h>
#include <linux/pm.h>
void conftest_pm_message_t(pm_message_t state) {
pm_message_t *p = &state;
Только в b/kernel/: Makefile
diff -ur a/kernel/nv-linux.h b/kernel/nv-linux.h
--- a/kernel/nv-linux.h 2012-04-27 22:50:12.000000000 +0400
+++ b/kernel/nv-linux.h 2012-05-08 05:37:30.129000164 +0400
@@ -111,7 +111,6 @@
#include <linux/timer.h>
#include <asm/div64.h> /* do_div() */
-#include <asm/system.h> /* cli, sli, save_flags */
#include <asm/io.h> /* ioremap, virt_to_phys */
#include <asm/uaccess.h> /* access_ok */
#include <asm/page.h> /* PAGE_OFFSET */
@@ -992,9 +991,19 @@
# define NV_IS_SUSER() capable(CAP_SYS_ADMIN)
# define NV_PCI_DEVICE_NAME(dev) ((dev)->pretty_name)
# define NV_NUM_CPUS() num_online_cpus()
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)
+# include <asm/system.h>
# define NV_CLI() local_irq_disable()
# define NV_SAVE_FLAGS(eflags) local_save_flags(eflags)
# define NV_RESTORE_FLAGS(eflags) local_irq_restore(eflags)
+#else
+# include <asm/irqflags.h>
+# define NV_CLI() arch_local_irq_disable()
+# define NV_SAVE_FLAGS(eflags) eflags = arch_local_save_flags()
+# define NV_RESTORE_FLAGS(eflags) arch_local_irq_restore(eflags)
+#endif
+
# define NV_MAY_SLEEP() (!irqs_disabled() && !in_interrupt() && !NV_IN_ATOMIC())
# define NV_MODULE_PARAMETER(x) module_param(x, int, 0)
# define NV_MODULE_STRING_PARAMETER(x) module_param(x, charp, 0)
А о каком патче речь? В ядре нет же проприетарного драйвера.
> А о каком патче речь? В ядре нет же проприетарного драйвера.И чё теперь? Патчи нельзя делать?
Да, починили. Теперь окна открываются не оооооооочень медленно, а подергиваясь и совсем не комфортно.
---
Fedora-16, KDE 4.8.2, GeForce 7025 / nForce 630a
> Теперь окна открываются не оооооооочень медленно, а подергиваясь и совсем не комфортно.Хромые начинают говорить, а слепые ходить, как только я сделаю пассы (C) Джефф Питерс
Поставил на Ubuntu 12.04. Видео 7000м. Заработал opengl, unity дергается как не в себя и виснет