All of lore.kernel.org
 help / color / mirror / Atom feed
* aio sysctl parms
@ 2003-10-29  0:03 Janet Morgan
  0 siblings, 0 replies; only message in thread
From: Janet Morgan @ 2003-10-29  0:03 UTC (permalink / raw)
  To: akpm; +Cc: linux-kernel, suparna

[-- Attachment #1: Type: text/plain, Size: 102 bytes --]

It looks like aio_nr and aio_max_nr were intended to be sysctl parameters. 
Here's the patch for it:


[-- Attachment #2: sysctl.patch --]
[-- Type: text/plain, Size: 3059 bytes --]

--- linux-2.6.0-test7/Documentation/sysctl/fs.txt	2003-10-08 12:24:00.000000000 -0700
+++ aio-sysctl/Documentation/sysctl/fs.txt	2003-10-17 12:55:30.039905816 -0700
@@ -138,3 +138,13 @@ thus the maximum number of mounted files
 can have. You only need to increase super-max if you need to
 mount more filesystems than the current value in super-max
 allows you to.
+
+==============================================================
+
+aio-nr & aio-max-nr:
+
+aio-nr shows the current system-wide number of asynchronous io 
+requests.  aio-max-nr allows you to change the maximum value 
+aio-nr can grow to.
+
+==============================================================
--- linux-2.6.0-test7/Documentation/filesystems/proc.txt	2003-10-08 12:24:03.000000000 -0700
+++ aio-sysctl/Documentation/filesystems/proc.txt	2003-10-17 13:45:12.036573416 -0700
@@ -900,6 +900,15 @@ super-nr shows the number of currently a
 Every mounted file system needs a super block, so if you plan to mount lots of
 file systems, you may want to increase these numbers.
 
+aio-nr and aio-max-nr
+---------------------
+
+aio-nr is the running total of the number of events specified on the 
+io_setup system call for all currently active aio contexts.  If aio-nr
+reaches aio-max-nr then io_setup will fail with EAGAIN.  Note that 
+raising aio-max-nr does not result in the pre-allocation or re-sizing 
+of any kernel data structures.
+
 2.2 /proc/sys/fs/binfmt_misc - Miscellaneous binary formats
 -----------------------------------------------------------
 
--- linux-2.6.0-test7/include/linux/aio.h	2003-10-08 12:24:01.000000000 -0700
+++ aio-sysctl/include/linux/aio.h	2003-10-17 12:27:01.574632016 -0700
@@ -167,6 +167,7 @@ static inline struct kiocb *list_kiocb(s
 }
 
 /* for sysctl: */
-extern unsigned aio_max_nr, aio_max_size, aio_max_pinned;
+extern atomic_t aio_nr;
+extern unsigned aio_max_nr;
 
 #endif /* __LINUX__AIO_H */
--- linux-2.6.0-test7/include/linux/sysctl.h	2003-10-08 12:24:07.000000000 -0700
+++ aio-sysctl/include/linux/sysctl.h	2003-10-17 12:38:35.115197824 -0700
@@ -600,6 +600,8 @@ enum
 	FS_LEASE_TIME=15,	/* int: maximum time to wait for a lease break */
 	FS_DQSTATS=16,	/* disc quota usage statistics */
 	FS_XFS=17,	/* struct: control xfs parameters */
+	FS_AIO_NR=18,	/* current system-wide number of aio requests */ 
+	FS_AIO_MAX_NR=19,	/* system-wide maximum number of aio requests */
 };
 
 /* /proc/sys/fs/quota/ */
--- linux-2.6.0-test7/kernel/sysctl.c	2003-10-08 12:24:02.000000000 -0700
+++ aio-sysctl/kernel/sysctl.c	2003-10-17 12:32:27.777041712 -0700
@@ -794,6 +794,22 @@ static ctl_table fs_table[] = {
 		.mode		= 0644,
 		.proc_handler	= &proc_dointvec,
 	},
+	{
+		.ctl_name	= FS_AIO_NR,
+		.procname	= "aio-nr",
+		.data		= &aio_nr,
+		.maxlen		= sizeof(aio_nr),
+		.mode		= 0444,
+		.proc_handler	= &proc_dointvec,
+	},
+	{
+		.ctl_name	= FS_AIO_MAX_NR,
+		.procname	= "aio-max-nr",
+		.data		= &aio_max_nr,
+		.maxlen		= sizeof(aio_max_nr),
+		.mode		= 0644,
+		.proc_handler	= &proc_dointvec,
+	},
 	{ .ctl_name = 0 }
 };
 

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-10-29  0:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-10-29  0:03 aio sysctl parms Janet Morgan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.