Your message dated Wed, 26 Nov 2008 16:23:38 +0100
with message-id <[EMAIL PROTECTED]>
and subject line Re: Remove cdfs-src from testing [SOLVED]
has caused the Debian Bug report #482075,
regarding doesn't build with 2.6.26 kernels
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)
--
482075: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482075
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: cdfs-src
Version: 2.6.23-3
Severity: important
Tags: patch
cdfs-src Debian package don't build in 2.6.25 kernels
I have made a patch for it.
Patch can also be downloaded from:
http://trac.tcosproject.org/browser/trunk/tcos-extra-modules/patches/cdfs-2.6.25-2-486.patch?rev=812&format=raw
Greetings and thanks for your work at Debian
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.25-2-686 (SMP w/2 CPU cores)
Locale: LANG=es_ES.UTF-8, LC_CTYPE=es_ES.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages cdfs-src depends on:
ii bzip2 1.0.5-0.1 high-quality block-sorting file co
ii debhelper 7.0.9 helper programs for debian/rules
ii kernel-package 11.001-0.1 A utility for building Linux kerne
ii make 3.81-4 The GNU version of the "make" util
ii module-assistant 0.10.11.0 tool to make module package creati
cdfs-src recommends no packages.
-- no debconf information
diff -Naur --exclude=Makefile build/modules/cdfs.orig/2.6/modules.order build/modules/cdfs/2.6/modules.order
--- build/modules/cdfs.orig/2.6/modules.order 1970-01-01 01:00:00.000000000 +0100
+++ build/modules/cdfs/2.6/modules.order 2008-05-20 18:27:00.000000000 +0200
@@ -0,0 +1 @@
+kernel//home/mario/forja-rediris/trunk/tcos-extra-modules/build/modules/cdfs/2.6/cdfs.ko
diff -Naur --exclude=Makefile build/modules/cdfs.orig/2.6/root.c build/modules/cdfs/2.6/root.c
--- build/modules/cdfs.orig/2.6/root.c 2006-10-24 21:41:12.000000000 +0200
+++ build/modules/cdfs/2.6/root.c 2008-05-20 18:26:56.000000000 +0200
@@ -42,6 +42,9 @@
extern struct seq_operations cdfs_operations;
extern struct _track_info *dummy_track_p;
+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,24)
+struct inode *cdfs_iget(struct super_block *sp, unsigned long ino);
+#endif
/*============================================================================*
* cdfs_open() *
@@ -361,8 +364,12 @@
sb->s_magic = CDFS_MAGIC;
sb->s_flags |= MS_RDONLY;
sb->s_op = &cdfs_ops;
+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,24)
+ sb->s_root = d_alloc_root(cdfs_iget(sb, 0));
+#else
sb->s_root = d_alloc_root(iget(sb, 0));
-
+#endif
+
cdfs_proc_cd = this_cd;
#ifdef OLD_KERNEL
@@ -459,7 +466,11 @@
for(i=0; i<T2I(this_cd->tracks); i++)
if (!(strcmp(this_cd->track[i].name, dentry->d_name.name))) {
+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,24)
+ if ((inode=iget_locked(dir->i_sb, i))==NULL) {
+#else
if ((inode=iget(dir->i_sb, i))==NULL) {
+#endif
return ERR_PTR(-EACCES);
} else {
d_add(dentry, inode);
@@ -482,8 +493,19 @@
};
/**************************************************************************/
-
+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,24)
+struct inode *cdfs_iget(struct super_block *sp, unsigned long ino) {
+ /* info from http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=12debc4248a4a7f1873e47cda2cdd7faca80b099 */
+ struct inode *i;
+ i = iget_locked(sp, ino);
+ if (!i)
+ return ERR_PTR(-ENOMEM);
+ if (!(i->i_state & I_NEW))
+ return i;
+#else
static void cdfs_read_inode(struct inode *i) {
+#endif
+
cd * this_cd = cdfs_info(i->i_sb);
//printk("this_cd = 0x%x\n\n\n", (unsigned)this_cd);
@@ -536,12 +558,23 @@
i->i_data.a_ops = &cdfs_cdXA_aops;
}
}
+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,24)
+ unlock_new_inode(i);
+ return i;
+/*
+error:
+ iget_failed(inode);
+ return ERR_PTR(ret);
+*/
+#endif
}
/******************************************************************/
static struct super_operations cdfs_ops = {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,4,24)
.read_inode = cdfs_read_inode,
+#endif
.put_super = cdfs_umount,
.statfs = cdfs_statfs
};
--- End Message ---
--- Begin Message ---
Version: 2.6.23-4
#include <hallo.h>
* mariodebian [Wed, Nov 26 2008, 03:45:19PM]:
> I'm very newie patching kernel stuff and he explain me some code bugs
> like a excelent teacher.
>
> David Howells is my personal hero for today. Many thanks David.
Guys, you both are my personal heroes of today. Your patch needed a
little fix to compile on 2.6.27 but I had an idea from the previous
attempt to make it compile.
Now it's really working! 2.6.23-4 uploaded. Would RMs consider to readd
it now? I am almost ashamed to request that.
And by the way, cddfs does not look like a real replacement because
cdfs' most important feature (for me) is the easy access to previous
ISOFS containing sessions, while cddfs is pure audio ripper.
Regards,
Eduard.
--
Die vier Elemente: Erde, Luft und Feuerwasser.
--- End Message ---