[IA64] Clean-up direct access to tasklist_lock.write_lock

Signed-off-by: Tony Luck <tony.luck@intel.com>

diff -ru linux/arch/ia64/kernel/mca.c tiger-smp/arch/ia64/kernel/mca.c
--- linux/arch/ia64/kernel/mca.c	2005-09-09 13:13:12.000000000 -0700
+++ tiger-smp/arch/ia64/kernel/mca.c	2005-09-09 13:49:47.000000000 -0700
@@ -491,12 +491,7 @@
 	unw_init_from_interruption(&info, current, pt, sw);
 	ia64_do_show_stack(&info, NULL);
 
-#ifdef CONFIG_SMP
-	/* read_trylock() would be handy... */
-	if (!tasklist_lock.write_lock)
-		read_lock(&tasklist_lock);
-#endif
-	{
+	if (read_trylock(&tasklist_lock)) {
 		struct task_struct *g, *t;
 		do_each_thread (g, t) {
 			if (t == current)
@@ -506,10 +501,6 @@
 			show_stack(t, NULL);
 		} while_each_thread (g, t);
 	}
-#ifdef CONFIG_SMP
-	if (!tasklist_lock.write_lock)
-		read_unlock(&tasklist_lock);
-#endif
 
 	printk("\nINIT dump complete.  Please reboot now.\n");
 	while (1);			/* hang city if no debugger */
