patch-1.3.81 linux/fs/proc/array.c

Next file: linux/include/asm-alpha/apecs.h
Previous file: linux/fs/pipe.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.80/linux/fs/proc/array.c linux/fs/proc/array.c
@@ -1074,6 +1074,7 @@
 	int length;
 	int end;
 	unsigned int type, pid;
+	struct proc_dir_entry *dp;
 
 	if (count < 0)
 		return -EINVAL;
@@ -1085,8 +1086,13 @@
 	pid = type >> 16;
 	type &= 0x0000ffff;
 	start = NULL;
-	length = fill_array((char *) page, pid, type,
-			    &start, file->f_pos, count);
+	dp = (struct proc_dir_entry *) inode->u.generic_ip;
+	if (dp->get_info)
+		length = dp->get_info((char *)page, &start, file->f_pos,
+				      count, 0);
+	else
+		length = fill_array((char *) page, pid, type,
+				    &start, file->f_pos, count);
 	if (length < 0) {
 		free_page(page);
 		return length;

FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen, [email protected] with Sam's (original) version
of this