public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Unrecognizable insn
@ 2004-02-01 20:41 Herbert Poetzl
  2004-02-01 20:55 ` Måns Rullgård
  2004-02-01 21:02 ` Marco Roeland
  0 siblings, 2 replies; 3+ messages in thread
From: Herbert Poetzl @ 2004-02-01 20:41 UTC (permalink / raw)
  To: linux-kernel


Hi!

anybody seen that before?

fs/proc/array.c: In function `proc_pid_stat':
fs/proc/array.c:441: Unrecognizable insn:
(insn/i 1158 1449 1443 (parallel[ 
            (set (reg:SI 0 eax)
                (asm_operands ("") ("=a") 0[ 
                        (reg:DI 1 edx)
                    ] 
                    [ 
                        (asm_input:DI ("A"))
                    ]  ("include/linux/times.h") 38))
            (set (reg:SI 1 edx)
                (asm_operands ("") ("=d") 1[ 
                        (reg:DI 1 edx)
                    ] 
                    [ 
                        (asm_input:DI ("A"))
                    ]  ("include/linux/times.h") 38))
            (clobber (reg:QI 19 dirflag))
            (clobber (reg:QI 18 fpsr))
            (clobber (reg:QI 17 flags))
        ] ) -1 (insn_list 1151 (nil))
    (nil))


gcc version 2.96 20000731 (Mandrake Linux 8.2 2.96-0.76mdk)

linux-2.6.2-rc3

if you need more info, like the .config, please let me know

best,
Herbert


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Unrecognizable insn
  2004-02-01 20:41 Unrecognizable insn Herbert Poetzl
@ 2004-02-01 20:55 ` Måns Rullgård
  2004-02-01 21:02 ` Marco Roeland
  1 sibling, 0 replies; 3+ messages in thread
From: Måns Rullgård @ 2004-02-01 20:55 UTC (permalink / raw)
  To: linux-kernel

Herbert Poetzl <herbert@13thfloor.at> writes:

> Hi!
>
> anybody seen that before?
>
> fs/proc/array.c: In function `proc_pid_stat':
> fs/proc/array.c:441: Unrecognizable insn:
>
> gcc version 2.96 20000731 (Mandrake Linux 8.2 2.96-0.76mdk)

That version is quite likely to produce any possible error and then
some.  Get gcc 3.3.

-- 
Måns Rullgård
mru@kth.se


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Unrecognizable insn
  2004-02-01 20:41 Unrecognizable insn Herbert Poetzl
  2004-02-01 20:55 ` Måns Rullgård
@ 2004-02-01 21:02 ` Marco Roeland
  1 sibling, 0 replies; 3+ messages in thread
From: Marco Roeland @ 2004-02-01 21:02 UTC (permalink / raw)
  To: linux-kernel; +Cc: Herbert Poetzl

On Sunday February 1st 2004 Herbert Poetzl wrote:

> anybody seen that before?
> 
> fs/proc/array.c: In function `proc_pid_stat':
> fs/proc/array.c:441: Unrecognizable insn:
> ...

Yes, it's a known compiler bug, specific for gcc 2.96. It's recommended
you upgrade it. Or use the following workaround until you do: ;-)

--- linux-2.6.0-test8/fs/proc/array.c.orig	2003-10-21 16:18:40.000000000 +0200
+++ linux-2.6.0-test8/fs/proc/array.c	2003-10-23 09:30:27.000000000 +0200
@@ -302,6 +302,7 @@
 	pid_t ppid;
 	int num_threads = 0;
 	struct mm_struct *mm;
+	unsigned long long starttime;
 
 	state = *get_task_state(task);
 	vsize = eip = esp = 0;
@@ -343,9 +344,7 @@
 	read_lock(&tasklist_lock);
 	ppid = task->pid ? task->real_parent->pid : 0;
 	read_unlock(&tasklist_lock);
-	res = sprintf(buffer,"%d (%s) %c %d %d %d %d %d %lu %lu \
-%lu %lu %lu %lu %lu %ld %ld %ld %ld %d %ld %llu %lu %ld %lu %lu %lu %lu %lu \
-%lu %lu %lu %lu %lu %lu %lu %lu %d %d %lu %lu\n",
+	res = sprintf(buffer,"%d (%s) %c %d %d %d %d %d %lu %lu ",
 		task->pid,
 		task->comm,
 		state,
@@ -355,7 +354,9 @@
 		tty_nr,
 		tty_pgrp,
 		task->flags,
-		task->min_flt,
+		task->min_flt);
+	starttime = jiffies_64_to_clock_t(task->start_time - INITIAL_JIFFIES);
+	res += sprintf(buffer + res,"%lu %lu %lu %lu %lu %ld %ld %ld %ld %d %ld %llu %lu %ld %lu %lu %lu %lu %lu ",
 		task->cmin_flt,
 		task->maj_flt,
 		task->cmaj_flt,
@@ -367,15 +368,15 @@
 		nice,
 		num_threads,
 		jiffies_to_clock_t(task->it_real_value),
-		(unsigned long long)
-		    jiffies_64_to_clock_t(task->start_time - INITIAL_JIFFIES),
+		starttime,
 		vsize,
 		mm ? mm->rss : 0, /* you might want to shift this left 3 */
 		task->rlim[RLIMIT_RSS].rlim_cur,
 		mm ? mm->start_code : 0,
 		mm ? mm->end_code : 0,
 		mm ? mm->start_stack : 0,
-		esp,
+		esp);
+	res += sprintf(buffer + res,"%lu %lu %lu %lu %lu %lu %lu %lu %d %d %lu %lu\n",
 		eip,
 		/* The signal information here is obsolete.
 		 * It must be decimal for Linux 2.0 compatibility.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-02-01 21:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-01 20:41 Unrecognizable insn Herbert Poetzl
2004-02-01 20:55 ` Måns Rullgård
2004-02-01 21:02 ` Marco Roeland

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox