I'm studying periperal irq routing to Domain0's vCPU
 
I'm testing on Arndale Broad and Domain 0 has 2 vCPU.
So Xen can select vcpu0 or vcpu1 to inject periperal irq.
 
I tested periperal routing on Xen 4.4.1 and it works well.
But I tested periperal routing on Xen 4.5.0 but irq dosen't works well.
 
So I tested very simple periperal routing code like this.
'flag' is grobal variable. 
 
* In "do_IRQ" function on Xen 4.4.1 
-----------------------------------------------------
- from
if ( desc->status & IRQ_GUEST )
{
struct domain *d = action->dev_id;
 
desc->handler->end(desc);
 
desc->status = IRQ_INPROGRESS;
desc->arch.eoi_cpu = smp_processor_id();
 
/* XXX: inject irq into all guest vcpus */
vgic_vcpu_inject_irq(d->vcpu[0], irq, 0);
goto out_no_end;
}
-to if ( desc->status & IRQ_GUEST ) {
struct domain *d = action->dev_id;
 
desc->handler->end(desc);
 
desc->status = IRQ_INPROGRESS;
desc->arch.eoi_cpu = smp_processor_id();
 
/* XXX: inject irq into all guest vcpus */
vgic_vcpu_inject_irq(d->vcpu[++flag % 2], irq, 0);
goto out_no_end;
}
-----------------------------------------------------
 
* In "vgic_vcpu_inject_spi" function on Xen 4.5.0 
-----------------------------------------------------
-from
void vgic_vcpu_inject_spi(struct domain *d, unsigned int irq)
{
struct vcpu *v;
 
/* the IRQ needs to be an SPI */
ASSERT(irq >= 32 && irq <= gic_number_lines());
 
v = vgic_get_target_vcpu(d->vcpu[0], irq);
vgic_vcpu_inject_irq(v, irq);
}
-tovoid vgic_vcpu_inject_spi(struct domain *d, unsigned int irq)
{
struct vcpu *v;
 
/* the IRQ needs to be an SPI */
ASSERT(irq >= 32 && irq <= gic_number_lines());
 
vgic_vcpu_inject_irq(d->vcpu[++flag % 2], irq);
}
-----------------------------------------------------
so periperal irq injected to Domain0's vCPU0 or vCPU1.
 
on Xen 4.4.1 it work well and i can confirm 
periperal irq routed vcpu0 or vcpu1 by using cat /proc/interrupts command.
 
* cat /proc/interrupts command on Xen 4.4.1
--------------------------------------------------
CPU0 CPU1 
27: 8690 8558 GIC 27 arch_timer
31: 34 1 GIC 31 events
65: 0 0 GIC 65 10800000.mdma
66: 0 0 GIC 66 121a0000.pdma
67: 0 0 GIC 67 121b0000.pdma
74: 0 0 GIC 74 101d0000.watchdog
75: 0 0 GIC 75 s3c2410-rtc alarm
76: 0 0 GIC 76 s3c2410-rtc tick
77: 0 0 GIC 77 13400000.pinctrl
78: 0 0 GIC 78 11400000.pinctrl
79: 0 0 GIC 79 3860000.pinctrl
82: 0 0 GIC 82 10d10000.pinctrl
88: 229 233 GIC 88 12c60000.i2c
90: 0 0 GIC 90 12c80000.i2c
91: 0 0 GIC 91 12c90000.i2c
96: 0 0 GIC 96 12ce0000.i2c
97: 0 0 GIC 97 10060000.tmu
103: 257 246 GIC 103 ehci_hcd:usb3, ohci_hcd:usb4
104: 0 0 GIC 104 xhci-hcd:usb1
107: 710 710 GIC 107 dw-mci
109: 9602 9610 GIC 109 dw-mci
156: 0 0 GIC 156 11c10000.mdma
160: 0 0 xen-dyn-event xenbus
183: 1 0 exynos_wkup_irq_chip 2 s5m8767
184: 33 0 xen-percpu-virq hvc_console
185: 0 0 s5m8767 12 rtc-alarm0
186: 0 0 exynos_wkup_irq_chip 4 SW-TACT2
187: 0 0 exynos_wkup_irq_chip 5 SW-TACT3
188: 0 0 exynos_wkup_irq_chip 6 SW-TACT4
189: 0 0 exynos_wkup_irq_chip 7 SW-TACT5
190: 0 0 exynos_wkup_irq_chip 0 SW-TACT6
191: 0 0 exynos_wkup_irq_chip 1 SW-TACT7
IPI0: 0 0 CPU wakeup interrupts
IPI1: 0 0 Timer broadcast interrupts
IPI2: 6660 6920 Rescheduling interrupts
IPI3: 0 0 Function call interrupts
IPI4: 9 3 Single function call interrupts
IPI5: 0 0 CPU stop interrupts
IPI6: 0 0 IRQ work interrupts
IPI7: 0 0 completion interrupts
 
Err: 0
-----------------------------------------------------
 
But on Xen 4.5.0, Dom0 can not booting.
below is domain0's booting message on Xen 4.5.0
 
* domain0's booting message on Xen 4.5.0
-----------------------------------------------------
[ 3.900830] usb 3-3.2: new high-speed USB device number 3 using exynos-ehci
[ 4.012184] usb 3-3.2: New USB device found, idVendor=05e3, idProduct=0610
[ 4.017685] usb 3-3.2: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 4.025075] usb 3-3.2: Product: USB2.0 Hub
[ 4.030156] hub 3-3.2:1.0: USB hub found
[ 4.033555] hub 3-3.2:1.0: 4 ports detected
[ 4.310681] usb 3-3.2.4: new high-speed USB device number 4 using exynos-ehci
[ 4.406697] usb 3-3.2.4: New USB device found, idVendor=0b95, idProduct=772a
[ 4.412372] usb 3-3.2.4: New USB device strings: Mfr=1, Product=2, 
SerialNumber=3
[ 4.419921] usb 3-3.2.4: Product: AX88772 
[ 4.424087] usb 3-3.2.4: Manufacturer: ASIX Elec. Corp.
[ 4.429393] usb 3-3.2.4: SerialNumber: 000001
[ 4.435809] asix 3-3.2.4:1.0 (unnamed net_device) (uninitialized): invalid hw 
address, using random
[ 5.229663] asix 3-3.2.4:1.0 eth0: register 'asix' at usb-12110000.usb-3.2.4, 
ASIX AX88772 USB 2.0 Ethernet, ee:21:96:b8:
[ 7.925810] kjournald starting. Commit interval 5 seconds
[ 7.929993] EXT3-fs (mmcblk1p2): using internal journal
[ 7.944820] EXT3-fs (mmcblk1p2): recovery complete
[ 7.948228] EXT3-fs (mmcblk1p2): mounted filesystem with ordered data mode
[ 7.955194] VFS: Mounted root (ext3 filesystem) on device 179:34.
[ 7.963607] devtmpfs: mounted
[ 7.965377] Freeing unused kernel memory: 304K (c066e000 - c06ba000)
[ 8.156858] random: init urandom read with 86 bits of entropy available
[ 8.378207] init: ureadahead main process (1407) terminated with status 5
[ 12.790491] random: nonblocking pool is initialized
[ 240.105444] INFO: task kjournald:1402 blocked for more than 120 seconds.
[ 240.110770] Not tainted 3.18.3-svn1 #2
[ 240.115105] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 240.123005] kjournald D c04aa028 0 1402 2 0x00000000
[ 240.129430] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 240.136811] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 240.144273] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 240.151912] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 240.160593] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f69a8>] (__sync_dirty_buffer+0xc0/0xec)
[ 240.169797] [<c00f69a8>] (__sync_dirty_buffer) from [<c0182244>] 
(journal_commit_transaction+0xfc8/0x139c)
[ 240.179518] [<c0182244>] (journal_commit_transaction) from 
[<c0184e48>] (kjournald+0xe4/0x268)
[ 240.188206] [<c0184e48>] (kjournald) from [<c0039bb0>] 
(kthread+0xd8/0xf0)
[ 240.195137] [<c0039bb0>] (kthread) from [<c000f1b8>] 
(ret_from_fork+0x14/0x3c)
[ 240.202427] INFO: task upstart-udev-br:1524 blocked for more than 120 seconds.
[ 240.209712] Not tainted 3.18.3-svn1 #2
[ 240.214051] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 240.221953] upstart-udev-br D c04aa028 0 1524 1 0x00000000
[ 240.228385] [<c04aa028>] (__schedule) from [<c01848cc>] 
(log_wait_commit+0xd8/0x120)
[ 240.236203] [<c01848cc>] (log_wait_commit) from [<c00f0f44>] 
(do_fsync+0x50/0x78)
[ 240.243746] [<c00f0f44>] (do_fsync) from [<c000f120>] 
(ret_fast_syscall+0x0/0x30)
[ 240.251295] INFO: task systemd-udevd:1528 blocked for more than 120 seconds.
[ 240.258417] Not tainted 3.18.3-svn1 #2
[ 240.262746] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 240.270646] systemd-udevd D c04aa028 0 1528 1 0x00000004
[ 240.277076] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 240.284454] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 240.291920] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 240.299556] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 240.308238] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f4f04>] (__bread_gfp+0xa8/0xec)
[ 240.316747] [<c00f4f04>] (__bread_gfp) from [<c0127c14>] 
(ext3_get_branch+0x88/0x14c)
[ 240.324656] [<c0127c14>] (ext3_get_branch) from [<c0129800>] 
(ext3_get_blocks_handle+0x90/0xa40)
[ 240.333498] [<c0129800>] (ext3_get_blocks_handle) from 
[<c012a24c>] (ext3_get_block+0x9c/0xdc)
[ 240.342180] [<c012a24c>] (ext3_get_block) from [<c00fce08>] 
(do_mpage_readpage+0x470/0x7ac)
[ 240.350605] [<c00fce08>] (do_mpage_readpage) from [<c00fd20c>] 
(mpage_readpages+0xc8/0x118)
[ 240.359016] [<c00fd20c>] (mpage_readpages) from [<c00943d8>] 
(__do_page_cache_readahead+0x1b0/0x260)
[ 240.368224] [<c00943d8>] (__do_page_cache_readahead) from 
[<c008c0fc>] (filemap_fault+0x3ac/0x474)
[ 240.377247] [<c008c0fc>] (filemap_fault) from [<c00aa310>] 
(__do_fault+0x34/0x88)
[ 240.384798] [<c00aa310>] (__do_fault) from [<c00abfc8>] 
(do_cow_fault.isra.95+0x5c/0x17c)
[ 240.393044] [<c00abfc8>] (do_cow_fault.isra.95) from [<c00add2c>] 
(handle_mm_fault+0x410/0x8d8)
[ 240.401815] [<c00add2c>] (handle_mm_fault) from [<c0019140>] 
(do_page_fault+0x194/0x280)
[ 240.409966] [<c0019140>] (do_page_fault) from [<c0008560>] 
(do_DataAbort+0x38/0x9c)
[ 240.417691] [<c0008560>] (do_DataAbort) from [<c0012a18>] 
(__dabt_svc+0x38/0x60)
[ 240.425151] Exception stack(0xcaee7e78 to 0xcaee7ec0)
[ 240.430272] 7e60: 00037044 00000fb4
[ 240.438523] 7e80: 00000000 00000000 cbaf3880 caca7a00 caee7ed0 00037044 
cba3b900 cae46c00
[ 240.446768] 7ea0: 00037940 00037044 00000000 caee7ec0 c010ada4 c020cb84 
20000013 ffffffff
[ 240.455028] [<c0012a18>] (__dabt_svc) from [<c020cb84>] 
(__clear_user_std+0x34/0x64)
[ 360.460441] INFO: task kjournald:1402 blocked for more than 120 seconds.
[ 360.465763] Not tainted 3.18.3-svn1 #2
[ 360.470089] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 360.477997] kjournald D c04aa028 0 1402 2 0x00000000
[ 360.484419] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 360.491805] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 360.499268] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 360.506908] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 360.515586] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f69a8>] (__sync_dirty_buffer+0xc0/0xec)
[ 360.524789] [<c00f69a8>] (__sync_dirty_buffer) from [<c0182244>] 
(journal_commit_transaction+0xfc8/0x139c)
[ 360.534512] [<c0182244>] (journal_commit_transaction) from 
[<c0184e48>] (kjournald+0xe4/0x268)
[ 360.543201] [<c0184e48>] (kjournald) from [<c0039bb0>] 
(kthread+0xd8/0xf0)
[ 360.550132] [<c0039bb0>] (kthread) from [<c000f1b8>] 
(ret_from_fork+0x14/0x3c)
[ 360.557422] INFO: task upstart-udev-br:1524 blocked for more than 120 seconds.
[ 360.564708] Not tainted 3.18.3-svn1 #2
[ 360.569047] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 360.576948] upstart-udev-br D c04aa028 0 1524 1 0x00000000
[ 360.583380] [<c04aa028>] (__schedule) from [<c01848cc>] 
(log_wait_commit+0xd8/0x120)
[ 360.591197] [<c01848cc>] (log_wait_commit) from [<c00f0f44>] 
(do_fsync+0x50/0x78)
[ 360.598741] [<c00f0f44>] (do_fsync) from [<c000f120>] 
(ret_fast_syscall+0x0/0x30)
[ 360.606289] INFO: task systemd-udevd:1528 blocked for more than 120 seconds.
[ 360.613412] Not tainted 3.18.3-svn1 #2
[ 360.617742] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 360.625642] systemd-udevd D c04aa028 0 1528 1 0x00000004
[ 360.632071] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 360.639449] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 360.646916] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 360.654552] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 360.663234] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f4f04>] (__bread_gfp+0xa8/0xec)
[ 360.671742] [<c00f4f04>] (__bread_gfp) from [<c0127c14>] 
(ext3_get_branch+0x88/0x14c)
[ 360.679651] [<c0127c14>] (ext3_get_branch) from [<c0129800>] 
(ext3_get_blocks_handle+0x90/0xa40)
[ 360.688494] [<c0129800>] (ext3_get_blocks_handle) from 
[<c012a24c>] (ext3_get_block+0x9c/0xdc)
[ 360.697174] [<c012a24c>] (ext3_get_block) from [<c00fce08>] 
(do_mpage_readpage+0x470/0x7ac)
[ 360.705600] [<c00fce08>] (do_mpage_readpage) from [<c00fd20c>] 
(mpage_readpages+0xc8/0x118)
[ 360.714011] [<c00fd20c>] (mpage_readpages) from [<c00943d8>] 
(__do_page_cache_readahead+0x1b0/0x260)
[ 360.723217] [<c00943d8>] (__do_page_cache_readahead) from 
[<c008c0fc>] (filemap_fault+0x3ac/0x474)
[ 360.732243] [<c008c0fc>] (filemap_fault) from [<c00aa310>] 
(__do_fault+0x34/0x88)
[ 360.739792] [<c00aa310>] (__do_fault) from [<c00abfc8>] 
(do_cow_fault.isra.95+0x5c/0x17c)
[ 360.748040] [<c00abfc8>] (do_cow_fault.isra.95) from [<c00add2c>] 
(handle_mm_fault+0x410/0x8d8)
[ 360.756807] [<c00add2c>] (handle_mm_fault) from [<c0019140>] 
(do_page_fault+0x194/0x280)
[ 360.764961] [<c0019140>] (do_page_fault) from [<c0008560>] 
(do_DataAbort+0x38/0x9c)
[ 360.772688] [<c0008560>] (do_DataAbort) from [<c0012a18>] 
(__dabt_svc+0x38/0x60)
[ 360.780147] Exception stack(0xcaee7e78 to 0xcaee7ec0)
[ 360.785269] 7e60: 00037044 00000fb4
[ 360.793540] 7e80: 00000000 00000000 cbaf3880 caca7a00 caee7ed0 00037044 
cba3b900 cae46c00
[ 360.801765] 7ea0: 00037940 00037044 00000000 caee7ec0 c010ada4 c020cb84 
20000013 ffffffff
[ 360.810023] [<c0012a18>] (__dabt_svc) from [<c020cb84>] 
(__clear_user_std+0x34/0x64)
[ 480.815443] INFO: task kjournald:1402 blocked for more than 120 seconds.
[ 480.820838] Not tainted 3.18.3-svn1 #2
[ 480.825094] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 480.833006] kjournald D c04aa028 0 1402 2 0x00000000
[ 480.839427] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 480.846811] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 480.854273] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 480.861914] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 480.870593] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f69a8>] (__sync_dirty_buffer+0xc0/0xec)
[ 480.879795] [<c00f69a8>] (__sync_dirty_buffer) from [<c0182244>] 
(journal_commit_transaction+0xfc8/0x139c)
[ 480.889518] [<c0182244>] (journal_commit_transaction) from 
[<c0184e48>] (kjournald+0xe4/0x268)
[ 480.898196] [<c0184e48>] (kjournald) from [<c0039bb0>] 
(kthread+0xd8/0xf0)
[ 480.905137] [<c0039bb0>] (kthread) from [<c000f1b8>] 
(ret_from_fork+0x14/0x3c)
[ 480.912426] INFO: task upstart-udev-br:1524 blocked for more than 120 seconds.
[ 480.919713] Not tainted 3.18.3-svn1 #2
[ 480.924052] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 480.931952] upstart-udev-br D c04aa028 0 1524 1 0x00000000
[ 480.938392] [<c04aa028>] (__schedule) from [<c01848cc>] 
(log_wait_commit+0xd8/0x120)
[ 480.946200] [<c01848cc>] (log_wait_commit) from [<c00f0f44>] 
(do_fsync+0x50/0x78)
[ 480.953747] [<c00f0f44>] (do_fsync) from [<c000f120>] 
(ret_fast_syscall+0x0/0x30)
[ 480.961295] INFO: task systemd-udevd:1528 blocked for more than 120 seconds.
[ 480.968417] Not tainted 3.18.3-svn1 #2
[ 480.972747] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 480.980660] systemd-udevd D c04aa028 0 1528 1 0x00000004
[ 480.987076] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 480.994473] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 481.001922] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 481.009557] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 481.018238] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f4f04>] (__bread_gfp+0xa8/0xec)
[ 481.026746] [<c00f4f04>] (__bread_gfp) from [<c0127c14>] 
(ext3_get_branch+0x88/0x14c)
[ 481.034644] [<c0127c14>] (ext3_get_branch) from [<c0129800>] 
(ext3_get_blocks_handle+0x90/0xa40)
[ 481.043500] [<c0129800>] (ext3_get_blocks_handle) from 
[<c012a24c>] (ext3_get_block+0x9c/0xdc)
[ 481.052180] [<c012a24c>] (ext3_get_block) from [<c00fce08>] 
(do_mpage_readpage+0x470/0x7ac)
[ 481.060606] [<c00fce08>] (do_mpage_readpage) from [<c00fd20c>] 
(mpage_readpages+0xc8/0x118)
[ 481.069015] [<c00fd20c>] (mpage_readpages) from [<c00943d8>] 
(__do_page_cache_readahead+0x1b0/0x260)
[ 481.078223] [<c00943d8>] (__do_page_cache_readahead) from 
[<c008c0fc>] (filemap_fault+0x3ac/0x474)
[ 481.087247] [<c008c0fc>] (filemap_fault) from [<c00aa310>] 
(__do_fault+0x34/0x88)
[ 481.094797] [<c00aa310>] (__do_fault) from [<c00abfc8>] 
(do_cow_fault.isra.95+0x5c/0x17c)
[ 481.103045] [<c00abfc8>] (do_cow_fault.isra.95) from [<c00add2c>] 
(handle_mm_fault+0x410/0x8d8)
[ 481.111813] [<c00add2c>] (handle_mm_fault) from [<c0019140>] 
(do_page_fault+0x194/0x280)
[ 481.119966] [<c0019140>] (do_page_fault) from [<c0008560>] 
(do_DataAbort+0x38/0x9c)
[ 481.127692] [<c0008560>] (do_DataAbort) from [<c0012a18>] 
(__dabt_svc+0x38/0x60)
[ 481.135151] Exception stack(0xcaee7e78 to 0xcaee7ec0)
[ 481.140273] 7e60: 00037044 00000fb4
[ 481.148523] 7e80: 00000000 00000000 cbaf3880 caca7a00 caee7ed0 00037044 
cba3b900 cae46c00
[ 481.156769] 7ea0: 00037940 00037044 00000000 caee7ec0 c010ada4 c020cb84 
20000013 ffffffff
[ 481.165028] [<c0012a18>] (__dabt_svc) from [<c020cb84>] 
(__clear_user_std+0x34/0x64)
[ 601.170443] INFO: task kjournald:1402 blocked for more than 120 seconds.
[ 601.175773] Not tainted 3.18.3-svn1 #2
[ 601.180099] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables 
this message.
[ 601.188008] kjournald D c04aa028 0 1402 2 0x00000000
[ 601.194433] [<c04aa028>] (__schedule) from [<c04aa5f0>] 
(io_schedule+0x70/0x9c)
[ 601.201816] [<c04aa5f0>] (io_schedule) from [<c04aaccc>] 
(bit_wait_io+0x34/0x58)
[ 601.209278] [<c04aaccc>] (bit_wait_io) from [<c04aa920>] 
(__wait_on_bit+0x80/0xb8)
[ 601.216918] [<c04aa920>] (__wait_on_bit) from [<c04aa9c4>] 
(out_of_line_wait_on_bit+0x6c/0x74)
[ 601.225598] [<c04aa9c4>] (out_of_line_wait_on_bit) from 
[<c00f69a8>] (__sync_dirty_buffer+0xc0/0xec)
[ 601.234800] [<c00f69a8>] (__sync_dirty_buffer) from [<c0182244>] 
(journal_commit_transaction+0xfc8/0x139c)
[ 601.244535] [<c0182244>] (journal_commit_transaction) from 
[<c0184e48>] (kjournald+0xe4/0x268)
[ 601.253200] [<c0184e48>] (kjournald) from [<c0039bb0>] 
(kthread+0xd8/0xf0)
[ 601.260142] [<c0039bb0>] (kthread) from [<c000f1b8>] 
(ret_from_fork+0x14/0x3c)
---------------------------------------------------------------------------------
 
Accroding to log.
It seems that periperal irq arn't injected properly.
 
I think vgic_vcpu_inject_irq function can inject irq to any vcpu, any irq. 
right?
 
This is Bug??
or Intended on Xen 4.5.x?
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to