diff -urN oldtree/kernel/acct.c newtree/kernel/acct.c
--- oldtree/kernel/acct.c	2006-08-18 15:01:22.000000000 -0400
+++ newtree/kernel/acct.c	2006-08-19 17:04:27.905313250 -0400
@@ -483,10 +483,10 @@
 	ac.ac_ppid = current->parent->tgid;
 #endif
 
-	read_lock(&tasklist_lock);	/* pin current->signal */
+	mutex_lock(&tty_mutex);
 	ac.ac_tty = current->signal->tty ?
 		old_encode_dev(tty_devnum(current->signal->tty)) : 0;
-	read_unlock(&tasklist_lock);
+	mutex_unlock(&tty_mutex);
 
 	spin_lock_irq(&current->sighand->siglock);
 	ac.ac_utime = encode_comp_t(jiffies_to_AHZ(cputime_to_jiffies(pacct->ac_utime)));
