rpms/catalyst-kmod/F-18 catalyst-kmod.spec, 1.71, 1.72 fix_proc_perms.patch, 1.1, 1.2 sources, 1.12, 1.13
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/catalyst-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv8639
Modified Files:
catalyst-kmod.spec fix_proc_perms.patch sources
Log Message:
* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.9-1
- Update to Catalyst 13.9 (internal version 13.152)
Index: catalyst-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-18/catalyst-kmod.spec,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -r1.71 -r1.72
--- catalyst-kmod.spec 5 Oct 2013 08:44:26 -0000 1.71
+++ catalyst-kmod.spec 10 Oct 2013 19:31:06 -0000 1.72
@@ -3,7 +3,7 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+#global buildforkernels newest
# Tweak to have debuginfo - part 1/2
%if 0%{?fedora} > 7
@@ -12,8 +12,8 @@
%endif
Name: catalyst-kmod
-Version: 13.8
-Release: 0.2.beta1%{?dist}.7
+Version: 13.9
+Release: 1%{?dist}
# Taken over by kmodtool
Summary: AMD display driver kernel module
Group: System Environment/Kernel
@@ -99,6 +99,9 @@
%changelog
+* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.9-1
+- Update to Catalyst 13.9 (internal version 13.152)
+
* Sat Oct 05 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 13.8-0.2.beta1.7
- Rebuilt for kernel
fix_proc_perms.patch:
drm_proc.h | 15 +++++++++
firegl_public.c | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
2 files changed, 98 insertions(+), 3 deletions(-)
Index: fix_proc_perms.patch
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-18/fix_proc_perms.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- fix_proc_perms.patch 7 Aug 2013 15:14:07 -0000 1.1
+++ fix_proc_perms.patch 10 Oct 2013 19:31:06 -0000 1.2
@@ -1,11 +1,259 @@
---- lib/modules/fglrx/build_mod/firegl_public.c 2013-07-29 18:54:07.000000000 +0300
-+++ lib/modules/fglrx/build_mod/firegl_public.c 2013-08-07 11:43:54.465936476 +0300
-@@ -821,7 +821,7 @@
+--- lib/modules/fglrx/build_mod/drm_proc.h
++++ lib/modules/fglrx/build_mod/drm_proc.h
+@@ -95,22 +95,35 @@ struct proc_dir_entry *DRM(proc_init)(dr
+ int i, j;
+ char name[64];
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ if (!minor) root = create_proc_entry("dri", S_IFDIR, NULL);
++#else
++ if (!minor) root = proc_mkdir("dri", NULL);
++#endif
+ if (!root) {
+ DRM_ERROR("Cannot create /proc/ati\n");
+ return NULL;
+ }
+
+ sprintf(name, "%d", minor);
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ *dev_root = create_proc_entry(name, S_IFDIR, root);
++#else
++ *dev_root = proc_mkdir(name, root);
++#endif
+ if (!*dev_root) {
+ DRM_ERROR("Cannot create /proc/ati/%s\n", name);
+ return NULL;
+ }
+
+ for (i = 0; i < DRM_PROC_ENTRIES; i++) {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent = create_proc_entry(DRM(proc_list)[i].name,
+ S_IFREG|S_IRUGO, *dev_root);
++#else
++ ent = proc_create_data(DRM(proc_list)[i].name,
++ S_IFREG|S_IRUGO, *dev_root, &firegl_fops, dev);
++#endif
+ if (!ent) {
+ DRM_ERROR("Cannot create /proc/ati/%s/%s\n",
+ name, DRM(proc_list)[i].name);
+@@ -121,8 +134,10 @@ struct proc_dir_entry *DRM(proc_init)(dr
+ if (!minor) remove_proc_entry("dri", NULL);
+ return NULL;
+ }
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent->read_proc = DRM(proc_list)[i].f;
+ ent->data = dev;
++#endif
+ }
+
+ return root;
+--- lib/modules/fglrx/build_mod/firegl_public.c
++++ lib/modules/fglrx/build_mod/firegl_public.c
+@@ -520,13 +526,24 @@ READ_PROC_WRAP(firegl_lock_info)
+ #ifdef DEBUG
+ READ_PROC_WRAP(drm_bq_info)
+ #endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ READ_PROC_WRAP(firegl_debug_proc_read)
++#endif
+ READ_PROC_WRAP(firegl_bios_version)
+ READ_PROC_WRAP(firegl_interrupt_info)
+ READ_PROC_WRAP(firegl_ptm_info)
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ static int firegl_debug_proc_write_wrap(void* file, const char *buffer, unsigned long count, void *data)
++#else
++static int firegl_debug_proc_read_wrap(struct seq_file *m, void* data)
+ {
++ return firegl_debug_proc_read(m->buf, m->from, m->index, m->size, m->size - m->count, data);
++}
++
++static ssize_t firegl_debug_proc_write_wrap(struct file *file, const char *buffer, size_t count, void *data)
++#endif
++{
+ return firegl_debug_proc_write(file, buffer, count, data);
+ }
+
+@@ -543,9 +560,14 @@ static int firegl_debug_proc_write_wrap(
+ *
+ * \return number of bytes written
+ */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ static int firegl_major_proc_read(char *buf, char **start, kcl_off_t offset,
+ int request, int* eof, void* data)
++#else
++static int firegl_major_proc_read(struct seq_file *m, void* data)
++#endif
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ int len = 0; // For ProcFS: fill buf from the beginning
+
+ KCL_DEBUG1(FN_FIREGL_PROC, "offset %d\n", (int)offset);
+@@ -561,6 +583,9 @@ static int firegl_major_proc_read(char *
+
+ len = snprintf(buf, request, "%d\n", major);
+
++#else
++ int len = seq_printf(m, "%d\n", major);
++#endif
+ KCL_DEBUG1(FN_FIREGL_PROC, "return len=%i\n",len);
+
+ return len;
+@@ -583,6 +608,29 @@ kcl_proc_list_t KCL_PROC_FileList[] =
+ { "NULL", NULL, NULL} // Terminate List!!!
+ };
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
++static int firegl_major_proc_open(struct inode *inode, struct file *file){
++ return single_open(file, firegl_major_proc_read, NULL);
++}
++
++static const struct file_operations firegl_major_fops = {
++ .open = firegl_major_proc_open,
++ .read = seq_read,
++ .llseek = seq_lseek,
++};
++
++static int firegl_debug_proc_open(struct inode *inode, struct file *file){
++ return single_open(file, firegl_debug_proc_read_wrap, NULL);
++}
++
++static const struct file_operations firegl_debug_fops = {
++ .open = firegl_debug_proc_open,
++ .write = firegl_debug_proc_write_wrap,
++ .read = seq_read,
++ .llseek = seq_lseek,
++};
++#endif
++
+ static struct proc_dir_entry *firegl_proc_init( device_t *dev,
+ int minor,
+ struct proc_dir_entry *root,
+@@ -595,7 +643,11 @@ static struct proc_dir_entry *firegl_pro
KCL_DEBUG1(FN_FIREGL_PROC, "minor %d, proc_list 0x%08lx\n", minor, (unsigned long)proc_list);
if (!minor)
{
-- root = KCL_create_proc_dir(NULL, "ati", S_IFDIR);
-+ root = KCL_create_proc_dir(NULL, "ati", S_IFDIR|S_IRUGO|S_IXUGO);
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ root = create_proc_entry("ati", S_IFDIR, NULL);
++#else
++ root = proc_mkdir("ati", NULL);
++#endif
}
if (!root)
+@@ -607,18 +659,28 @@ static struct proc_dir_entry *firegl_pro
+ if (minor == 0)
+ {
+ // Global major debice number entry
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent = create_proc_entry("major", S_IFREG|S_IRUGO, root);
++#else
++ ent = proc_create("major", S_IFREG|S_IRUGO, root, &firegl_major_fops);
++#endif
+ if (!ent)
+ {
+ remove_proc_entry("ati", NULL);
+ KCL_DEBUG_ERROR("Cannot create /proc/ati/major\n");
+ return NULL;
+ }
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent->read_proc = (read_proc_t*)firegl_major_proc_read;
++#endif
+ }
+
+ sprintf(name, "%d", minor);
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ *dev_root = create_proc_entry(name, S_IFDIR, root);
++#else
++ *dev_root = proc_mkdir(name, root);
++#endif
+ if (!*dev_root) {
+ remove_proc_entry("major", root);
+ remove_proc_entry("ati", NULL);
+@@ -628,7 +690,12 @@ static struct proc_dir_entry *firegl_pro
+
+ while (list->f || list->fops)
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent = create_proc_entry(list->name, S_IFREG|S_IRUGO, *dev_root);
++#else
++ ent = proc_create_data(list->name, S_IFREG|S_IRUGO, *dev_root, &firegl_fops,
++ (dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev));
++#endif
+ if (!ent)
+ {
+ KCL_DEBUG_ERROR("Cannot create /proc/ati/%s/%s\n", name, list->name);
+@@ -646,6 +713,7 @@ static struct proc_dir_entry *firegl_pro
+ return NULL;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ if (list->f)
+ {
+ ent->read_proc = (read_proc_t*)list->f;
+@@ -659,19 +727,25 @@ static struct proc_dir_entry *firegl_pro
+ {
+ ent->data = (dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev);
+ }
+-
++#endif
+ list++;
+ }
+
+ if (minor == 0)
+ {
+ // Global debug entry, only create it once
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent = create_proc_entry("debug", S_IFREG|S_IRUGO, root);
++#else
++ ent = proc_create_data("debug", S_IFREG|S_IRUGO, root, &firegl_debug_fops, dev);
++#endif
+ if (ent)
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent->read_proc = (read_proc_t*)firegl_debug_proc_read_wrap;
+ ent->write_proc = (write_proc_t*)firegl_debug_proc_write_wrap;
+ ent->data = dev;
++#endif
+ }
+ }
+
+@@ -6148,10 +6222,17 @@ void * KCL_create_proc_dir(void *root_di
+ struct proc_dir_entry *dir = NULL;
+
+ if (root_dir == NULL)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ dir = create_proc_entry(name, S_IFDIR | access, firegl_stub_root);
++#else
++ dir = proc_mkdir(name, firegl_stub_root);
++#endif
+ else
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ dir = create_proc_entry(name, S_IFDIR | access, (struct proc_dir_entry *)root_dir);
+-
++#else
++ dir = proc_mkdir(name, (struct proc_dir_entry *)root_dir);
++#endif
+ return dir;
+ }
+
+@@ -6180,13 +6261,18 @@ void KCL_create_proc_entry(void *root_di
+ if (root_dir == NULL || name == NULL)
+ return;
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent = create_proc_entry(name, access_mode, (struct proc_dir_entry *)root_dir);
+-
++#else
++ ent = proc_create_data(name, access_mode, (struct proc_dir_entry *)root_dir, &firegl_fops, private_data);
++#endif
+ if (ent)
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
+ ent->read_proc = (read_proc_t *)read_fn;
+ ent->write_proc = (write_proc_t *)write_fn;
+ ent->data = private_data;
++#endif
+ }
+ }
+
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-18/sources,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- sources 3 Aug 2013 12:31:02 -0000 1.12
+++ sources 10 Oct 2013 19:31:06 -0000 1.13
@@ -1 +1 @@
-c825603d6b0adeca862804fdd5093fb4 catalyst-kmod-data-13.8.tar.bz2
+113c704b666a380677c7161afad935b2 catalyst-kmod-data-13.9.tar.bz2
11 years, 1 month
rpms/xorg-x11-drv-catalyst/F-18 sources, 1.12, 1.13 xorg-x11-drv-catalyst.spec, 1.14, 1.15
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/xorg-x11-drv-catalyst/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7978
Modified Files:
sources xorg-x11-drv-catalyst.spec
Log Message:
* Thu Oct 03 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.9-1
- Update to Catalyst 13.9 (internal version 13.152)
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/xorg-x11-drv-catalyst/F-18/sources,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- sources 3 Aug 2013 12:29:34 -0000 1.12
+++ sources 10 Oct 2013 19:25:02 -0000 1.13
@@ -1,2 +1,2 @@
b8f56bc55aa70cb19dd12857fdc184cc xvba-sdk-0.74-404001.tar.gz
-87fc4a1d842856f4eb28cdff6b602466 amd-catalyst-13.8-beta1-linux-x86.x86_64.zip
+4d9bcb32f0e07504a484ae411f36e4fe amd-catalyst-13.9-linux-x86.x86_64.zip
Index: xorg-x11-drv-catalyst.spec
===================================================================
RCS file: /cvs/nonfree/rpms/xorg-x11-drv-catalyst/F-18/xorg-x11-drv-catalyst.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- xorg-x11-drv-catalyst.spec 3 Aug 2013 12:29:34 -0000 1.14
+++ xorg-x11-drv-catalyst.spec 10 Oct 2013 19:25:02 -0000 1.15
@@ -1,16 +1,16 @@
%global atilibdir %{_libdir}/catalyst
-%global amdrun amd-catalyst-13.8-beta1-linux-x86.x86_64.run
+%global amdrun amd-catalyst-13.9-linux-x86.x86_64.run
%global debug_package %{nil}
%global __strip /bin/true
Name: xorg-x11-drv-catalyst
-Version: 13.8
-Release: 0.1.beta1%{?dist}
+Version: 13.9
+Release: 1%{?dist}
Summary: AMD's proprietary driver for ATI graphic cards
Group: User Interface/X Hardware Support
License: Redistributable, no modification permitted
URL: http://www.ati.com/support/drivers/linux/radeon-linux.html
-Source0: http://www2.ati.com/drivers/beta/amd-catalyst-13.8-beta1-linux-x86.x86_64...
+Source0: http://www2.ati.com/drivers/linux/amd-catalyst-13.9-linux-x86.x86_64.zip
Source1: http://developer.amd.com/downloads/xvba-sdk-0.74-404001.tar.gz
Source2: catalyst-README.Fedora
Source3: amdcccle.desktop
@@ -405,6 +405,9 @@
%changelog
+* Thu Oct 03 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.9-1
+- Update to Catalyst 13.9 (internal version 13.152)
+
* Sat Aug 03 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.8-0.1.beta1
- Update to Catalyst 13.8beta1 (internal version 13.20.5)
11 years, 1 month
rpms/nvidia-173xx-kmod/F-18 fix-build-with-linux-3.11.patch, NONE, 1.1 nvidia-173xx-kmod.spec, 1.99, 1.100 3.7_kernel.patch, 1.2, NONE fix-build-with-linux-3.10.patch, 1.1, NONE
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nvidia-173xx-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7163
Modified Files:
nvidia-173xx-kmod.spec
Added Files:
fix-build-with-linux-3.11.patch
Removed Files:
3.7_kernel.patch fix-build-with-linux-3.10.patch
Log Message:
* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 173.14.37-3
- patch for 3.11 kernel
fix-build-with-linux-3.11.patch:
b/usr/src/nv/nv-i2c.c | 13 -
b/usr/src/nv/nv-linux.h | 1
b/usr/src/nv/nv.c | 376 ++++++++++++++++++++++++++++------------------
usr/src/nv/os-interface.c | 2
4 files changed, 242 insertions(+), 150 deletions(-)
--- NEW FILE fix-build-with-linux-3.11.patch ---
>From c3248bb6c976c112e9efa9e8f202590b2f9b40a5 Mon Sep 17 00:00:00 2001
From: Alberto Milone <alberto.milone(a)canonical.com>
Date: Tue, 18 Jun 2013 15:16:18 +0200
Subject: [PATCH 1/1] Add support for Linux 3.10
---
nv-i2c.c | 13 +--
nv-linux.h | 1 +
nv.c | 375 ++++++++++++++++++++++++++++++++++++++----------------------
3 files changed, 241 insertions(+), 148 deletions(-)
diff --git a/usr/src/nv/nv-i2c.c b/usr/src/nv/nv-i2c.c
index 143f9e4..aaee787 100644
--- a/usr/src/nv/nv-i2c.c
+++ b/usr/src/nv/nv-i2c.c
@@ -307,8 +307,6 @@ void* NV_API_CALL nv_i2c_add_adapter(nv_state_t *nv, U032 port)
BOOL NV_API_CALL nv_i2c_del_adapter(nv_state_t *nv, void *data)
{
struct i2c_adapter *pI2cAdapter = (struct i2c_adapter *)data;
- int osstatus = 0;
- BOOL wasReleased = FALSE;
#if defined(KERNEL_2_4)
if (!NV_WEAK_SYMBOL_PRESENT(i2c_add_adapter))
@@ -320,15 +318,10 @@ BOOL NV_API_CALL nv_i2c_del_adapter(nv_state_t *nv, void *data)
if (!pI2cAdapter) return FALSE;
// attempt release with the OS
- osstatus = i2c_del_adapter(pI2cAdapter);
-
- if (!osstatus)
- {
- os_free_mem(pI2cAdapter);
- wasReleased = TRUE;
- }
+ i2c_del_adapter(pI2cAdapter);
+ os_free_mem(pI2cAdapter);
- return wasReleased;
+ return TRUE;
}
#else // (defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE))
--- a/usr/src/nv/os-interface.c
+++ b/usr/src/nv/os-interface.c
@@ -292,7 +292,7 @@
NvU64 NV_API_CALL os_get_system_memory_size(void)
{
- return ((NvU64) num_physpages * PAGE_SIZE) / RM_PAGE_SIZE;
+ return ((NvU64) get_num_physpages() * PAGE_SIZE) / RM_PAGE_SIZE;
}
//
diff --git a/usr/src/nv/nv-linux.h b/usr/src/nv/nv-linux.h
index 963e059..9aac81a 100644
--- a/usr/src/nv/nv-linux.h
+++ b/usr/src/nv/nv-linux.h
@@ -163,6 +163,7 @@
#ifdef CONFIG_PROC_FS
#include <linux/proc_fs.h>
+#include <linux/seq_file.h>
#endif
#ifdef CONFIG_MTRR
diff --git a/usr/src/nv/nv.c b/usr/src/nv/nv.c
index f82e46f..570c266 100644
--- a/usr/src/nv/nv.c
+++ b/usr/src/nv/nv.c
@@ -291,7 +291,6 @@ void NV_API_CALL nv_verify_pci_config(nv_state_t *nv, BOOL check_the_bars)
/* nvos_ functions.. do not take a state device parameter */
static void nvos_proc_create(void);
-static void nvos_proc_remove_all(struct proc_dir_entry *);
static void nvos_proc_remove(void);
static int nvos_count_devices(nv_stack_t *);
@@ -333,12 +332,34 @@ void nv_kern_rc_timer(unsigned long);
static int nv_kern_apm_event(struct pm_dev *, pm_request_t, void *);
#endif
-static int nv_kern_read_cardinfo(char *, char **, off_t off, int, int *, void *);
-static int nv_kern_read_status(char *, char **, off_t off, int, int *, void *);
-static int nv_kern_read_registry(char *, char **, off_t off, int, int *, void *);
-static int nv_kern_read_agpinfo(char *, char **, off_t off, int, int *, void *);
-static int nv_kern_read_version(char *, char **, off_t off, int, int *, void *);
-static int nv_kern_read_text_file(char *, char **, off_t off, int, int *, void *);
+static const struct file_operations nv_procfs_text_fops;
+static const struct file_operations nv_procfs_read_card_info_fops;
+static const struct file_operations nv_procfs_version_fops;
+static const struct file_operations nv_procfs_read_agp_info_fops;
+static const struct file_operations nv_procfs_read_agp_info_gpu_fops;
+static const struct file_operations nv_procfs_read_agp_status_fops;
+static const struct file_operations nv_procfs_registry_fops;
+
+static int nv_procfs_show_text_file(struct seq_file *, void *);
+static int nv_procfs_open_text_file(struct inode *, struct file *);
+static void nvos_proc_add_text_file(struct proc_dir_entry *, const char *, const char *);
+
+static int nv_procfs_show_card_info(struct seq_file *, void *);
+static int nv_procfs_read_card_info(struct inode *, struct file *);
+
+static int nv_procfs_show_version(struct seq_file *, void *);
+static int nv_procfs_open_version(struct inode *, struct file *);
+
+static int nv_procfs_show_agp_info(struct seq_file *, void *);
+static int nv_procfs_read_agp_info(struct inode *, struct file *);
+
+static int nv_procfs_read_agp_info_gpu(struct inode *, struct file *file);
+static int nv_procfs_show_agp_status(struct seq_file *, void *);
+static int nv_procfs_read_agp_status(struct inode *, struct file *);
+
+static int nv_procfs_show_registry(struct seq_file *, void *);
+static int nv_procfs_open_registry(struct inode *, struct file *);
+
int nv_kern_ctl_open(struct inode *, struct file *);
int nv_kern_ctl_close(struct inode *, struct file *);
@@ -604,6 +625,12 @@ static struct pci_dev* nv_get_pci_device(nv_state_t *nv)
return NULL;
}
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,255)
+static inline void *PDE_DATA(const struct inode *inode) {
+ return PDE(inode)->data;
+}
+#endif
+
static void nvos_proc_create(void)
{
#ifdef CONFIG_PROC_FS
@@ -623,19 +650,19 @@ static void nvos_proc_create(void)
nv_state_t *nv;
nv_linux_state_t *nvl;
- proc_nvidia = create_proc_entry("driver/nvidia", d_flags, NULL);
+ proc_nvidia = proc_mkdir_mode("driver/nvidia", d_flags, NULL);
if (!proc_nvidia)
goto failed;
- proc_nvidia_cards = create_proc_entry("cards", d_flags, proc_nvidia);
+ proc_nvidia_cards = proc_mkdir_mode("cards", d_flags, proc_nvidia);
if (!proc_nvidia_cards)
goto failed;
- proc_nvidia_warnings = create_proc_entry("warnings", d_flags, proc_nvidia);
+ proc_nvidia_warnings = proc_mkdir_mode("warnings", d_flags, proc_nvidia);
if (!proc_nvidia_warnings)
goto failed;
- proc_nvidia_patches = create_proc_entry("patches", d_flags, proc_nvidia);
+ proc_nvidia_patches = proc_mkdir_mode("patches", d_flags, proc_nvidia);
if (!proc_nvidia_patches)
goto failed;
@@ -660,24 +687,19 @@ static void nvos_proc_create(void)
break;
sprintf(name, "%d", i++);
- entry = create_proc_entry(name, flags, proc_nvidia_cards);
+ entry = proc_create_data(name, flags, proc_nvidia_cards,
+ &nv_procfs_read_card_info_fops, nv);
if (!entry) {
NV_PCI_DEV_PUT(dev);
goto failed;
}
- entry->data = nv;
- entry->read_proc = nv_kern_read_cardinfo;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
-
if (nvos_find_agp_capability(dev)) {
/*
* Create the /proc/driver/nvidia/agp/{status,host-bridge,card}
* entries now that we know there's AGP hardware.
*/
- entry = create_proc_entry("agp", d_flags, proc_nvidia);
+ entry = proc_mkdir_mode("agp", d_flags, proc_nvidia);
if (!entry) {
NV_PCI_DEV_PUT(dev);
goto failed;
@@ -688,72 +710,78 @@ static void nvos_proc_create(void)
#endif
proc_nvidia_agp = entry;
- entry = create_proc_entry("status", flags, proc_nvidia_agp);
+ entry = proc_create_data("status", flags, proc_nvidia_agp,
+ &nv_procfs_read_agp_status_fops, nv);
if (!entry) {
NV_PCI_DEV_PUT(dev);
goto failed;
}
- entry->data = nv;
- entry->read_proc = nv_kern_read_status;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
+ entry = proc_create("host-bridge", flags, proc_nvidia_agp,
+ &nv_procfs_read_agp_info_fops);
- entry = create_proc_entry("host-bridge", flags, proc_nvidia_agp);
if (!entry) {
NV_PCI_DEV_PUT(dev);
goto failed;
}
- entry->data = NULL;
- entry->read_proc = nv_kern_read_agpinfo;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
-
- entry = create_proc_entry("card", flags, proc_nvidia_agp);
+ entry = proc_create_data("card", flags, proc_nvidia_agp,
+ &nv_procfs_read_agp_info_gpu_fops, nv);
if (!entry) {
NV_PCI_DEV_PUT(dev);
goto failed;
}
- entry->data = nv;
- entry->read_proc = nv_kern_read_agpinfo;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
}
NV_PCI_DEV_PUT(dev);
}
- entry = create_proc_entry("version", flags, proc_nvidia);
+ entry = proc_create("version", flags, proc_nvidia, &nv_procfs_version_fops);
if (!entry)
goto failed;
- entry->read_proc = nv_kern_read_version;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
-
- entry = create_proc_entry("registry", flags, proc_nvidia);
+ entry = proc_create("registry", flags, proc_nvidia,
+ &nv_procfs_registry_fops);
if (!entry)
goto failed;
- entry->read_proc = nv_kern_read_registry;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
-
return;
failed:
nv_printf(NV_DBG_ERRORS, "NVRM: failed to create /proc entries!\n");
- nvos_proc_remove_all(proc_nvidia);
+ remove_proc_subtree("nvidia", proc_nvidia);
#endif
}
+static int
+nv_procfs_show_text_file(
+ struct seq_file *m,
+ void *v
+)
+{
+ seq_printf(m, "%s", (char *)m->private);
+
+ return 0;
+}
+
+static int
+nv_procfs_open_text_file(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_text_file, PDE_DATA(inode));
+}
+
+static const struct file_operations nv_procfs_text_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_text_file,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static void
nvos_proc_add_text_file(
struct proc_dir_entry *parent,
@@ -762,41 +790,18 @@ nvos_proc_add_text_file(
)
{
#ifdef CONFIG_PROC_FS
- struct proc_dir_entry *entry;
-
/* world readable file */
int flags = S_IFREG | S_IRUGO;
- entry = create_proc_entry(filename, flags, parent);
- if (!entry) return;
-
- entry->data = (void *)text;
- entry->read_proc = nv_kern_read_text_file;
-#if defined(NV_PROC_DIR_ENTRY_HAS_OWNER)
- entry->owner = THIS_MODULE;
-#endif
+ proc_create_data(filename, flags, parent, &nv_procfs_text_fops,
+ (void *)text);
#endif
}
-#ifdef CONFIG_PROC_FS
-static void nvos_proc_remove_all(struct proc_dir_entry *entry)
-{
- while (entry) {
- struct proc_dir_entry *next = entry->next;
- if (entry->subdir)
- nvos_proc_remove_all(entry->subdir);
- remove_proc_entry(entry->name, entry->parent);
- if (entry == proc_nvidia)
- break;
- entry = next;
- }
-}
-#endif
-
static void nvos_proc_remove(void)
{
#ifdef CONFIG_PROC_FS
- nvos_proc_remove_all(proc_nvidia);
+ remove_proc_subtree("nvidia", proc_nvidia);
#endif
}
@@ -3065,18 +3070,19 @@ void NV_API_CALL nv_set_dma_address_size(
}
static int
-nv_kern_read_cardinfo(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+nv_procfs_show_card_info(
+ struct seq_file *m,
+ void *v
+)
{
struct pci_dev *dev;
char *type, *fmt, tmpstr[NV_DEVICE_NAME_LENGTH];
- int len = 0, status;
+ int status;
U032 vbios_rev1, vbios_rev2, vbios_rev3, vbios_rev4, vbios_rev5;
nv_stack_t *sp = NULL;
nv_state_t *nv;
- nv = (nv_state_t *) data;
- *eof = 1;
+ nv = (nv_state_t *) m->private;
dev = nv_get_pci_device(nv);
if (!dev)
@@ -3094,38 +3100,38 @@ nv_kern_read_cardinfo(char *page, char **start, off_t off,
strcpy (tmpstr, "Unknown");
}
- len += sprintf(page+len, "Model: \t\t %s\n", tmpstr);
- len += sprintf(page+len, "IRQ: \t\t %d\n", nv->interrupt_line);
+ seq_printf(m, "Model: \t\t %s\n", tmpstr);
+ seq_printf(m, "IRQ: \t\t %d\n", nv->interrupt_line);
status = rm_get_vbios_version(sp, nv, &vbios_rev1, &vbios_rev2,
&vbios_rev3, &vbios_rev4, &vbios_rev5);
if (status < 0) {
/* before rm_init_adapter */
- len += sprintf(page+len, "Video BIOS: \t ??.??.??.??.??\n");
+ seq_printf(m, "Video BIOS: \t ??.??.??.??.??\n");
} else {
fmt = "Video BIOS: \t %02x.%02x.%02x.%02x.%02x\n";
- len += sprintf(page+len, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
+ seq_printf(m, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
vbios_rev4, vbios_rev5);
}
if (nvos_find_agp_capability(dev)) type = "AGP";
else if (nvos_find_pci_express_capability(dev)) type = "PCI-E";
else type = "PCI";
- len += sprintf(page+len, "Card Type: \t %s\n", type);
+ seq_printf(m, "Card Type: \t %s\n", type);
// Report the number of bits set in dev->dma_mask
- len += sprintf(page+len, "DMA Size: \t %d bits\n",
+ seq_printf(m, "DMA Size: \t %d bits\n",
nv_count_bits(dev->dma_mask));
- len += sprintf(page+len, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
- len += sprintf(page+len, "Bus Location: \t %02x.%02x.%x\n",
+ seq_printf(m, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
+ seq_printf(m, "Bus Location: \t %02x.%02x.%x\n",
nv->bus, nv->slot, PCI_FUNC(dev->devfn));
#ifdef DEBUG
do
{
int j;
for (j = 0; j < NV_GPU_NUM_BARS; j++)
- len += sprintf(page+len, "BAR%i: \t\t 0x%08x (%iMB)\n",
+ seq_printf(m, "BAR%i: \t\t 0x%08x (%iMB)\n",
j, nv->bars[j].address, nv->bars[j].size >> 20);
} while(0);
#endif
@@ -3133,35 +3139,68 @@ nv_kern_read_cardinfo(char *page, char **start, off_t off,
NV_KMEM_CACHE_FREE_STACK(sp);
NV_PCI_DEV_PUT(dev);
- return len;
+ return 0;
+}
+
+static int
+nv_procfs_read_card_info(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_card_info, PDE_DATA(inode));
}
+static const struct file_operations nv_procfs_read_card_info_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_read_card_info,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static int
-nv_kern_read_version(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+nv_procfs_show_version(
+ struct seq_file *m,
+ void *v
+)
{
- int len = 0;
- *eof = 1;
-
- len += sprintf(page+len, "NVRM version: %s\n", pNVRM_ID);
- len += sprintf(page+len, "GCC version: %s\n", NV_COMPILER);
-
- return len;
+ seq_printf(m, "NVRM version: %s\n", pNVRM_ID);
+ seq_printf(m, "GCC version: %s\n", NV_COMPILER);
+
+ return 0;
+}
+
+static int
+nv_procfs_open_version(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_version, NULL);
}
+static const struct file_operations nv_procfs_version_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_version,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static int
-nv_kern_read_agpinfo(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+nv_procfs_show_agp_info(
+ struct seq_file *m,
+ void *v
+)
{
struct pci_dev *dev;
char *fw, *sba;
u8 cap_ptr;
u32 status, command, agp_rate;
- int len = 0;
nv_state_t *nv;
- nv = (nv_state_t *) data;
- *eof = 1;
+ nv = (nv_state_t *) m->private;
if (nv) {
dev = nv_get_pci_device(nv);
@@ -3172,12 +3211,12 @@ nv_kern_read_agpinfo(char *page, char **start, off_t off,
if (!dev)
return 0;
- len += sprintf(page+len, "Host Bridge: \t ");
+ seq_printf(m, "Host Bridge: \t ");
#if defined(CONFIG_PCI_NAMES)
- len += sprintf(page+len, "%s\n", NV_PCI_DEVICE_NAME(dev));
+ seq_printf(m, "%s\n", NV_PCI_DEVICE_NAME(dev));
#else
- len += sprintf(page+len, "PCI device %04x:%04x\n",
+ seq_printf(m, "PCI device %04x:%04x\n",
dev->vendor, dev->device);
#endif
}
@@ -3191,40 +3230,74 @@ nv_kern_read_agpinfo(char *page, char **start, off_t off,
fw = (status & 0x00000010) ? "Supported" : "Not Supported";
sba = (status & 0x00000200) ? "Supported" : "Not Supported";
- len += sprintf(page+len, "Fast Writes: \t %s\n", fw);
- len += sprintf(page+len, "SBA: \t\t %s\n", sba);
+ seq_printf(m, "Fast Writes: \t %s\n", fw);
+ seq_printf(m, "SBA: \t\t %s\n", sba);
agp_rate = status & 0x7;
if (status & 0x8) // agp 3.0
agp_rate <<= 2;
- len += sprintf(page+len, "AGP Rates: \t %s%s%s%s\n",
+ seq_printf(m, "AGP Rates: \t %s%s%s%s\n",
(agp_rate & 0x00000008) ? "8x " : "",
(agp_rate & 0x00000004) ? "4x " : "",
(agp_rate & 0x00000002) ? "2x " : "",
(agp_rate & 0x00000001) ? "1x " : "");
- len += sprintf(page+len, "Registers: \t 0x%08x:0x%08x\n", status, command);
+ seq_printf(m, "Registers: \t 0x%08x:0x%08x\n", status, command);
NV_PCI_DEV_PUT(dev);
- return len;
+ return 0;
+}
+
+static int
+nv_procfs_read_agp_info(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_agp_info, NULL);
}
+static const struct file_operations nv_procfs_read_agp_info_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_read_agp_info,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static int
-nv_kern_read_status(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+nv_procfs_read_agp_info_gpu(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_agp_info, PDE_DATA(inode));
+}
+
+static const struct file_operations nv_procfs_read_agp_info_gpu_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_read_agp_info_gpu,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
+static int
+nv_procfs_show_agp_status(
+ struct seq_file *m,
+ void *v
+)
{
struct pci_dev *dev;
char *fw, *sba, *drv;
- int len = 0;
u8 cap_ptr;
u32 scratch;
u32 status, command, agp_rate;
nv_stack_t *sp = NULL;
nv_state_t *nv;
- nv = (nv_state_t *) data;
- *eof = 1;
+ nv = (nv_state_t *) m->private;
dev = nvos_get_agp_device_by_class(PCI_CLASS_BRIDGE_HOST);
if (!dev)
@@ -3246,10 +3319,10 @@ nv_kern_read_status(char *page, char **start, off_t off,
command &= scratch;
if (NV_AGP_ENABLED(nv) && (command & 0x100)) {
- len += sprintf(page+len, "Status: \t Enabled\n");
+ seq_printf(m, "Status: \t Enabled\n");
drv = NV_OSAGP_ENABLED(nv) ? "AGPGART" : "NVIDIA";
- len += sprintf(page+len, "Driver: \t %s\n", drv);
+ seq_printf(m, "Driver: \t %s\n", drv);
// mask off agp rate.
// If this is agp 3.0, we need to shift the value
@@ -3257,13 +3330,13 @@ nv_kern_read_status(char *page, char **start, off_t off,
if (status & 0x8) // agp 3.0
agp_rate <<= 2;
- len += sprintf(page+len, "AGP Rate: \t %dx\n", agp_rate);
+ seq_printf(m, "AGP Rate: \t %dx\n", agp_rate);
fw = (command & 0x00000010) ? "Enabled" : "Disabled";
- len += sprintf(page+len, "Fast Writes: \t %s\n", fw);
+ seq_printf(m, "Fast Writes: \t %s\n", fw);
sba = (command & 0x00000200) ? "Enabled" : "Disabled";
- len += sprintf(page+len, "SBA: \t\t %s\n", sba);
+ seq_printf(m, "SBA: \t\t %s\n", sba);
} else {
int agp_config = 0;
@@ -3274,7 +3347,7 @@ nv_kern_read_status(char *page, char **start, off_t off,
return 0;
}
- len += sprintf(page+len, "Status: \t Disabled\n\n");
+ seq_printf(m, "Status: \t Disabled\n\n");
/*
* If we find AGP is disabled, but the RM registry indicates it
@@ -3288,7 +3361,7 @@ nv_kern_read_status(char *page, char **start, off_t off,
rm_read_registry_dword(sp, nv, "NVreg", "XNvAGP", &agp_config);
if (agp_config != NVOS_AGP_CONFIG_DISABLE_AGP && NV_AGP_FAILED(nv)) {
- len += sprintf(page+len,
+ seq_printf(m,
"AGP initialization failed, please check the ouput \n"
"of the 'dmesg' command and/or your system log file \n"
"for additional information on this problem. \n");
@@ -3298,37 +3371,63 @@ nv_kern_read_status(char *page, char **start, off_t off,
}
NV_PCI_DEV_PUT(dev);
- return len;
+ return 0;
+}
+
+static int
+nv_procfs_read_agp_status(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_agp_status, PDE_DATA(inode));
}
+static const struct file_operations nv_procfs_read_agp_status_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_read_agp_status,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
extern nv_parm_t nv_parms[];
extern char *NVreg_RegistryDwords;
static int
-nv_kern_read_registry(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+nv_procfs_show_registry(
+ struct seq_file *m,
+ void *v
+)
{
- unsigned int i, len = 0;
+ unsigned int i;
nv_parm_t *entry;
- *eof = 1;
for (i = 0; (entry = &nv_parms[i])->name != NULL; i++)
- len += sprintf(page+len, "%s: %u\n", entry->name, *entry->data);
+ seq_printf(m, "%s: %u\n", entry->name, *entry->data);
- len += sprintf(page+len, "RegistryDwords: \"%s\"\n",
+ seq_printf(m, "RegistryDwords: \"%s\"\n",
(NVreg_RegistryDwords != NULL) ? NVreg_RegistryDwords : "");
- return len;
+ return 0;
}
static int
-nv_kern_read_text_file(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+nv_procfs_open_registry(
+ struct inode *inode,
+ struct file *file
+)
{
- *eof = 1;
- return sprintf(page, "%s", (char *)data);
+ return single_open(file, nv_procfs_show_registry, NULL);
}
+static const struct file_operations nv_procfs_registry_fops = {
+ .open = nv_procfs_open_registry,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
/***
*** EXPORTS to rest of resman
***/
--
1.7.9.5
Index: nvidia-173xx-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-173xx-kmod/F-18/nvidia-173xx-kmod.spec,v
retrieving revision 1.99
retrieving revision 1.100
diff -u -r1.99 -r1.100
--- nvidia-173xx-kmod.spec 5 Oct 2013 08:44:44 -0000 1.99
+++ nvidia-173xx-kmod.spec 10 Oct 2013 19:20:48 -0000 1.100
@@ -3,12 +3,12 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
Name: nvidia-173xx-kmod
Version: 173.14.37
# Taken over by kmodtool
-Release: 2%{?dist}.9
+Release: 3%{?dist}
Summary: NVIDIA 173xx display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -18,7 +18,7 @@
# http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linu...
Source0: nvidia-kmod-data-%{version}.tar.bz2
-Patch0: fix-build-with-linux-3.10.patch
+Patch0: fix-build-with-linux-3.11.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -90,6 +90,9 @@
%changelog
+* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 173.14.37-3
+- patch for 3.11 kernel
+
* Sat Oct 05 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 173.14.37-2.9
- Rebuilt for kernel
--- 3.7_kernel.patch DELETED ---
--- fix-build-with-linux-3.10.patch DELETED ---
11 years, 1 month
rpms/nvidia-304xx-kmod/F-18 nvidia_304.88_linux_3.11.patch, NONE, 1.1 nvidia-304xx-kmod.spec, 1.16, 1.17 nvidia_304.88_linux_3.10.patch, 1.1, NONE
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nvidia-304xx-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv5127
Modified Files:
nvidia-304xx-kmod.spec
Added Files:
nvidia_304.88_linux_3.11.patch
Removed Files:
nvidia_304.88_linux_3.10.patch
Log Message:
* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 304.88-3
- patch for 3.11 kernel
nvidia_304.88_linux_3.11.patch:
b/kernel/nv-i2c.c | 14 -
b/kernel/nv-procfs.c | 411 ++++++++++++++++++++++++++-------------------------
kernel/nv-linux.h | 4
3 files changed, 219 insertions(+), 210 deletions(-)
--- NEW FILE nvidia_304.88_linux_3.11.patch ---
diff -urN a/kernel/nv-i2c.c b/kernel/nv-i2c.c
--- a/kernel/nv-i2c.c 2013-03-27 17:26:51.000000000 -0400
+++ b/kernel/nv-i2c.c 2013-07-05 10:04:23.000000000 -0400
@@ -1,3 +1,4 @@
+
/* _NVRM_COPYRIGHT_BEGIN_
*
* Copyright 2005-2011 by NVIDIA Corporation. All rights reserved. All
@@ -311,8 +312,6 @@
BOOL NV_API_CALL nv_i2c_del_adapter(nv_state_t *nv, void *data)
{
struct i2c_adapter *pI2cAdapter = (struct i2c_adapter *)data;
- int osstatus = 0;
- BOOL wasReleased = FALSE;
#if defined(KERNEL_2_4)
if (!NV_WEAK_SYMBOL_PRESENT(i2c_add_adapter))
@@ -324,15 +323,10 @@
if (!pI2cAdapter) return FALSE;
// attempt release with the OS
- osstatus = i2c_del_adapter(pI2cAdapter);
-
- if (!osstatus)
- {
- os_free_mem(pI2cAdapter);
- wasReleased = TRUE;
- }
+ i2c_del_adapter(pI2cAdapter);
+ os_free_mem(pI2cAdapter);
- return wasReleased;
+ return TRUE;
}
#else // (defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE))
diff -urN a/kernel/nv-procfs.c b/kernel/nv-procfs.c
--- a/kernel/nv-procfs.c 2013-03-27 17:26:51.000000000 -0400
+++ b/kernel/nv-procfs.c 2013-07-05 10:12:52.000000000 -0400
@@ -60,60 +60,41 @@
__entry; \
})
-#define NV_CREATE_PROC_FILE(name,parent,__read_proc, \
- __write_proc,__fops,__data) \
- ({ \
- struct proc_dir_entry *__entry; \
- int __mode = (S_IFREG | S_IRUGO); \
- if ((NvUPtr)(__write_proc) != 0) \
- __mode |= S_IWUSR; \
- __entry = NV_CREATE_PROC_ENTRY(name, __mode, parent); \
- if (__entry != NULL) \
- { \
- if ((NvUPtr)(__read_proc) != 0) \
- __entry->read_proc = (__read_proc); \
- if ((NvUPtr)(__write_proc) != 0) \
- { \
- __entry->write_proc = (__write_proc); \
- __entry->proc_fops = (__fops); \
- } \
- __entry->data = (__data); \
- } \
- __entry; \
- })
+#define NV_PROC_RW (S_IFREG|S_IRUGO|S_IWUSR)
+#define NV_PROC_RO (S_IFREG|S_IRUGO)
#define NV_CREATE_PROC_DIR(name,parent) \
({ \
struct proc_dir_entry *__entry; \
int __mode = (S_IFDIR | S_IRUGO | S_IXUGO); \
- __entry = NV_CREATE_PROC_ENTRY(name, __mode, parent); \
+ __entry = proc_mkdir_mode(name, __mode, parent); \
__entry; \
})
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,255)
+static inline void *PDE_DATA(const struct inode *inode) {
+ return PDE(inode)->data;
+}
+#endif
+
#define NV_PROC_WRITE_BUFFER_SIZE (64 * RM_PAGE_SIZE)
static int
-nv_procfs_read_gpu_info(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_show_gpu_info(
+ struct seq_file *m,
+ void *v
)
{
- nv_state_t *nv = data;
+ nv_state_t *nv = m->private;
nv_linux_state_t *nvl = NV_GET_NVL_FROM_NV_STATE(nv);
struct pci_dev *dev = nvl->dev;
char *type, *fmt, tmpstr[NV_DEVICE_NAME_LENGTH];
- int len = 0, status;
+ int status;
NvU8 *uuid;
NvU32 vbios_rev1, vbios_rev2, vbios_rev3, vbios_rev4, vbios_rev5;
NvU32 fpga_rev1, fpga_rev2, fpga_rev3;
nv_stack_t *sp = NULL;
- *eof = 1;
-
NV_KMEM_CACHE_ALLOC_STACK(sp);
if (sp == NULL)
{
@@ -134,31 +115,31 @@
if (rm_get_device_name(sp, nv, dev->device, dev->subsystem_vendor,
dev->subsystem_device, NV_DEVICE_NAME_LENGTH,
tmpstr) != RM_OK)
- {
+ {
strcpy (tmpstr, "Unknown");
}
}
- len += sprintf(page+len, "Model: \t\t %s\n", tmpstr);
- len += sprintf(page+len, "IRQ: \t\t %d\n", nv->interrupt_line);
+ seq_printf(m, "Model: \t\t %s\n", tmpstr);
+ seq_printf(m, "IRQ: \t\t %d\n", nv->interrupt_line);
if (NV_IS_GVI_DEVICE(nv))
{
status = rm_gvi_get_firmware_version(sp, nv, &fpga_rev1, &fpga_rev2,
&fpga_rev3);
if (status != RM_OK)
- len += sprintf(page+len, "Firmware: \t ????.??.??\n");
+ seq_printf(m, "Firmware: \t ????.??.??\n");
else
{
fmt = "Firmware: \t %x.%x.%x\n";
- len += sprintf(page+len, fmt, fpga_rev1, fpga_rev2, fpga_rev3);
+ seq_printf(m, fmt, fpga_rev1, fpga_rev2, fpga_rev3);
}
}
else
{
if (rm_get_gpu_uuid(sp, nv, &uuid, NULL) == RM_OK)
{
- len += sprintf(page+len, "GPU UUID: \t %s\n", (char *)uuid);
+ seq_printf(m, "GPU UUID: \t %s\n", (char *)uuid);
os_free_mem(uuid);
}
@@ -166,12 +147,12 @@
&vbios_rev3, &vbios_rev4,
&vbios_rev5) != RM_OK)
{
- len += sprintf(page+len, "Video BIOS: \t ??.??.??.??.??\n");
+ seq_printf(m, "Video BIOS: \t ??.??.??.??.??\n");
}
else
{
fmt = "Video BIOS: \t %02x.%02x.%02x.%02x.%02x\n";
- len += sprintf(page+len, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
+ seq_printf(m, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
vbios_rev4, vbios_rev5);
}
}
@@ -182,12 +163,12 @@
type = "PCI-E";
else
type = "PCI";
- len += sprintf(page+len, "Bus Type: \t %s\n", type);
+ seq_printf(m, "Bus Type: \t %s\n", type);
- len += sprintf(page+len, "DMA Size: \t %d bits\n",
+ seq_printf(m, "DMA Size: \t %d bits\n",
nv_count_bits(dev->dma_mask));
- len += sprintf(page+len, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
- len += sprintf(page+len, "Bus Location: \t %04x:%02x.%02x.%x\n",
+ seq_printf(m, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
+ seq_printf(m, "Bus Location: \t %04x:%02x.%02x.%x\n",
nv->domain, nv->bus, nv->slot, PCI_FUNC(dev->devfn));
#if defined(DEBUG)
do
@@ -195,7 +176,7 @@
int j;
for (j = 0; j < NV_GPU_NUM_BARS; j++)
{
- len += sprintf(page+len, "BAR%u: \t\t 0x%llx (%lluMB)\n",
+ seq_printf(m, "BAR%u: \t\t 0x%llx (%lluMB)\n",
j, nv->bars[j].address, (nv->bars[j].size >> 20));
}
} while (0);
@@ -203,26 +184,120 @@
NV_KMEM_CACHE_FREE_STACK(sp);
- return len;
+ return 0;
}
static int
-nv_procfs_read_version(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_open_gpu_info(
+ struct inode *inode,
+ struct file *file
)
{
- int len = 0;
- *eof = 1;
+ return single_open(file, nv_procfs_show_gpu_info, PDE_DATA(inode));
+}
- len += sprintf(page+len, "NVRM version: %s\n", pNVRM_ID);
- len += sprintf(page+len, "GCC version: %s\n", NV_COMPILER);
+static const struct file_operations nv_procfs_gpu_info_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_gpu_info,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
- return len;
+static int
+nv_procfs_show_version(
+ struct seq_file *m,
+ void *v
+)
+{
+ seq_printf(m, "NVRM version: %s\n", pNVRM_ID);
+ seq_printf(m, "GCC version: %s\n", NV_COMPILER);
+
+ return 0;
+}
+
+static int
+nv_procfs_open_version(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_version, NULL);
+}
+
+static const struct file_operations nv_procfs_version_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_version,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
+static int
+nv_procfs_show_registry(
+ struct seq_file *m,
+ void *v
+)
+{
+ nv_state_t *nv = m->private;
+ nv_linux_state_t *nvl = NULL;
+ char *registry_keys;
+
+ if (nv != NULL)
+ nvl = NV_GET_NVL_FROM_NV_STATE(nv);
+ registry_keys = ((nvl != NULL) ?
+ nvl->registry_keys : nv_registry_keys);
+
+ seq_printf(m, "Binary: \"%s\"\n", registry_keys);
+
+ return 0;
+}
+
+static ssize_t
+nv_procfs_write_registry(
+ struct file *file,
+ const char __user *buffer,
+ size_t count,
+ loff_t *pos
+)
+{
+ int status = 0;
+ nv_file_private_t *nvfp = NV_GET_FILE_PRIVATE(file);
+ char *proc_buffer;
+ unsigned long bytes_left;
+
+ down(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
+
+ bytes_left = (NV_PROC_WRITE_BUFFER_SIZE - nvfp->off - 1);
+
+ if (count == 0)
+ {
+ status = -EINVAL;
+ goto done;
+ }
+ else if ((bytes_left == 0) || (count > bytes_left))
+ {
+ status = -ENOSPC;
+ goto done;
+ }
+
+ proc_buffer = &((char *)nvfp->data)[nvfp->off];
+
+ if (copy_from_user(proc_buffer, buffer, count))
+ {
+ nv_printf(NV_DBG_ERRORS, "NVRM: failed to copy in proc data!\n");
+ status = -EFAULT;
+ }
+ else
+ {
+ nvfp->proc_data = PDE_DATA(file->f_inode);
+ nvfp->off += count;
+ }
+
+done:
+ up(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
+
+ return ((status < 0) ? status : count);
}
static struct pci_dev *nv_get_agp_device_by_class(unsigned int class)
@@ -432,7 +507,7 @@
nv_stack_t *sp = NULL;
if (0 == (file->f_mode & FMODE_WRITE))
- return 0;
+ return single_open(file, nv_procfs_show_registry, PDE_DATA(inode));
nvfp = nv_alloc_file_private();
if (nvfp == NULL)
@@ -481,6 +556,9 @@
RM_STATUS rm_status;
int rc = 0;
+ if (0 == (file->f_mode & FMODE_WRITE))
+ return single_release(inode, file);
+
nvfp = NV_GET_FILE_PRIVATE(file);
if (nvfp == NULL)
return 0;
@@ -545,122 +623,84 @@
return rc;
}
-static struct file_operations nv_procfs_registry_fops = {
+static const struct file_operations nv_procfs_registry_fops = {
.open = nv_procfs_open_registry,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .write = nv_procfs_write_registry,
.release = nv_procfs_close_registry,
};
static int
-nv_procfs_read_params(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_show_params(
+ struct seq_file *m,
+ void *v
)
{
unsigned int i;
- int len = 0;
nv_parm_t *entry;
- *eof = 1;
for (i = 0; (entry = &nv_parms[i])->name != NULL; i++)
- len += sprintf(page+len, "%s: %u\n", entry->name, *entry->data);
+ seq_printf(m, "%s: %u\n", entry->name, *entry->data);
- len += sprintf(page+len, "RegistryDwords: \"%s\"\n",
+ seq_printf(m, "RegistryDwords: \"%s\"\n",
(NVreg_RegistryDwords != NULL) ? NVreg_RegistryDwords : "");
- len += sprintf(page+len, "RmMsg: \"%s\"\n",
+seq_printf(m, "RmMsg: \"%s\"\n",
(NVreg_RmMsg != NULL) ? NVreg_RmMsg : "");
- return len;
+ return 0;
}
static int
-nv_procfs_read_registry(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
-)
+nv_procfs_open_params(
+ struct inode *inode,
+ struct file *file
+)
{
- nv_state_t *nv = data;
- nv_linux_state_t *nvl = NULL;
- char *registry_keys;
-
- if (nv != NULL)
- nvl = NV_GET_NVL_FROM_NV_STATE(nv);
- registry_keys = ((nvl != NULL) ?
- nvl->registry_keys : nv_registry_keys);
- *eof = 1;
- return sprintf(page, "Binary: \"%s\"\n", registry_keys);
+return single_open(file, nv_procfs_show_params, NULL);
}
+
+
+static const struct file_operations nv_procfs_params_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_params,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static int
-nv_procfs_write_registry(
- struct file *file,
- const char *buffer,
- unsigned long count,
- void *data
+nv_procfs_show_text_file(
+ struct seq_file *m,
+ void *v
)
{
- int status = 0;
- nv_file_private_t *nvfp = NV_GET_FILE_PRIVATE(file);
- char *proc_buffer;
- unsigned long bytes_left;
+ seq_printf(m, "%s", (char *)m->private);
- down(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
-
- bytes_left = (NV_PROC_WRITE_BUFFER_SIZE - nvfp->off - 1);
-
- if (count == 0)
- {
- status = -EINVAL;
- goto done;
- }
- else if ((bytes_left == 0) || (count > bytes_left))
- {
- status = -ENOSPC;
- goto done;
- }
-
- proc_buffer = &((char *)nvfp->data)[nvfp->off];
-
- if (copy_from_user(proc_buffer, buffer, count))
- {
- nv_printf(NV_DBG_ERRORS, "NVRM: failed to copy in proc data!\n");
- status = -EFAULT;
- }
- else
- {
- nvfp->proc_data = data;
- nvfp->off += count;
- }
-
-done:
- up(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
-
- return ((status < 0) ? status : (int)count);
+ return 0;
}
static int
-nv_procfs_read_text_file(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_open_text_file(
+ struct inode *inode,
+ struct file *file
)
{
- *eof = 1;
- return sprintf(page, "%s", (char *)data);
+ return single_open(file, nv_procfs_show_text_file, PDE_DATA(inode));
}
+
+static const struct file_operations nv_procfs_text_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_text_file,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static void
nv_procfs_add_text_file(
struct proc_dir_entry *parent,
@@ -668,22 +708,7 @@
const char *text
)
{
- NV_CREATE_PROC_FILE(filename, parent,
- nv_procfs_read_text_file, NULL, NULL, (void *)text);
-}
-
-static void nv_procfs_unregister_all(struct proc_dir_entry *entry)
-{
- while (entry)
- {
- struct proc_dir_entry *next = entry->next;
- if (entry->subdir)
- nv_procfs_unregister_all(entry->subdir);
- remove_proc_entry(entry->name, entry->parent);
- if (entry == proc_nvidia)
- break;
- entry = next;
- }
+ proc_create_data(filename, NV_PROC_RO, parent, &nv_procfs_text_fops, (void *)text);
}
#endif
@@ -713,26 +738,11 @@
if (!proc_nvidia)
goto failed;
- entry = NV_CREATE_PROC_FILE("params", proc_nvidia,
- nv_procfs_read_params, NULL, NULL, NULL);
+ entry = proc_create("params", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
if (!entry)
goto failed;
- /*
- * entry->proc_fops originally points to a constant
- * structure, so to add more methods for the
- * binary registry write path, we need to replace the
- * said entry->proc_fops with a new fops structure.
- * However, in preparation for this, we need to preserve
- * the procfs read() and write() operations.
- */
- nv_procfs_registry_fops.read = entry->proc_fops->read;
- nv_procfs_registry_fops.write = entry->proc_fops->write;
-
- entry = NV_CREATE_PROC_FILE("registry", proc_nvidia,
- nv_procfs_read_registry,
- nv_procfs_write_registry,
- &nv_procfs_registry_fops, NULL);
+ entry = proc_create("registry", NV_PROC_RW, proc_nvidia, &nv_procfs_registry_fops);
if (!entry)
goto failed;
@@ -753,8 +763,7 @@
nv_procfs_add_text_file(proc_nvidia_patches, "README", __README_patches);
- entry = NV_CREATE_PROC_FILE("version", proc_nvidia,
- nv_procfs_read_version, NULL, NULL, NULL);
+ entry = proc_create("version", NV_PROC_RO, proc_nvidia, &nv_procfs_version_fops);
if (!entry)
goto failed;
@@ -771,15 +780,11 @@
if (!proc_nvidia_gpu)
goto failed;
- entry = NV_CREATE_PROC_FILE("information", proc_nvidia_gpu,
- nv_procfs_read_gpu_info, NULL, NULL, nv);
+ entry = proc_create_data("information", NV_PROC_RO, proc_nvidia_gpu, &nv_procfs_gpu_info_fops, nv);
if (!entry)
goto failed;
- entry = NV_CREATE_PROC_FILE("registry", proc_nvidia_gpu,
- nv_procfs_read_registry,
- nv_procfs_write_registry,
- &nv_procfs_registry_fops, nv);
+ entry = proc_create_data("registry", NV_PROC_RW, proc_nvidia_gpu, &nv_procfs_registry_fops, nv);
if (!entry)
goto failed;
@@ -788,28 +793,34 @@
proc_nvidia_agp = NV_CREATE_PROC_DIR("agp", proc_nvidia);
if (!proc_nvidia_agp)
goto failed;
-
- entry = NV_CREATE_PROC_FILE("status", proc_nvidia_agp,
- nv_procfs_read_agp_status, NULL, NULL, nv);
- if (!entry)
- goto failed;
-
- entry = NV_CREATE_PROC_FILE("host-bridge", proc_nvidia_agp,
- nv_procfs_read_agp_info, NULL, NULL, NULL);
- if (!entry)
- goto failed;
-
- entry = NV_CREATE_PROC_FILE("gpu", proc_nvidia_agp,
- nv_procfs_read_agp_info, NULL, NULL, nv);
- if (!entry)
- goto failed;
+//
+// - entry = NV_CREATE_PROC_FILE("params", proc_nvidia,
+//- nv_procfs_read_params, NULL, NULL, NULL);
+//+ entry = proc_create("params", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
+
+ // entry = NV_CREATE_PROC_FILE("status", proc_nvidia_agp,
+ // nv_procfs_read_agp_status, NULL, NULL, nv);
+// entry = proc_create("status", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
+
+ // if (!entry)
+ // goto failed;
+
+ // entry = NV_CREATE_PROC_FILE("host-bridge", proc_nvidia_agp,
+ // nv_procfs_read_agp_info, NULL, NULL, NULL);
+ // if (!entry)
+ // goto failed;
+
+ //entry = NV_CREATE_PROC_FILE("gpu", proc_nvidia_agp,
+ // nv_procfs_read_agp_info, NULL, NULL, nv);
+ //if (!entry)
+ // goto failed;
}
}
#endif
return 0;
#if defined(CONFIG_PROC_FS)
failed:
- nv_procfs_unregister_all(proc_nvidia);
+ remove_proc_subtree("nvidia", proc_nvidia);
return -1;
#endif
}
@@ -817,6 +828,6 @@
void nv_unregister_procfs(void)
{
#if defined(CONFIG_PROC_FS)
- nv_procfs_unregister_all(proc_nvidia);
+ remove_proc_subtree("nvidia", proc_nvidia);
#endif
}
--- a/kernel/nv-linux.h
+++ b/kernel/nv-linux.h
@@ -1027,7 +1027,11 @@ static inline int nv_execute_on_all_cpus
#endif
#if !defined(NV_VMWARE)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
+#define NV_NUM_PHYSPAGES get_num_physpages()
+#else
#define NV_NUM_PHYSPAGES num_physpages
+#endif
#define NV_GET_CURRENT_PROCESS() current->tgid
#define NV_IN_ATOMIC() in_atomic()
#define NV_LOCAL_BH_DISABLE() local_bh_disable()
Index: nvidia-304xx-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-304xx-kmod/F-18/nvidia-304xx-kmod.spec,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- nvidia-304xx-kmod.spec 5 Oct 2013 08:44:53 -0000 1.16
+++ nvidia-304xx-kmod.spec 10 Oct 2013 19:05:46 -0000 1.17
@@ -3,12 +3,12 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
Name: nvidia-304xx-kmod
Version: 304.88
# Taken over by kmodtool
-Release: 2%{?dist}.7
+Release: 3%{?dist}
Summary: NVIDIA display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -19,7 +19,7 @@
Source0: nvidia-kmod-data-%{version}.tar.xz
Source11: nvidia-304xx-kmodtool-excludekernel-filterfile
-Patch0: nvidia_304.88_linux_3.10.patch
+Patch0: nvidia_304.88_linux_3.11.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -80,6 +80,9 @@
%changelog
+* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 304.88-3
+- patch for 3.11 kernel
+
* Sat Oct 05 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 304.88-2.7
- Rebuilt for kernel
--- nvidia_304.88_linux_3.10.patch DELETED ---
11 years, 1 month
rpms/nvidia-kmod/F-18 3.11_kernel.patch, NONE, 1.1 nvidia-kmod.spec, 1.167, 1.168
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nvidia-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv4356
Modified Files:
nvidia-kmod.spec
Added Files:
3.11_kernel.patch
Log Message:
* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:319.60-2
- patch for 3.11 kernel
3.11_kernel.patch:
nv-linux.h | 4 ++++
1 file changed, 4 insertions(+)
--- NEW FILE 3.11_kernel.patch ---
--- a/kernel/nv-linux.h
+++ b/kernel/nv-linux.h
@@ -1037,7 +1037,11 @@ static inline int nv_execute_on_all_cpus
#endif
#if !defined(NV_VMWARE)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
+#define NV_NUM_PHYSPAGES get_num_physpages()
+#else
#define NV_NUM_PHYSPAGES num_physpages
+#endif
#define NV_GET_CURRENT_PROCESS() current->tgid
#define NV_IN_ATOMIC() in_atomic()
#define NV_LOCAL_BH_DISABLE() local_bh_disable()
Index: nvidia-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-kmod/F-18/nvidia-kmod.spec,v
retrieving revision 1.167
retrieving revision 1.168
diff -u -r1.167 -r1.168
--- nvidia-kmod.spec 5 Oct 2013 08:45:02 -0000 1.167
+++ nvidia-kmod.spec 10 Oct 2013 19:00:49 -0000 1.168
@@ -3,13 +3,13 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
Name: nvidia-kmod
Epoch: 1
Version: 319.60
# Taken over by kmodtool
-Release: 1%{?dist}.1
+Release: 2%{?dist}
Summary: NVIDIA display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -20,7 +20,9 @@
Source0: nvidia-kmod-data-%{version}.tar.xz
-Source11: nvidia-kmodtool-excludekernel-filterfile
+Source11: nvidia-kmodtool-excludekernel-filterfile
+
+Patch0: 3.11_kernel.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -47,7 +49,7 @@
for arch in x86_64 i686 armv7hl
do
pushd nvidiapkg-${arch}
-echo "Nothing to patch"
+%patch0 -p1
popd
done
@@ -77,6 +79,9 @@
%changelog
+* Thu Oct 10 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:319.60-2
+- patch for 3.11 kernel
+
* Sat Oct 05 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 1:319.60-1.1
- Rebuilt for kernel
11 years, 1 month
rpms/smesh/devel smesh-OCE_0.13_port.patch, NONE, 1.1 smesh.spec, 1.8, 1.9
by Richard Shaw
Author: hobbes1069
Update of /cvs/nonfree/rpms/smesh/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv30773
Modified Files:
smesh.spec
Added Files:
smesh-OCE_0.13_port.patch
Log Message:
* Thu Oct 10 2013 Richard Shaw <hobbes1069(a)gmail.com> - 5.1.2.2-8.svn55
- Rebuild for OCE-0.13.
smesh-OCE_0.13_port.patch:
StdMeshers_RadialPrism_3D.cpp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- NEW FILE smesh-OCE_0.13_port.patch ---
diff -Naur smesh-5.1.2.2.svn55.orig/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp smesh-5.1.2.2.svn55/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp
--- smesh-5.1.2.2.svn55.orig/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp 2009-12-16 09:01:21.000000000 -0600
+++ smesh-5.1.2.2.svn55/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp 2013-09-22 21:30:43.995137618 -0500
@@ -46,6 +46,7 @@
#include <BRepBuilderAPI_MakeEdge.hxx>
#include <BRepTools.hxx>
#include <BRep_Tool.hxx>
+#include <BRepClass3d.hxx>
#include <TopExp_Explorer.hxx>
#include <TopoDS.hxx>
#include <TopoDS_Shell.hxx>
@@ -161,7 +163,7 @@
// get 2 shells
TopoDS_Solid solid = TopoDS::Solid( aShape );
- TopoDS_Shell outerShell = BRepTools::OuterShell( solid );
+ TopoDS_Shell outerShell = BRepClass3d::OuterShell( solid );
TopoDS_Shape innerShell;
int nbShells = 0;
for ( TopoDS_Iterator It (solid); It.More(); It.Next(), ++nbShells )
@@ -401,7 +403,7 @@
{
// get 2 shells
TopoDS_Solid solid = TopoDS::Solid( aShape );
- TopoDS_Shell outerShell = BRepTools::OuterShell( solid );
+ TopoDS_Shell outerShell = BRepClass3d::OuterShell( solid );
TopoDS_Shape innerShell;
int nbShells = 0;
for ( TopoDS_Iterator It (solid); It.More(); It.Next(), ++nbShells )
Index: smesh.spec
===================================================================
RCS file: /cvs/nonfree/rpms/smesh/devel/smesh.spec,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- smesh.spec 15 Jul 2013 17:42:41 -0000 1.8
+++ smesh.spec 10 Oct 2013 18:13:33 -0000 1.9
@@ -7,7 +7,7 @@
Name: smesh
Version: 5.1.2.2
-Release: 7.svn%{svnrev}%{?dist}
+Release: 8.svn%{svnrev}%{?dist}
Summary: OpenCascade based MESH framework
# This library is LGPLv2+ but links against the non-free library OCE.
@@ -24,6 +24,8 @@
Patch1: smesh-cmake_fixes.patch
Patch2: smesh-5.1.2.2-rm_f2c.patch
Patch3: smesh-5.1.2.2-pi_to_m_pi.patch
+# http://tracker.dev.opencascade.org/view.php?id=23487
+Patch4: smesh-OCE_0.13_port.patch
%if 0%{?rhel}
BuildRequires: cmake28
@@ -69,6 +71,7 @@
%patch1 -p1 -b .cmakefix
%patch2 -p1 -b .f2c
%patch3 -p1 -b .pi
+%patch4 -p1 -b .oce-0.13
dos2unix -k LICENCE.lgpl.txt
@@ -112,9 +115,15 @@
%changelog
+* Thu Oct 10 2013 Richard Shaw <hobbes1069(a)gmail.com> - 5.1.2.2-8.svn55
+- Rebuild for OCE-0.13.
+
* Mon Jul 15 2013 Richard Shaw <hobbes1069(a)gmail.com> - 5.1.2.2-7.svn55
- Rebuild for updated OCE.
+* Fri Jun 21 2013 Richard Shaw <hobbes1069(a)gmail.com> - 5.1.2.2-6.svn55
+- Rebuild for OCE 0.12.
+
* Fri Feb 15 2013 Richard Shaw <hobbes1069(a)gmail.com> - 5.1.2.2-1.svn55
- Update for compatibility with new OCE.
11 years, 1 month
rpms/freecad/devel freecad.spec,1.8,1.9
by Richard Shaw
Author: hobbes1069
Update of /cvs/nonfree/rpms/freecad/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29807
Modified Files:
freecad.spec
Log Message:
Bump release tag.
Index: freecad.spec
===================================================================
RCS file: /cvs/nonfree/rpms/freecad/devel/freecad.spec,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- freecad.spec 10 Oct 2013 18:04:56 -0000 1.8
+++ freecad.spec 10 Oct 2013 18:05:43 -0000 1.9
@@ -28,7 +28,7 @@
Name: freecad
Version: 0.13
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: A general purpose 3D CAD modeler
Group: Applications/Engineering
11 years, 1 month
rpms/freecad/devel freecad-0.13-OCE_0.13.patch, NONE, 1.1 freecad.spec, 1.7, 1.8
by Richard Shaw
Author: hobbes1069
Update of /cvs/nonfree/rpms/freecad/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29636
Modified Files:
freecad.spec
Added Files:
freecad-0.13-OCE_0.13.patch
Log Message:
* Thu Oct 10 2013 Richard Shaw <hobbes1069(a)gmail.com> - 0.13-4
- Rebuild for OCE 0.13.
freecad-0.13-OCE_0.13.patch:
TopoShapeSolidPyImp.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- NEW FILE freecad-0.13-OCE_0.13.patch ---
diff -Naur freecad-0.13.1830.orig/src/Mod/Part/App/TopoShapeSolidPyImp.cpp freecad-0.13.1830/src/Mod/Part/App/TopoShapeSolidPyImp.cpp
--- freecad-0.13.1830.orig/src/Mod/Part/App/TopoShapeSolidPyImp.cpp 2013-02-02 11:09:17.000000000 -0600
+++ freecad-0.13.1830/src/Mod/Part/App/TopoShapeSolidPyImp.cpp 2013-09-23 09:33:05.009740932 -0500
@@ -25,6 +25,7 @@
#include <BRepGProp.hxx>
#include <BRepTools.hxx>
+#include <BRepClass3d.hxx>
#include <GProp_GProps.hxx>
#include <GProp_PrincipalProps.hxx>
#include <BRepBuilderAPI_MakeSolid.hxx>
@@ -178,7 +179,7 @@
TopoDS_Shell shell;
const TopoDS_Shape& shape = getTopoShapePtr()->_Shape;
if (!shape.IsNull() && shape.ShapeType() == TopAbs_SOLID)
- shell = BRepTools::OuterShell(TopoDS::Solid(shape));
+ shell = BRepClass3d::OuterShell(TopoDS::Solid(shape));
return Py::Object(new TopoShapeShellPy(new TopoShape(shell)),true);
}
Index: freecad.spec
===================================================================
RCS file: /cvs/nonfree/rpms/freecad/devel/freecad.spec,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- freecad.spec 15 Jul 2013 17:36:56 -0000 1.7
+++ freecad.spec 10 Oct 2013 18:04:56 -0000 1.8
@@ -42,6 +42,7 @@
Patch0: freecad-3rdParty.patch
Patch1: freecad-0.13-pycxx.patch
+Patch2: freecad-0.13-OCE_0.13.patch
# Utilities
@@ -140,6 +141,7 @@
%patch1 -p1 -b .pycxx
rm -rf src/CXX
%endif
+%patch2 -p1 -b .port_oce
%if ! %{bundled_zipios}
rm -rf src/zipios++
@@ -281,6 +283,9 @@
%changelog
+* Thu Oct 10 2013 Richard Shaw <hobbes1069(a)gmail.com> - 0.13-4
+- Rebuild for OCE 0.13.
+
* Mon Jul 15 2013 Richard Shaw <hobbes1069(a)gmail.com> - 0.13-3
- Rebuild for updated OCE.
11 years, 1 month
rpms/OCE/devel .cvsignore, 1.4, 1.5 OCE.spec, 1.7, 1.8 sources, 1.4, 1.5 OCE-0.11-freeimage.patch, 1.1, NONE
by Richard Shaw
Author: hobbes1069
Update of /cvs/nonfree/rpms/OCE/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv24954
Modified Files:
.cvsignore OCE.spec sources
Removed Files:
OCE-0.11-freeimage.patch
Log Message:
* Thu Oct 10 2013 Richard Shaw <hobbes1069(a)gmail.com. - 0.13-1
- Update to latest upstream release.
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/OCE/devel/.cvsignore,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- .cvsignore 15 Jul 2013 16:06:03 -0000 1.4
+++ .cvsignore 10 Oct 2013 15:05:02 -0000 1.5
@@ -1 +1 @@
-oce-OCE-0.12.tar.gz
+OCE-0.13.tar.gz
Index: OCE.spec
===================================================================
RCS file: /cvs/nonfree/rpms/OCE/devel/OCE.spec,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- OCE.spec 15 Jul 2013 16:06:04 -0000 1.7
+++ OCE.spec 10 Oct 2013 15:05:03 -0000 1.8
@@ -6,17 +6,15 @@
%endif
Name: OCE
-Version: 0.12
+Version: 0.13
Release: 1%{?relcan:.rc%{relcan}}%{?dist}
Summary: OpenCASCADE Community Edition
License: Open CASCADE Technology Public License
URL: https://github.com/tpaviot/oce
# Github source! Archive was generated on the fly with the following URL:
-# https://github.com/tpaviot/oce/archive/OCE-0.11.tar.gz
-Source0: oce-%{name}-%{version}%{?relcan:-rc%{relcan}}.tar.gz
-
-Patch0: OCE-0.11-freeimage.patch
+# https://github.com/tpaviot/oce/archive/OCE-0.13.tar.gz
+Source0: https://github.com/tpaviot/oce/archive/%{name}-%{version}%{?relcan:-rc%{r...
Source1: DRAWEXE.1
Source2: opencascade-draw.desktop
@@ -133,7 +131,6 @@
%prep
%setup -q -n oce-%{name}-%{version}
-#patch0 -p1 -b .cmake_freeimage
# Convert files to utf8
iconv --from=ISO-8859-1 --to=UTF-8 LICENSE.txt > LICENSE.txt.new && \
@@ -151,7 +148,8 @@
-DOCE_WITH_FREEIMAGE=ON \
-DOCE_WITH_GL2PS=ON \
-DOCE_MULTITHREAD_LIBRARY:STRING=TBB \
- -DOCE_DRAW=on \
+ -DOCE_DRAW=ON \
+ -DOCE_TESTING=ON \
../
make %{?_smp_mflags}
@@ -160,6 +158,7 @@
%install
pushd build
make install DESTDIR=%{buildroot}
+popd
# Remove empty .gxx files
find %{buildroot}%{_includedir} -name "*.gxx" -exec rm -f {} \;
@@ -180,6 +179,11 @@
done
+%check
+pushd build/test
+make test
+
+
%post foundation -p /sbin/ldconfig
%postun foundation -p /sbin/ldconfig
@@ -251,7 +255,6 @@
%files visualization
# Visualization Dependents
%{_libdir}/libTKService.so.*
-%{_libdir}/libTKV2d.so.*
%{_libdir}/libTKV3d.so.*
# Visualization
%{_libdir}/libTKOpenGl.so.*
@@ -305,7 +308,10 @@
%changelog
-* Tue Jul 15 2013 Richard Shaw <hobbes1069(a)gmail.com> - 0.12-1
+* Thu Oct 10 2013 Richard Shaw <hobbes1069(a)gmail.com. - 0.13-1
+- Update to latest upstream release.
+
+* Mon Jul 15 2013 Richard Shaw <hobbes1069(a)gmail.com> - 0.12-1
- Update to latest upstream release as it adds some performance enhancements.
* Mon Feb 18 2013 Richard Shaw <hobbes1069(a)gmail.com> - 0.11-2
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/OCE/devel/sources,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- sources 15 Jul 2013 16:06:04 -0000 1.4
+++ sources 10 Oct 2013 15:05:03 -0000 1.5
@@ -1 +1 @@
-a49be79576ef421de28a28d51e60a009 oce-OCE-0.12.tar.gz
+31d384f7b302e14f09fc08f5d6fae080 OCE-0.13.tar.gz
--- OCE-0.11-freeimage.patch DELETED ---
11 years, 1 month
rpms/frogatto/F-19 frogatto.spec,1.13,1.14
by Andrea Musuruane
Author: musuruan
Update of /cvs/nonfree/rpms/frogatto/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv24117
Modified Files:
frogatto.spec
Log Message:
* Thu Oct 10 2013 Andrea Musuruane <musuruan(a)gmail.com> - 1.3.3-2
- Fixed requiring gnu-free-mono-fonts (again #2966)
Index: frogatto.spec
===================================================================
RCS file: /cvs/nonfree/rpms/frogatto/F-19/frogatto.spec,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- frogatto.spec 2 Oct 2013 15:10:28 -0000 1.13
+++ frogatto.spec 10 Oct 2013 08:01:51 -0000 1.14
@@ -3,7 +3,7 @@
Name: frogatto
Version: 1.3.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: An old-school 2D platform game
# Artwork and music not released under an open license
@@ -30,10 +30,10 @@
BuildRequires: ccache
BuildRequires: boost-devel
BuildRequires: perl-podlators
-BuildRequires: gnu-free-mono-fonts
BuildRequires: libicns-utils
BuildRequires: desktop-file-utils
Requires: hicolor-icon-theme
+Requires: gnu-free-mono-fonts
%description
@@ -132,6 +132,9 @@
%changelog
+* Thu Oct 10 2013 Andrea Musuruane <musuruan(a)gmail.com> - 1.3.3-2
+- Fixed requiring gnu-free-mono-fonts (again #2966)
+
* Wed Sep 25 2013 Andrea Musuruane <musuruan(a)gmail.com> - 1.3.3-1
- Updated to upstream v1.3.3 as of Aug 21, 2013
- Fixed crash when attempting to enter in editor mode (#2966)
11 years, 1 month