linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@osdl.org>
To: Adrian Bunk <bunk@stusta.de>
Cc: arjan@infradead.org, linux-kernel@vger.kernel.org,
	tony.luck@intel.com, linux-ia64@vger.kernel.org,
	edwardsg@sgi.com, linux-altix@sgi.com
Subject: Re: 2.6.15-mm3: arch/ia64/sn/kernel/sn2/sn_proc_fs.c compile error
Date: Wed, 11 Jan 2006 16:23:19 -0800	[thread overview]
Message-ID: <20060111162319.5aecc314.akpm@osdl.org> (raw)
In-Reply-To: <20060112001726.GK29663@stusta.de>

Adrian Bunk <bunk@stusta.de> wrote:
>
> > >  arch/ia64/sn/kernel/sn2/sn_proc_fs.c:140: error: assignment of read-only member 'write'
>  > 
>  > This?
>  >...
> 
>  Nearly.
> 
>  The last compile error (line 140) is still present.

Bah.


diff -puN arch/ia64/sn/kernel/sn2/sn_proc_fs.c~ia64-const-f_ops-fix arch/ia64/sn/kernel/sn2/sn_proc_fs.c
--- devel/arch/ia64/sn/kernel/sn2/sn_proc_fs.c~ia64-const-f_ops-fix	2006-01-11 16:04:18.000000000 -0800
+++ devel-akpm/arch/ia64/sn/kernel/sn2/sn_proc_fs.c	2006-01-11 16:22:38.000000000 -0800
@@ -93,19 +93,22 @@ static int coherence_id_open(struct inod
 static struct proc_dir_entry *sn_procfs_create_entry(
 	const char *name, struct proc_dir_entry *parent,
 	int (*openfunc)(struct inode *, struct file *),
-	int (*releasefunc)(struct inode *, struct file *))
+	int (*releasefunc)(struct inode *, struct file *),
+	ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *))
 {
 	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;
+			f->write = write;
+			e->proc_fops = f;
 		}
 	}
 
@@ -119,31 +122,29 @@ extern int sn_topology_release(struct in
 void register_sn_procfs(void)
 {
 	static struct proc_dir_entry *sgi_proc_dir = NULL;
-	struct proc_dir_entry *e;
 
 	BUG_ON(sgi_proc_dir != NULL);
 	if (!(sgi_proc_dir = proc_mkdir("sgi_sn", NULL)))
 		return;
 
 	sn_procfs_create_entry("partition_id", sgi_proc_dir,
-		partition_id_open, single_release);
+		partition_id_open, single_release, NULL);
 
 	sn_procfs_create_entry("system_serial_number", sgi_proc_dir,
-		system_serial_number_open, single_release);
+		system_serial_number_open, single_release, NULL);
 
 	sn_procfs_create_entry("licenseID", sgi_proc_dir, 
-		licenseID_open, single_release);
+		licenseID_open, single_release, NULL);
 
-	e = sn_procfs_create_entry("sn_force_interrupt", sgi_proc_dir, 
-		sn_force_interrupt_open, single_release);
-	if (e) 
-		e->proc_fops->write = sn_force_interrupt_write_proc;
+	sn_procfs_create_entry("sn_force_interrupt", sgi_proc_dir,
+		sn_force_interrupt_open, single_release,
+		sn_force_interrupt_write_proc);
 
 	sn_procfs_create_entry("coherence_id", sgi_proc_dir, 
-		coherence_id_open, single_release);
+		coherence_id_open, single_release, NULL);
 	
 	sn_procfs_create_entry("sn_topology", sgi_proc_dir,
-		sn_topology_open, sn_topology_release);
+		sn_topology_open, sn_topology_release, NULL);
 }
 
 #endif /* CONFIG_PROC_FS */
_


  reply	other threads:[~2006-01-12  0:26 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-11 12:21 2.6.15-mm3 Andrew Morton
2006-01-11 13:43 ` 2.6.15-mm3 Pekka Enberg
2006-01-11 14:27 ` 2.6.15-mm3 Ashutosh Naik
2006-01-11 16:21 ` 2.6.15-mm3 Dominik Karall
2006-01-11 22:22   ` 2.6.15-mm3, current -git: drivers/media/video/ compile errors Adrian Bunk
2006-01-11 22:48     ` Mauro Carvalho Chehab
2006-01-11 16:57 ` [PATCH -mm] mm/rmap.c: don't forget to include module.h Alexey Dobriyan
2006-01-11 21:42   ` Adrian Bunk
2006-01-11 21:50     ` Christoph Lameter
2006-01-11 18:25 ` 2.6.15-mm3 Roman Zippel
2006-01-11 18:45   ` 2.6.15-mm3 Andrew Morton
2006-01-11 22:26     ` 2.6.15-mm3 Roman Zippel
2006-01-11 18:34 ` 2.6.15-mm3 Brice Goglin
2006-01-11 18:40   ` 2.6.15-mm3 Dominik Brodowski
2006-01-11 19:07     ` 2.6.15-mm3 Brice Goglin
2006-01-11 19:55       ` 2.6.15-mm3 Dominik Brodowski
2006-01-11 20:28         ` 2.6.15-mm3 Brice Goglin
2006-01-11 21:21           ` 2.6.15-mm3 Dominik Brodowski
2006-01-11 22:47             ` 2.6.15-mm3 Brice Goglin
2006-01-11 23:00               ` 2.6.15-mm3 Dominik Brodowski
2006-01-11 23:23                 ` 2.6.15-mm3 Brice Goglin
2006-01-11 18:49   ` 2.6.15-mm3 Andrew Morton
2006-01-11 21:39 ` 2.6.15-mm3 Grant Coady
2006-01-11 23:41 ` 2.6.15-mm3: arch/ia64/sn/kernel/sn2/sn_proc_fs.c compile error Adrian Bunk
2006-01-12  0:01   ` Andrew Morton
2006-01-12  0:17     ` Adrian Bunk
2006-01-12  0:23       ` Andrew Morton [this message]
2006-01-12  0:54         ` Adrian Bunk
2006-01-12  1:02 ` [-mm patch] fix arch/ia64/sn/kernel/tiocx.c compilation Adrian Bunk
2006-01-12 16:43   ` Greg KH
2006-01-12  4:04 ` 2.6.15-mm3 Reuben Farrelly
2006-01-12  4:33   ` 2.6.15-mm3 Andrew Morton
2006-01-12  4:38     ` 2.6.15-mm3 Reuben Farrelly
2006-01-12  8:54     ` 2.6.15-mm3 [USB lost interrupt bug] Reuben Farrelly
2006-01-12 15:53       ` [linux-usb-devel] " Alan Stern
2006-01-15 22:50         ` Reuben Farrelly
2006-01-16  3:22           ` Alan Stern
2006-01-16  3:28             ` Reuben Farrelly
2006-01-16  3:46               ` Alan Stern
2006-01-21  5:21                 ` Reuben Farrelly
2006-01-21  5:47                   ` Andrew Morton
2006-01-21  7:58                     ` Reuben Farrelly
2006-01-21  8:32                       ` [PATCH] " Jeff Garzik
2006-01-21 10:41                         ` Reuben Farrelly
2006-01-12 10:48 ` [RFC: -mm patch] swsusp: make some code static Adrian Bunk
2006-01-12 15:29   ` Pavel Machek
2006-01-12 16:18     ` Rafael J. Wysocki
2006-01-12 10:48 ` [-mm patch] drivers/block/aoe/aoecmd.c: make aoecmd_cfg_pkts() static Adrian Bunk
2006-01-12 23:55   ` Ed L. Cashin
2006-01-12 21:05 ` 2.6.15-mm3 Rafael J. Wysocki
2006-01-12 21:58   ` 2.6.15-mm3 Andrew Morton
2006-01-12 22:01     ` 2.6.15-mm3 Patrick McHardy
2006-01-13  8:34 ` 2.6.15-mm3 Sachin Sant
2006-01-13 11:52   ` 2.6.15-mm3 Andrew Morton
2006-01-13 21:59     ` 2.6.15-mm3 Benjamin Herrenschmidt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060111162319.5aecc314.akpm@osdl.org \
    --to=akpm@osdl.org \
    --cc=arjan@infradead.org \
    --cc=bunk@stusta.de \
    --cc=edwardsg@sgi.com \
    --cc=linux-altix@sgi.com \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tony.luck@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).