diff options
author | Mike Waychison <mikew@google.com> | 2005-09-06 15:17:09 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-07 16:57:25 -0700 |
commit | ae7817745eef3b4ed3c2e36cb403e0c50f17d4e4 (patch) | |
tree | f1824d3eb053123cb359865925ef7e38e3fb37d0 /ipc/util.h | |
parent | f35279d3f713e5c97b98cbdbf47d98f79942c11f (diff) | |
download | blackbird-op-linux-ae7817745eef3b4ed3c2e36cb403e0c50f17d4e4.tar.gz blackbird-op-linux-ae7817745eef3b4ed3c2e36cb403e0c50f17d4e4.zip |
[PATCH] ipc: add generic struct ipc_ids seq_file iteration
The following two patches convert /proc/sysvipc/* to use seq_file.
This gives us the following:
- Self-consistent IPC records in proc.
- O(n) reading of the files themselves.
This patch:
Add a generic method for ipc types to be displayed using seq_file. This
patch abstracts out seq_file iterating over struct ipc_ids into ipc/util.c
Signed-off-by: Mike Waychison <mikew@google.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'ipc/util.h')
-rw-r--r-- | ipc/util.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/ipc/util.h b/ipc/util.h index 44348ca5a707..fc9a28be0797 100644 --- a/ipc/util.h +++ b/ipc/util.h @@ -30,7 +30,15 @@ struct ipc_ids { struct ipc_id_ary* entries; }; +struct seq_file; void __init ipc_init_ids(struct ipc_ids* ids, int size); +#ifdef CONFIG_PROC_FS +void __init ipc_init_proc_interface(const char *path, const char *header, + struct ipc_ids *ids, + int (*show)(struct seq_file *, void *)); +#else +#define ipc_init_proc_interface(path, header, ids, show) do {} while (0) +#endif /* must be called with ids->sem acquired.*/ int ipc_findkey(struct ipc_ids* ids, key_t key); |