timer interrupts during boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,
I'm porting uClinux (linux kernel 2.6.19) on a new architecture and I have a question concerning timer interrupts. During the execution of the init() function, a new thread is created for ksoftirqd. To do this, kernel_thread() is called with the corresponding operands and calls system_call()
and sys_clone().
After this procedure, when we go out of system_call(), a timer interrupt occurs: the schedule() function is called (the scheduler tries to find a thread with the field
state =TASK_RUNNING in the runqueue and selects this new thread).
During the schedule() execution I receive the following printk message:

             bad: scheduling from the idle thread!

and the dump_stack() function displays stack and call trace. (see below)
I suspect that this bad message is related to the timer interrupt.
Should the timer interrupts be enabled at this point?
Maybe I should allows timer interrupts only from cpu_idle..
Am I wrong?

Thanks in advance for your suggestions.

Linux version 2.6.19-uc1 (gcc version 4.1.2 20080812 (Cortus release)) #123 Thu Nov 27 09:27:08 CET 2008
Built 1 zonelists.  Total pages: 2023
Kernel command line:
PID hash table entries: 32 (order: 5, 128 bytes)
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mem_init: start=12000, end=7f67d8
Memory available: 2020k/7992k RAM, (568k kernel code, 68k data)
Mount-cache hash table entries: 512
bad: scheduling from the idle thread!
Stack from 00007e64:
00007e70 8008d8ae 80092c5c 00000000 00000000 00000003 00000000 00000000 fffffffc 00006000 00030000 00000000 fffffffc 00006000 00007eec 00000000 800174e4 800235fa 00000001 ffffffff ffffffff 00008750 000087d8 80023540 00007eec 00007eec 8000bf5a 8000afd4 80093140 800234fc 80093140 00007f4c 80023738 00007eec 800174e4 00000000 00000001 00007ef8 00007ef8 00000000 00000000 00007f08 00007f08 00000000 00007f14 00007f14 800234e0 00007eec
Call Trace:
       [<8000648a>] [<80093140>] [<8000657c>] [<8000b00e>]
       [<8000c46c>] [<8000c560>] [<8000afd4>] [<8000bf5a>]
       [<8000b28e>] [<80000992>] [<8009207c>] [<800002a6>]




--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux