Date: Wed, 28 Apr 2004 09:26:22 +0300 From: Alex Lyashkov <shadow@psoft.net> To: "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: code cleanup Message-ID: <1083133582.8250.38.camel@berloga.shadowland>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Hi All
how i see many points at kernel work with allproc list direct, but
proc.h introduce macros FOREACH_PROC_IN_SYSTEM.
This patch clean this places.
--
Alex Lyashkov <shadow@psoft.net>
PSoft
[-- Attachment #2 --]
diff -urN sys.orig/alpha/alpha/db_trace.c sys/alpha/alpha/db_trace.c
--- sys.orig/alpha/alpha/db_trace.c Mon Jan 5 01:30:47 2004
+++ sys/alpha/alpha/db_trace.c Wed Apr 28 09:54:04 2004
@@ -250,7 +250,7 @@
have_trapframe = 1;
} else {
/* sx_slock(&allproc_lock); */
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_pid == pid)
break;
}
diff -urN sys.orig/alpha/alpha/pmap.c sys/alpha/alpha/pmap.c
--- sys.orig/alpha/alpha/pmap.c Mon Apr 26 20:49:05 2004
+++ sys/alpha/alpha/pmap.c Wed Apr 28 09:54:21 2004
@@ -2761,7 +2761,7 @@
int index;
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_pid != pid)
continue;
diff -urN sys.orig/amd64/amd64/db_trace.c sys/amd64/amd64/db_trace.c
--- sys.orig/amd64/amd64/db_trace.c Thu Jan 29 01:57:40 2004
+++ sys/amd64/amd64/db_trace.c Wed Apr 28 09:53:39 2004
@@ -334,7 +334,7 @@
} else {
/* sx_slock(&allproc_lock); */
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_pid == pid)
break;
}
diff -urN sys.orig/ddb/db_command.c sys/ddb/db_command.c
--- sys.orig/ddb/db_command.c Sun Feb 29 11:55:32 2004
+++ sys/ddb/db_command.c Wed Apr 28 09:53:10 2004
@@ -612,7 +612,7 @@
* since we're in DDB.
*/
/* sx_slock(&allproc_lock); */
- LIST_FOREACH(p, &allproc, p_list)
+ FOREACH_PROC_IN_SYSTEM(p)
if (p->p_pid == pid)
break;
/* sx_sunlock(&allproc_lock); */
diff -urN sys.orig/i386/i386/db_trace.c sys/i386/i386/db_trace.c
--- sys.orig/i386/i386/db_trace.c Tue Nov 4 00:07:21 2003
+++ sys/i386/i386/db_trace.c Wed Apr 28 09:52:10 2004
@@ -323,7 +323,7 @@
} else {
/* sx_slock(&allproc_lock); */
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_pid == pid)
break;
}
diff -urN sys.orig/i386/i386/pmap.c sys/i386/i386/pmap.c
--- sys.orig/i386/i386/pmap.c Sun Apr 11 02:28:49 2004
+++ sys/i386/i386/pmap.c Wed Apr 28 09:52:28 2004
@@ -3000,7 +3000,7 @@
int index;
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_pid != pid)
continue;
diff -urN sys.orig/i386/ibcs2/ibcs2_sysvec.c sys/i386/ibcs2/ibcs2_sysvec.c
--- sys.orig/i386/ibcs2/ibcs2_sysvec.c Thu Sep 25 04:10:24 2003
+++ sys/i386/ibcs2/ibcs2_sysvec.c Wed Apr 28 09:51:49 2004
@@ -108,7 +108,7 @@
case MOD_UNLOAD:
/* if this was an ELF module we'd use elf_brand_inuse()... */
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_sysent == &ibcs2_svr3_sysvec) {
rval = EBUSY;
break;
diff -urN sys.orig/kern/imgact_elf.c sys/kern/imgact_elf.c
--- sys.orig/kern/imgact_elf.c Fri Apr 23 06:01:39 2004
+++ sys/kern/imgact_elf.c Wed Apr 28 09:47:41 2004
@@ -137,7 +137,7 @@
int rval = FALSE;
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_sysent == entry->sysvec) {
rval = TRUE;
break;
diff -urN sys.orig/kern/init_main.c sys/kern/init_main.c
--- sys.orig/kern/init_main.c Sun Feb 29 18:56:54 2004
+++ sys/kern/init_main.c Wed Apr 28 09:48:04 2004
@@ -479,7 +479,7 @@
* time from the filesystem. Pretend that proc0 started now.
*/
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
microuptime(&p->p_stats->p_start);
p->p_runtime.sec = 0;
p->p_runtime.frac = 0;
diff -urN sys.orig/kern/kern_descrip.c sys/kern/kern_descrip.c
--- sys.orig/kern/kern_descrip.c Tue Apr 6 00:03:34 2004
+++ sys/kern/kern_descrip.c Wed Apr 28 09:48:22 2004
@@ -2346,7 +2346,7 @@
bzero(&xf, sizeof(xf));
xf.xf_size = sizeof(xf);
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
PROC_LOCK(p);
if (p_cansee(req->td, p) != 0) {
PROC_UNLOCK(p);
diff -urN sys.orig/kern/kern_ktrace.c sys/kern/kern_ktrace.c
--- sys.orig/kern/kern_ktrace.c Tue Apr 6 00:03:34 2004
+++ sys/kern/kern_ktrace.c Wed Apr 28 09:49:19 2004
@@ -543,7 +543,7 @@
*/
if (ops == KTROP_CLEARFILE) {
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
PROC_LOCK(p);
if (p->p_tracevp == vp) {
if (ktrcanset(td, p)) {
@@ -841,7 +841,7 @@
*/
cred = NULL;
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
PROC_LOCK(p);
if (p->p_tracevp == vp) {
mtx_lock(&ktrace_mtx);
diff -urN sys.orig/kern/kern_resource.c sys/kern/kern_resource.c
--- sys.orig/kern/kern_resource.c Sat Apr 10 14:08:16 2004
+++ sys/kern/kern_resource.c Wed Apr 28 09:49:56 2004
@@ -146,7 +146,7 @@
if (uap->who == 0)
uap->who = td->td_ucred->cr_uid;
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
PROC_LOCK(p);
if (!p_cansee(td, p) &&
p->p_ucred->cr_uid == uap->who) {
diff -urN sys.orig/kern/kern_sig.c sys/kern/kern_sig.c
--- sys.orig/kern/kern_sig.c Mon Apr 12 18:56:05 2004
+++ sys/kern/kern_sig.c Wed Apr 28 09:50:19 2004
@@ -1314,7 +1314,7 @@
* broadcast
*/
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
PROC_LOCK(p);
if (p->p_pid <= 1 || p->p_flag & P_SYSTEM ||
p == td->td_proc) {
diff -urN sys.orig/kern/vfs_mount.c sys/kern/vfs_mount.c
--- sys.orig/kern/vfs_mount.c Tue Apr 6 00:03:36 2004
+++ sys/kern/vfs_mount.c Wed Apr 28 09:50:49 2004
@@ -964,7 +964,7 @@
if (vrefcnt(olddp) == 1)
return;
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
mtx_lock(&fdesc_mtx);
fdp = p->p_fd;
if (fdp == NULL) {
diff -urN sys.orig/powerpc/powerpc/db_interface.c sys/powerpc/powerpc/db_interface.c
--- sys.orig/powerpc/powerpc/db_interface.c Tue Dec 9 17:46:33 2003
+++ sys/powerpc/powerpc/db_interface.c Wed Apr 28 09:47:17 2004
@@ -172,7 +172,7 @@
struct proc *p;
/* XXX LOCKING XXX */
- for (p = allproc.lh_first; p != 0; p = p->p_list.le_next) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_stat) {
db_printf("process %p:", p);
db_printf("pid:%d pmap:%p ctx:%d %s\n",
diff -urN sys.orig/sparc64/sparc64/db_trace.c sys/sparc64/sparc64/db_trace.c
--- sys.orig/sparc64/sparc64/db_trace.c Fri Dec 26 16:30:18 2003
+++ sys/sparc64/sparc64/db_trace.c Wed Apr 28 09:46:27 2004
@@ -128,7 +128,7 @@
addr = DDB_REGS->tf_out[6];
} else {
/* sx_slock(&allproc_lock); */
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (p->p_pid == pid)
break;
}
diff -urN sys.orig/vm/vm_object.c sys/vm/vm_object.c
--- sys.orig/vm/vm_object.c Tue Apr 6 23:15:36 2004
+++ sys/vm/vm_object.c Wed Apr 28 09:45:20 2004
@@ -1966,7 +1966,7 @@
struct proc *p;
/* sx_slock(&allproc_lock); */
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
if (!p->p_vmspace /* || (p->p_flag & (P_SYSTEM|P_WEXIT)) */)
continue;
if (_vm_object_in_map(&p->p_vmspace->vm_map, object, 0)) {
diff -urN sys.orig/vm/vm_pageout.c sys/vm/vm_pageout.c
--- sys.orig/vm/vm_pageout.c Thu Mar 4 11:36:46 2004
+++ sys/vm/vm_pageout.c Wed Apr 28 09:45:49 2004
@@ -1515,7 +1515,7 @@
* process is swapped out -- deactivate pages
*/
sx_slock(&allproc_lock);
- LIST_FOREACH(p, &allproc, p_list) {
+ FOREACH_PROC_IN_SYSTEM(p) {
vm_pindex_t limit, size;
/*
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1083133582.8250.38.camel>
