Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Nov 2006 16:48:13 GMT
From:      Alexander Leidinger <netchild@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 110522 for review
Message-ID:  <200611251648.kAPGmDfx021585@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=110522

Change 110522 by netchild@netchild_magellan on 2006/11/25 16:47:20

	semi-automated style(9)

Affected files ...

.. //depot/projects/linuxolator/src/sys/compat/linux/linux_emul.c#16 edit
.. //depot/projects/linuxolator/src/sys/compat/linux/linux_emul.h#5 edit

Differences ...

==== //depot/projects/linuxolator/src/sys/compat/linux/linux_emul.c#16 (text+ko) ====

@@ -64,12 +64,12 @@
 	struct linux_emuldata *em;
 
 	if (locked == EMUL_UNLOCKED)
-   		EMUL_LOCK(&emul_lock);
+		EMUL_LOCK(&emul_lock);
 
-	em = p->p_emuldata;	   	
+	em = p->p_emuldata;
 
 	if (em == NULL && locked == EMUL_UNLOCKED)
-	   	EMUL_UNLOCK(&emul_lock);
+		EMUL_UNLOCK(&emul_lock);
 
 	return (em);
 }
@@ -81,14 +81,14 @@
 	struct proc *p;
 
 	if (child != 0) {
-	   	/* non-exec call */
+		/* non-exec call */
 		em = malloc(sizeof *em, M_LINUX, M_WAITOK | M_ZERO);
 		em->pid = child;
 		em->pdeath_signal = 0;
 		if (flags & CLONE_THREAD) {
-		   	/* handled later in the code */
+			/* handled later in the code */
 		} else {
-		   	struct linux_emuldata_shared *s;
+			struct linux_emuldata_shared *s;
 
 			s = malloc(sizeof *s, M_LINUX, M_WAITOK | M_ZERO);
 			em->shared = s;
@@ -111,51 +111,52 @@
 	em->child_clear_tid = NULL;
 	em->child_set_tid = NULL;
 
-	/* 
-	 * allocate the shared struct only in clone()/fork cases 
-	 * in the case of clone() td = calling proc and child = pid of 
-	 * the newly created proc
+	/*
+	 * allocate the shared struct only in clone()/fork cases in the case
+	 * of clone() td = calling proc and child = pid of the newly created
+	 * proc
 	 */
 	if (child != 0) {
-   	   	if (flags & CLONE_THREAD) {
-   		   	/* lookup the parent */
-		   	p_em = em_find(td->td_proc, EMUL_LOCKED);
+		if (flags & CLONE_THREAD) {
+			/* lookup the parent */
+			p_em = em_find(td->td_proc, EMUL_LOCKED);
 			KASSERT(p_em != NULL, ("proc_init: parent emuldata not found for CLONE_THREAD\n"));
 			em->shared = p_em->shared;
 			em->shared->refs++;
 		} else {
-		   	/* handled earlier to avoid malloc(M_WAITOK) with rwlock held */
+			/*
+			 * handled earlier to avoid malloc(M_WAITOK) with
+			 * rwlock held
+			 */
 		}
 	}
-
-
 	if (child != 0) {
 		EMUL_UNLOCK(&emul_lock);
-	   	EMUL_SHARED_WLOCK(&emul_shared_lock);
-   	   	LIST_INSERT_HEAD(&em->shared->threads, em, threads);
-	   	EMUL_SHARED_WUNLOCK(&emul_shared_lock);
+		EMUL_SHARED_WLOCK(&emul_shared_lock);
+		LIST_INSERT_HEAD(&em->shared->threads, em, threads);
+		EMUL_SHARED_WUNLOCK(&emul_shared_lock);
 
 		p = pfind(child);
 		/* we might have a sleeping linux_schedtail */
 		wakeup(&p->p_emuldata);
 		PROC_UNLOCK(p);
 	} else
-	   	EMUL_UNLOCK(&emul_lock);
+		EMUL_UNLOCK(&emul_lock);
 
-   	return (0);
+	return (0);
 }
 
 void
 linux_proc_exit(void *arg __unused, struct proc *p)
 {
-   	struct linux_emuldata *em;
+	struct linux_emuldata *em;
 	int error;
 	struct thread *td = FIRST_THREAD_IN_PROC(p);
 	int *child_clear_tid;
 	struct proc *q, *nq;
 
 	if (__predict_true(p->p_sysent != &elf_linux_sysvec))
-	   	return;
+		return;
 
 	/* find the emuldata */
 	em = em_find(p, EMUL_UNLOCKED);
@@ -163,7 +164,7 @@
 	KASSERT(em != NULL, ("proc_exit: emuldata not found.\n"));
 
 	child_clear_tid = em->child_clear_tid;
-	
+
 	EMUL_UNLOCK(&emul_lock);
 
 	EMUL_SHARED_WLOCK(&emul_shared_lock);
@@ -179,29 +180,29 @@
 	EMUL_SHARED_WUNLOCK(&emul_shared_lock);
 
 	if (child_clear_tid != NULL) {
-	   	struct linux_sys_futex_args cup;
+		struct linux_sys_futex_args cup;
 		int null = 0;
 
 		error = copyout(&null, child_clear_tid, sizeof(null));
 		if (error) {
-		   	free(em, M_LINUX);
-		   	return;
+			free(em, M_LINUX);
+			return;
 		}
 
 		/* futexes stuff */
 		cup.uaddr = child_clear_tid;
 		cup.op = LINUX_FUTEX_WAKE;
-		cup.val = 0x7fffffff; /* Awake everyone */
+		cup.val = 0x7fffffff;	/* Awake everyone */
 		cup.timeout = NULL;
 		cup.uaddr2 = NULL;
 		cup.val3 = 0;
 		error = linux_sys_futex(FIRST_THREAD_IN_PROC(p), &cup);
-		/* 
-		 * this cannot happen at the moment and if this happens
-		 * it probably mean there is a userspace bug
+		/*
+		 * this cannot happen at the moment and if this happens it
+		 * probably mean there is a userspace bug
 		 */
 		if (error)
-		   	printf(LMSG("futex stuff in proc_exit failed.\n"));
+			printf(LMSG("futex stuff in proc_exit failed.\n"));
 	}
 
 	/* clean the stuff up */
@@ -211,16 +212,16 @@
 	sx_xlock(&proctree_lock);
 	q = LIST_FIRST(&p->p_children);
 	for (; q != NULL; q = nq) {
-	   	nq = LIST_NEXT(q, p_sibling);
-	   	if (q->p_flag & P_WEXIT)
-		   	continue;
+		nq = LIST_NEXT(q, p_sibling);
+		if (q->p_flag & P_WEXIT)
+			continue;
 		if (__predict_false(q->p_sysent != &elf_linux_sysvec))
-   		   	continue;
-   	   	em = em_find(q, EMUL_UNLOCKED);
+			continue;
+		em = em_find(q, EMUL_UNLOCKED);
 		KASSERT(em != NULL, ("linux_reparent: emuldata not found: %i\n", q->p_pid));
 		if (em->pdeath_signal != 0) {
-   		   	PROC_LOCK(q);
-   		   	psignal(q, em->pdeath_signal);
+			PROC_LOCK(q);
+			psignal(q, em->pdeath_signal);
 			PROC_UNLOCK(q);
 		}
 		EMUL_UNLOCK(&emul_lock);
@@ -228,24 +229,25 @@
 	sx_xunlock(&proctree_lock);
 }
 
-/* 
+/*
  * This is used in a case of transition from FreeBSD binary execing to linux binary
  * in this case we create linux emuldata proc entry with the pid of the currently running
  * process.
  */
-void linux_proc_exec(void *arg __unused, struct proc *p, struct image_params *imgp)
+void 
+linux_proc_exec(void *arg __unused, struct proc *p, struct image_params *imgp)
 {
-   	if (__predict_false(imgp->sysent == &elf_linux_sysvec 
-		 && p->p_sysent != &elf_linux_sysvec))
-	   	linux_proc_init(FIRST_THREAD_IN_PROC(p), p->p_pid, 0);
+	if (__predict_false(imgp->sysent == &elf_linux_sysvec
+	    && p->p_sysent != &elf_linux_sysvec))
+		linux_proc_init(FIRST_THREAD_IN_PROC(p), p->p_pid, 0);
 	if (__predict_false(imgp->sysent != &elf_linux_sysvec
-		 && p->p_sysent == &elf_linux_sysvec)) {
-	   	struct linux_emuldata *em;
+	    && p->p_sysent == &elf_linux_sysvec)) {
+		struct linux_emuldata *em;
 
 		em = em_find(p, EMUL_UNLOCKED);
 
 		KASSERT(em != NULL, ("proc_exec: emuldata not found.\n"));
-		
+
 		EMUL_UNLOCK(&emul_lock);
 
 		EMUL_SHARED_WLOCK(&emul_shared_lock);
@@ -257,14 +259,14 @@
 
 		em->shared->refs--;
 		if (em->shared->refs == 0)
-		   	free(em->shared, M_LINUX);
+			free(em->shared, M_LINUX);
 		EMUL_SHARED_WUNLOCK(&emul_shared_lock);
 
 		free(em, M_LINUX);
 	}
 }
 
-extern int hz;		/* in subr_param.c */
+extern int hz;				/* in subr_param.c */
 
 void
 linux_schedtail(void *arg __unused, struct proc *p)
@@ -274,28 +276,30 @@
 	int *child_set_tid;
 
 	if (__predict_true(p->p_sysent != &elf_linux_sysvec))
-	   	return;
+		return;
 
-retry:	
+retry:
 	/* find the emuldata */
 	em = em_find(p, EMUL_UNLOCKED);
 
 	if (em == NULL) {
-	   	/* 
-		 * We might have been called before proc_init for this process so
-		 * tsleep and be woken up by it. We use p->p_emuldata for this
+		/*
+		 * We might have been called before proc_init for this
+		 * process so tsleep and be woken up by it. We use
+		 * p->p_emuldata for this
 		 */
 
-	   	error = tsleep(&p->p_emuldata, PLOCK, "linux_schedtail", hz);
+		error = tsleep(&p->p_emuldata, PLOCK, "linux_schedtail", hz);
 		if (error == 0)
-		   	goto retry;
-	   	panic("no emuldata found for userreting process.\n");
+			goto retry;
+		panic("no emuldata found for userreting process.\n");
 	}
 	child_set_tid = em->child_set_tid;
 	EMUL_UNLOCK(&emul_lock);
 
 	if (child_set_tid != NULL)
-	   	error = copyout(&p->p_pid, (int *) child_set_tid, sizeof(p->p_pid));
+		error = copyout(&p->p_pid, (int *)child_set_tid,
+		    sizeof(p->p_pid));
 
 	return;
 }
@@ -303,14 +307,14 @@
 int
 linux_set_tid_address(struct thread *td, struct linux_set_tid_address_args *args)
 {
-   	struct linux_emuldata *em;
+	struct linux_emuldata *em;
 
 #ifdef DEBUG
 	if (ldebug(set_tid_address))
 		printf(ARGS(set_tid_address, "%p"), args->tidptr);
 #endif
 
-	 /* find the emuldata */
+	/* find the emuldata */
 	em = em_find(td->td_proc, EMUL_UNLOCKED);
 
 	KASSERT(em != NULL, ("set_tid_address: emuldata not found.\n"));

==== //depot/projects/linuxolator/src/sys/compat/linux/linux_emul.h#5 (text+ko) ====

@@ -32,25 +32,25 @@
 #define _LINUX_EMUL_H_
 
 struct linux_emuldata_shared {
-   	int	refs;
+	int	refs;
 	pid_t	group_pid;
 
-	LIST_HEAD(, linux_emuldata) threads;	/* head of list of linux threads */
+	LIST_HEAD(, linux_emuldata) threads; /* head of list of linux threads */
 };
 
-/* 
- * modeled after similar structure in NetBSD 
+/*
+ * modeled after similar structure in NetBSD
  * this will be extended as we need more functionality
  */
 struct linux_emuldata {
-   	pid_t	pid;
+	pid_t	pid;
 
-	int *child_set_tid;     /* in clone(): Child's TID to set on clone */
-	int *child_clear_tid;   /* in clone(): Child's TID to clear on exit */
+	int    *child_set_tid;	/* in clone(): Child's TID to set on clone */
+	int    *child_clear_tid;/* in clone(): Child's TID to clear on exit */
 
 	struct linux_emuldata_shared *shared;
 
-	int pdeath_signal;	/* parent death signal */
+	int	pdeath_signal;		/* parent death signal */
 
 	LIST_ENTRY(linux_emuldata) threads;	/* list of linux threads */
 };
@@ -69,12 +69,12 @@
 #define EMUL_LOCKED		1
 #define EMUL_UNLOCKED		0
 
-int linux_proc_init(struct thread *, pid_t, int);
-void linux_proc_exit(void *, struct proc *);
-void linux_schedtail(void *, struct proc *);
-void linux_proc_exec(void *, struct proc *, struct image_params *);
+int	linux_proc_init(struct thread *, pid_t, int);
+void	linux_proc_exit(void *, struct proc *);
+void	linux_schedtail(void *, struct proc *);
+void	linux_proc_exec(void *, struct proc *, struct image_params *);
 
 extern struct sx emul_shared_lock;
 extern struct sx emul_lock;
 
-#endif /* !_LINUX_EMUL_H_ */
+#endif	/* !_LINUX_EMUL_H_ */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611251648.kAPGmDfx021585>