[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <46A758B5.9070602@free.fr>
Date: Wed, 25 Jul 2007 16:05:41 +0200
From: John Sigler <linux.kernel@...e.fr>
To: Ingo Molnar <mingo@...e.hu>
CC: linux-rt-users@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: Pin-pointing the root of unusual application latencies
Ingo Molnar wrote:
> John Sigler wrote:
>
>> Ingo Molnar wrote:
>>
>>> does your test-app have higher priority than softirq--4 ?
>>
>> PID 4 is [softirq-timer/0] and has priority 50 in SCHED_FIFO. My
>> process has priority 80 in SCHED_RR. It is waiting for IRQ10.
>>
>> My user-space app has higher priority than everything except PID 2
>> which is [posix_cpu_timer]
>
> well what priority does the IRQ 10 kernel thread have? It should be prio
> 80 too if it's in your critical path.
Is there some form of priority inheritance? Does the IRQ handler get a
priority boost if a high priority task is waiting for it?
I didn't dare mess with the default kernel thread priorities.
# ps -eo pid,class,rtprio,ni,pri,stat,comm
PID CLS RTPRIO NI PRI STAT COMMAND
1 TS - 0 24 Ss init
2 FF 99 - 139 S posix_cpu_timer
3 FF 50 - 90 S softirq-high/0
4 FF 50 - 90 S softirq-timer/0
5 FF 50 - 90 S softirq-net-tx/
6 FF 50 - 90 S softirq-net-rx/
7 FF 50 - 90 S softirq-block/0
8 FF 50 - 90 S softirq-tasklet
9 FF 50 - 90 S softirq-sched/0
10 FF 50 - 90 S softirq-hrtimer
11 FF 50 - 90 S softirq-rcu/0
12 TS - -10 34 S< desched/0
13 FF 1 - 41 S< events/0
14 TS - -5 19 S< khelper
15 TS - -5 19 S< kthread
34 TS - -5 29 S< kblockd/0
35 TS - -5 19 S< kacpid
36 FF 50 - 90 S< IRQ-7
82 TS - -5 29 S< kseriod
101 TS - 0 16 S pdflush
102 TS - 0 24 S pdflush
103 TS - -5 21 S< kswapd0
104 TS - -5 29 S< flush_filesd/0
105 TS - -5 21 S< aio/0
704 FF 50 - 90 S< IRQ-14
720 FF 50 - 90 S< IRQ-12
721 FF 50 - 90 S< IRQ-1
848 FF 50 - 90 S< IRQ-11
913 FF 50 - 90 S< IRQ-10
922 TS - 0 21 Ss sshd
925 TS - 0 24 Ss+ agetty
926 TS - 0 21 Ss+ agetty
931 TS - 0 24 Rs sshd
933 TS - 0 24 Rs bash
# cat /proc/interrupts
CPU0
0: 37 XT-PIC-XT timer
1: 2 XT-PIC-XT i8042
2: 0 XT-PIC-XT cascade
7: 0 XT-PIC-XT acpi
10: 175 XT-PIC-XT eth2, Dta1xx
11: 1129 XT-PIC-XT eth0
12: 4 XT-PIC-XT eth1
14: 21482 XT-PIC-XT ide0
NMI: 0
LOC: 161632
ERR: 0
MIS: 0
IRQ 10 is shared between a NIC and an I/O board.
For eth2, the kernel said:
ACPI: PCI Interrupt 0000:00:0a.0[A] -> Link [LNKC]
-> GSI 10 (level, low) -> IRQ 10
For Dta1xx, the kernel said:
ACPI: PCI Interrupt 0000:02:0e.0[A] -> Link [LNKC]
-> GSI 10 (level, low) -> IRQ 10
Is it possible to avoid the two boards sharing IRQ 10?
Regards.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists