Re: 2.6.15-mm3: arch/ia64/sn/kernel/sn2/sn_proc_fs.c compile error

From: Andrew Morton
Date: Wed Jan 11 2006 - 19:03:42 EST


Adrian Bunk <bunk@xxxxxxxxx> wrote:
>
> Arjan, it seems the following compile error on ia64 is caused by a patch
> of you that makes some stuff static:
>
> <-- snip -->
>
> ...
> CC arch/ia64/sn/kernel/sn2/sn_proc_fs.o
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c: In function 'sn_procfs_create_entry':
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c:104: warning: passing argument 1 of 'memset' discards qualifiers from pointer target type
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c:105: error: assignment of read-only member 'open'
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c:106: error: assignment of read-only member 'read'
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c:107: error: assignment of read-only member 'llseek'
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c:108: error: assignment of read-only member 'release'
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c: In function 'register_sn_procfs':
> arch/ia64/sn/kernel/sn2/sn_proc_fs.c:140: error: assignment of read-only member 'write'

This?

--- devel/arch/ia64/sn/kernel/sn2/sn_proc_fs.c~ia64-const-f_ops-fix 2006-01-11 15:58:41.000000000 -0800
+++ devel-akpm/arch/ia64/sn/kernel/sn2/sn_proc_fs.c 2006-01-11 16:00:50.000000000 -0800
@@ -98,14 +98,15 @@ static struct proc_dir_entry *sn_procfs_
struct proc_dir_entry *e = create_proc_entry(name, 0444, parent);

if (e) {
- e->proc_fops = (struct file_operations *)kmalloc(
- sizeof(struct file_operations), GFP_KERNEL);
- if (e->proc_fops) {
- memset(e->proc_fops, 0, sizeof(struct file_operations));
- e->proc_fops->open = openfunc;
- e->proc_fops->read = seq_read;
- e->proc_fops->llseek = seq_lseek;
- e->proc_fops->release = releasefunc;
+ struct file_operations *f;
+
+ f = kzalloc(sizeof(*f), GFP_KERNEL);
+ if (f) {
+ f->open = openfunc;
+ f->read = seq_read;
+ f->llseek = seq_lseek;
+ f->release = releasefunc;
+ e->proc_fops = f;
}
}

_

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/