| .. | .. |
|---|
| 448 | 448 | { |
|---|
| 449 | 449 | char hardsoft_irq; |
|---|
| 450 | 450 | char need_resched; |
|---|
| 451 | + char need_resched_lazy; |
|---|
| 451 | 452 | char irqs_off; |
|---|
| 452 | 453 | int hardirq; |
|---|
| 453 | 454 | int softirq; |
|---|
| .. | .. |
|---|
| 478 | 479 | break; |
|---|
| 479 | 480 | } |
|---|
| 480 | 481 | |
|---|
| 482 | + need_resched_lazy = |
|---|
| 483 | + (entry->flags & TRACE_FLAG_NEED_RESCHED_LAZY) ? 'L' : '.'; |
|---|
| 484 | + |
|---|
| 481 | 485 | hardsoft_irq = |
|---|
| 482 | 486 | (nmi && hardirq) ? 'Z' : |
|---|
| 483 | 487 | nmi ? 'z' : |
|---|
| .. | .. |
|---|
| 486 | 490 | softirq ? 's' : |
|---|
| 487 | 491 | '.' ; |
|---|
| 488 | 492 | |
|---|
| 489 | | - trace_seq_printf(s, "%c%c%c", |
|---|
| 490 | | - irqs_off, need_resched, hardsoft_irq); |
|---|
| 493 | + trace_seq_printf(s, "%c%c%c%c", |
|---|
| 494 | + irqs_off, need_resched, need_resched_lazy, |
|---|
| 495 | + hardsoft_irq); |
|---|
| 491 | 496 | |
|---|
| 492 | 497 | if (entry->preempt_count) |
|---|
| 493 | 498 | trace_seq_printf(s, "%x", entry->preempt_count); |
|---|
| 494 | 499 | else |
|---|
| 495 | 500 | trace_seq_putc(s, '.'); |
|---|
| 496 | 501 | |
|---|
| 502 | + if (entry->preempt_lazy_count) |
|---|
| 503 | + trace_seq_printf(s, "%x", entry->preempt_lazy_count); |
|---|
| 504 | + else |
|---|
| 505 | + trace_seq_putc(s, '.'); |
|---|
| 506 | + |
|---|
| 507 | + if (entry->migrate_disable) |
|---|
| 508 | + trace_seq_printf(s, "%x", entry->migrate_disable); |
|---|
| 509 | + else |
|---|
| 510 | + trace_seq_putc(s, '.'); |
|---|
| 511 | + |
|---|
| 497 | 512 | return !trace_seq_has_overflowed(s); |
|---|
| 498 | 513 | } |
|---|
| 499 | 514 | |
|---|