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

[Xen-users] Re: Is there something missing for my NIC passthough?


  • To: Pasi Kärkkäinen <pasik@xxxxxx>
  • From: lei yang <yanglei.fage@xxxxxxxxx>
  • Date: Fri, 28 May 2010 16:40:35 +0800
  • Cc: Xen Mailing List <xen-users@xxxxxxxxxxxxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
  • Delivery-date: Fri, 28 May 2010 01:42:12 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=sxd0G5afrwXo3vsqDXqaYhdGjjST2pDYh6Q3BOAdafOZ6WCJyBKSk4GCHQg2tINg/R EOmIKmZhSuvZk1mRKhshzI7MhBtvDYf78GIE9DOqwJIlZRtkTQBCwZI9ySoPawSbPa8N THjHrqiIBhQ5LmPqlYzHu0mePvYd9L0TSFwBU=
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

Aha, I have got my pci-passthough working on 2.6.34 as Pasik's information
I update to http://git.kernel.org/?p=linux/kernel/git/konrad/xen.git;a=shortlog;h=refs/heads/pv/merge.2.6.34-rc7
For pci passthough just have one kernel config item "CONFIG_XEN_PCIDEV_FRONTEND=y" I enabled it


on domU
root@localhost:/root> uname -a
Linux localhost 2.6.34-rc7 #1 SMP Fri May 28 01:13:16 PDT 2010 i686 i686 i386 GNU/Linux
root@localhost:/root> lspci
00:00.0 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)

It's strange

1. I specify the pci = ['05:00.0'] in domU.cfg but lspci in domU see "00:00.0"
2. when run xm crate -f domU.cfg -c it print calltrace but it can loginto domU, my dom0 use 2.6.33.3


[Â 537.251100] blkback.1.xvda1 used greatest stack depth: 5984 bytes left
[Â 481.466766] Restarting system.
root@localhost:/> [Â 537.833874] blktap_device_destroy: 6 callbacks suppressed
[Â 537.936903] blktap_sysfs_destroy
[Â 534.584965] blktap_sysfs_create: adding attributes for dev ebfd9b40
[Â 538.096286] blktap_sysfs_destroy
[Â 534.704450] blktap_sysfs_create: adding attributes for dev ece436c0
[Â 538.374434] BUG: scheduling while atomic: xenwatch/40/0x00000002
[Â 538.381142] Modules linked in:
[Â 538.384569] Pid: 40, comm: xenwatch Not tainted 2.6.33.3 #4
[Â 538.390791] Call Trace:
[Â 538.393529]Â [<c1032285>] ? __schedule_bug+0x44/0x56
[Â 538.399068]Â [<c14abf3a>] ? schedule+0x89/0x837
[Â 538.404131]Â [<c119a930>] ? string+0x33/0x81
[Â 538.408900]Â [<c11f5a71>] ? notify_remote_via_evtchn+0x19/0x59
[Â 538.415414]Â [<c119b83e>] ? vsnprintf+0x157/0x2fa
[Â 538.420669]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 538.427182]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.432339]Â [<c11f6336>] ? read_reply+0x81/0xf5
[Â 538.437497]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 538.443914]Â [<c11f64fb>] ? xs_talkv+0x8a/0x121
[Â 538.448973]Â [<c11f6676>] ? xs_single+0x29/0x2f
[Â 538.454031]Â [<c11f6c29>] ? xenbus_read+0x2b/0x3b
[Â 538.459284]Â [<c11f6c61>] ? xenbus_gather+0x28/0x71
[Â 538.464732]Â [<c11f52b0>] ? xenbus_read_driver_state+0x1c/0x2f
[Â 538.471247]Â [<c11fb24a>] ? pciback_be_watch+0x3d/0x208
[Â 538.477081]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 538.483594]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.488749]Â [<c1006f0b>] ? xen_restore_fl_direct_end+0x0/0x1
[Â 538.495166]Â [<c10bf103>] ? kfree+0x11e/0x126
[Â 538.500032]Â [<c11f65d7>] ? xs_watch+0x45/0x4e
[Â 538.504996]Â [<c11f69c7>] ? register_xenbus_watch+0xcc/0xd4
[Â 538.511220]Â [<c11f58d9>] ? xenbus_watch_path+0x1b/0x46
[Â 538.517057]Â [<c11fb836>] ? pciback_xenbus_probe+0x101/0x11f
[Â 538.523377]Â [<c11f74b4>] ? xenbus_dev_probe+0x63/0xd6
[Â 538.529118]Â [<c126393c>] ? driver_probe_device+0x76/0xfe
[Â 538.535147]Â [<c12631a1>] ? bus_for_each_drv+0x37/0x5f
[Â 538.540887]Â [<c1263aa3>] ? device_attach+0x41/0x51
[Â 538.546333]Â [<c1263a1f>] ? __device_attach+0x0/0x28
[Â 538.551878]Â [<c1263048>] ? bus_probe_device+0x19/0x2d
[Â 538.557615]Â [<c1261fdc>] ? device_add+0x305/0x443
[Â 538.562964]Â [<c1196642>] ? kobject_init+0x33/0x69
[Â 538.568313]Â [<c1261a0c>] ? device_initialize+0x19/0x67
[Â 538.574148]Â [<c11f7168>] ? xenbus_probe_node+0xd3/0x141
[Â 538.580081]Â [<c11f7301>] ? xenbus_dev_changed+0x12b/0x143
[Â 538.586208]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.591364]Â [<c11f628e>] ? xenwatch_thread+0xe0/0x107
[Â 538.597102]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 538.603520]Â [<c11f61ae>] ? xenwatch_thread+0x0/0x107
[Â 538.609160]Â [<c1050acd>] ? kthread+0x61/0x66
[Â 538.614025]Â [<c1050a6c>] ? kthread+0x0/0x66
[Â 538.618794]Â [<c10093b6>] ? kernel_thread_helper+0x6/0x10
[Â 538.639586] BUG: scheduling while atomic: xenwatch/40/0x00000002
[Â 538.646294] Modules linked in:
[Â 538.649709] Pid: 40, comm: xenwatch Not tainted 2.6.33.3 #4
[Â 538.655932] Call Trace:
[Â 538.658666]Â [<c1032285>] ? __schedule_bug+0x44/0x56
[Â 538.664212]Â [<c14abf3a>] ? schedule+0x89/0x837
[Â 538.669273]Â [<c11f5a71>] ? notify_remote_via_evtchn+0x19/0x59
[Â 538.675786]Â [<c119b83e>] ? vsnprintf+0x157/0x2fa
[Â 538.681040]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 538.687554]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.692710]Â [<c11f6336>] ? read_reply+0x81/0xf5
[Â 538.697866]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 538.704281]Â [<c11f64fb>] ? xs_talkv+0x8a/0x121
[Â 538.709341]Â [<c11f6676>] ? xs_single+0x29/0x2f
[Â 538.714400]Â [<c11f6c29>] ? xenbus_read+0x2b/0x3b
[Â 538.719651]Â [<c11f6cbf>] ? xenbus_scanf+0x15/0x49
[Â 538.725000]Â [<c11fb272>] ? pciback_be_watch+0x65/0x208
[Â 538.730836]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 538.737349]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.742504]Â [<c1006f0b>] ? xen_restore_fl_direct_end+0x0/0x1
[Â 538.748922]Â [<c10bf103>] ? kfree+0x11e/0x126
[Â 538.753788]Â [<c11f65d7>] ? xs_watch+0x45/0x4e
[Â 538.758751]Â [<c11f69c7>] ? register_xenbus_watch+0xcc/0xd4
[Â 538.764973]Â [<c11f58d9>] ? xenbus_watch_path+0x1b/0x46
[Â 538.770809]Â [<c11fb836>] ? pciback_xenbus_probe+0x101/0x11f
[Â 538.777129]Â [<c11f74b4>] ? xenbus_dev_probe+0x63/0xd6
[Â 538.782869]Â [<c126393c>] ? driver_probe_device+0x76/0xfe
[Â 538.788898]Â [<c12631a1>] ? bus_for_each_drv+0x37/0x5f
[Â 538.794637]Â [<c1263aa3>] ? device_attach+0x41/0x51
[Â 538.800086]Â [<c1263a1f>] ? __device_attach+0x0/0x28
[Â 538.805630]Â [<c1263048>] ? bus_probe_device+0x19/0x2d
[Â 538.811368]Â [<c1261fdc>] ? device_add+0x305/0x443
[Â 538.816719]Â [<c1196642>] ? kobject_init+0x33/0x69
[Â 538.822069]Â [<c1261a0c>] ? device_initialize+0x19/0x67
[Â 538.827903]Â [<c11f7168>] ? xenbus_probe_node+0xd3/0x141
[Â 538.833834]Â [<c11f7301>] ? xenbus_dev_changed+0x12b/0x143
[Â 538.839961]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.845118]Â [<c11f628e>] ? xenwatch_thread+0xe0/0x107
[Â 538.850855]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 538.857305]Â [<c11f61ae>] ? xenwatch_thread+0x0/0x107
[Â 538.862946]Â [<c1050acd>] ? kthread+0x61/0x66
[Â 538.867811]Â [<c1050a6c>] ? kthread+0x0/0x66
[Â 538.872579]Â [<c10093b6>] ? kernel_thread_helper+0x6/0x10
[Â 538.880348] BUG: scheduling while atomic: xenwatch/40/0x00000002
[Â 538.887058] Modules linked in:
[Â 538.890481] Pid: 40, comm: xenwatch Not tainted 2.6.33.3 #4
[Â 538.896702] Call Trace:
[Â 538.899437]Â [<c1032285>] ? __schedule_bug+0x44/0x56
[Â 538.904984]Â [<c14abf3a>] ? schedule+0x89/0x837
[Â 538.910045]Â [<c102d31e>] ? need_resched+0x11/0x1a
[Â 538.915395]Â [<c14ac6bd>] ? schedule+0x80c/0x837
[Â 538.920550]Â [<c119a930>] ? string+0x33/0x81
[Â 538.925319]Â [<c11f5a71>] ? notify_remote_via_evtchn+0x19/0x59
[Â 538.931834]Â [<c119b83e>] ? vsnprintf+0x157/0x2fa
[Â 538.937087]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 538.943601]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.948758]Â [<c11f6336>] ? read_reply+0x81/0xf5
[Â 538.953914]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 538.960332]Â [<c11f64fb>] ? xs_talkv+0x8a/0x121
[Â 538.965391]Â [<c11f6676>] ? xs_single+0x29/0x2f
[Â 538.970450]Â [<c11f6c29>] ? xenbus_read+0x2b/0x3b
[Â 538.975703]Â [<c11f6cbf>] ? xenbus_scanf+0x15/0x49
[Â 538.981053]Â [<c11fb2e8>] ? pciback_be_watch+0xdb/0x208
[Â 538.986889]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 538.993404]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 538.998562]Â [<c1006f0b>] ? xen_restore_fl_direct_end+0x0/0x1
[Â 539.004978]Â [<c10bf103>] ? kfree+0x11e/0x126
[Â 539.009843]Â [<c11f65d7>] ? xs_watch+0x45/0x4e
[Â 539.014807]Â [<c11f69c7>] ? register_xenbus_watch+0xcc/0xd4
[Â 539.021031]Â [<c11f58d9>] ? xenbus_watch_path+0x1b/0x46
[Â 539.026867]Â [<c11fb836>] ? pciback_xenbus_probe+0x101/0x11f
[Â 539.033187]Â [<c11f74b4>] ? xenbus_dev_probe+0x63/0xd6
[Â 539.038925]Â [<c126393c>] ? driver_probe_device+0x76/0xfe
[Â 539.044956]Â [<c12631a1>] ? bus_for_each_drv+0x37/0x5f
[Â 539.050695]Â [<c1263aa3>] ? device_attach+0x41/0x51
[Â 539.056141]Â [<c1263a1f>] ? __device_attach+0x0/0x28
[Â 539.061686]Â [<c1263048>] ? bus_probe_device+0x19/0x2d
[Â 539.067423]Â [<c1261fdc>] ? device_add+0x305/0x443
[Â 539.072773]Â [<c1196642>] ? kobject_init+0x33/0x69
[Â 539.078122]Â [<c1261a0c>] ? device_initialize+0x19/0x67
[Â 539.083957]Â [<c11f7168>] ? xenbus_probe_node+0xd3/0x141
[Â 539.089889]Â [<c11f7301>] ? xenbus_dev_changed+0x12b/0x143
[Â 539.096014]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 539.101169]Â [<c11f628e>] ? xenwatch_thread+0xe0/0x107
[Â 539.106908]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 539.113324]Â [<c11f61ae>] ? xenwatch_thread+0x0/0x107
[Â 539.118966]Â [<c1050acd>] ? kthread+0x61/0x66
[Â 539.123833]Â [<c1050a6c>] ? kthread+0x0/0x66
[Â 539.128602]Â [<c10093b6>] ? kernel_thread_helper+0x6/0x10
[Â 539.158338] BUG: scheduling while atomic: xenwatch/40/0x00000002
[Â 539.165038] Modules linked in:
[Â 539.168462] Pid: 40, comm: xenwatch Not tainted 2.6.33.3 #4
[Â 539.174685] Call Trace:
[Â 539.177419]Â [<c1032285>] ? __schedule_bug+0x44/0x56
[Â 539.182965]Â [<c14abf3a>] ? schedule+0x89/0x837
[Â 539.188025]Â [<c11f5a71>] ? notify_remote_via_evtchn+0x19/0x59
[Â 539.194539]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 539.201053]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 539.206209]Â [<c11f6336>] ? read_reply+0x81/0xf5
[Â 539.211367]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 539.217785]Â [<c11f64fb>] ? xs_talkv+0x8a/0x121
[Â 539.222845]Â [<c11f6b5f>] ? xenbus_write+0x4f/0x72
[Â 539.228196]Â [<c11f6bef>] ? xenbus_printf+0x6d/0x7c
[Â 539.233644]Â [<c11fb03e>] ? pciback_publish_pci_dev+0x59/0x68
[Â 539.240062]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 539.245218]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 539.251732]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 539.256889]Â [<c11fcedc>] ? pciback_add_pci_dev+0x1b9/0x1c9
[Â 539.263113]Â [<c11fb1be>] ? pciback_export_device+0x54/0xa3
[Â 539.269337]Â [<c11fafe5>] ? pciback_publish_pci_dev+0x0/0x68
[Â 539.275657]Â [<c11fb33d>] ? pciback_be_watch+0x130/0x208
[Â 539.281591]Â [<c1006704>] ? xen_force_evtchn_callback+0xc/0x10
[Â 539.288105]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 539.293263]Â [<c1006f0b>] ? xen_restore_fl_direct_end+0x0/0x1
[Â 539.299680]Â [<c10bf103>] ? kfree+0x11e/0x126
[Â 539.304545]Â [<c11f65d7>] ? xs_watch+0x45/0x4e
[Â 539.309508]Â [<c11f69c7>] ? register_xenbus_watch+0xcc/0xd4
[Â 539.315732]Â [<c11fb836>] ? pciback_xenbus_probe+0x101/0x11f
[Â 539.322052]Â [<c11f74b4>] ? xenbus_dev_probe+0x63/0xd6
[Â 539.327790]Â [<c126393c>] ? driver_probe_device+0x76/0xfe
[Â 539.333819]Â [<c12631a1>] ? bus_for_each_drv+0x37/0x5f
[Â 539.339559]Â [<c1263aa3>] ? device_attach+0x41/0x51
[Â 539.345007]Â [<c1263a1f>] ? __device_attach+0x0/0x28
[Â 539.350552]Â [<c1263048>] ? bus_probe_device+0x19/0x2d
[Â 539.356289]Â [<c1261fdc>] ? device_add+0x305/0x443
[Â 539.361638]Â [<c1196642>] ? kobject_init+0x33/0x69
[Â 539.366989]Â [<c1261a0c>] ? device_initialize+0x19/0x67
[Â 539.372823]Â [<c11f7168>] ? xenbus_probe_node+0xd3/0x141
[Â 539.378755]Â [<c11f7301>] ? xenbus_dev_changed+0x12b/0x143
[Â 539.384881]Â [<c1006f14>] ? check_events+0x8/0xc
[Â 539.390039]Â [<c11f628e>] ? xenwatch_thread+0xe0/0x107
[Â 539.395778]Â [<c1050e6e>] ? autoremove_wake_function+0x0/0x2d
[Â 539.402195]Â [<c11f61ae>] ? xenwatch_thread+0x0/0x107
[Â 539.407837]Â [<c1050acd>] ? kthread+0x61/0x66
[Â 539.412703]Â [<c1050a6c>] ? kthread+0x0/0x66
[Â 539.417470]Â [<c10093b6>] ? kernel_thread_helper+0x6/0x10
[Â 539.425964] pciback 0000:05:00.0: device has been assigned to another domain! Over-writting the ownership, but beware.
[Â 539.437956] BUG: scheduling while atomic: xenwatch/40/0x00000002
[Â 539.444663] Modules linked in:
[Â 539.448080] Pid: 40, comm: xenwatch Not tainted 2.6.33.3 #4
[Â 539.454301] Call Trace:


On Fri, May 28, 2010 at 3:38 PM, Pasi KÃrkkÃinen <pasik@xxxxxx> wrote:
On Fri, May 28, 2010 at 03:30:17PM +0800, lei yang wrote:
> Â ÂOn Fri, May 28, 2010 at 3:18 PM, Pasi KÃrkkÃinen <[1]pasik@xxxxxx> wrote:
>
> Â Â ÂOn Fri, May 28, 2010 at 03:16:20PM +0800, lei yang wrote:
> Â Â Â> Â Â Â> Â ÂloÄ Ä Ä Ä Ä Ä Ä ÂLink encap:Local Loopback
> Â Â Â> Â Â Â> Â ÂÄ Ä Ä Ä Ä Ä Ä Ä Ä ÂLOOPBACKÄ ÂMTU:16436Ä ÂMetric:1
> Â Â Â> Â Â Â> Â ÂÄ Ä Ä Ä Ä Ä Ä Ä Ä ÂRX packets:0 errors:0 dropped:0
> Â Â Âoverruns:0
> Â Â Â> Â Â Âframe:0
> Â Â Â> Â Â Â> Â ÂÄ Ä Ä Ä Ä Ä Ä Ä Ä ÂTX packets:0 errors:0 dropped:0
> Â Â Âoverruns:0
> Â Â Â> Â Â Âcarrier:0
> Â Â Â> Â Â Â> Â ÂÄ Ä Ä Ä Ä Ä Ä Ä Ä Âcollisions:0 txqueuelen:0
> Â Â Â> Â Â Â> Â ÂÄ Ä Ä Ä Ä Ä Ä Ä Ä ÂRX bytes:0 (0.0 b)Ä ÂTX bytes:0 (0.0 b)
> Â Â Â> Â Â Â> Â Â[7]root@localhost:/root> lspci
> Â Â Â> Â Â Â> Â Â[8]root@localhost:/root>
> Â Â Â> Â Â Â> Â ÂÄ
> Â Â Â> Â Â Â>
> Â Â Â>
> Â Â Â> Â Â ÂDoes your domU kernel have xen-pcifront driver? is it loaded?
> Â Â Â> Â Â Âthat's required for PCI passthrough to PV guests.
> Â Â Â>
> Â Â Â> Â Â ÂNote that upstream ([1][2]kernel.org) kernels don't yet have
> Â Â Âxen-pcifront
> Â Â Â> Â Â Âincluded.
> Â Â Â>
> Â Â Â> Â ÂMy kernel is from [2][3]kernel.org the latest version, if I use
> Â Â Âthis version
> Â Â Â> Â Âto do my pci ehternet pci passthough
> Â Â Â> Â ÂHow can I do it?
> Â Â Â>
>
> Â Â ÂSo you're missing xen-pcifront (and swiotlb) support. That's your
> Â Â Âproblem.
> Â Â Â[4]http://wiki.xensource.com/xenwiki/XenPCIpassthrough
>
> Â Â ÂInstructions there about how to get a kernel with xen-pcifront and
> Â Â Âswiotlb.
>
> Â ÂThanks, I had saw this page, Unfortunately, that patch is just support
> Â Â2.6.32 ore 2.6.33
>

Konrad (CC) is in the process of preparing xen-pcifront and swiotlb patches
for upstream Linux merge. Until the patches are merged you have to keep using
what you have, or forward-port the patches yourself to newer kernels.

It seems konrad has a port to 2.6.34-rc7 here:
http://git.kernel.org/?p=linux/kernel/git/konrad/xen.git;a=shortlog;h=refs/heads/pv/merge.2.6.34-rc7

He's been away for a vacation so maybe he'll update the tree to 2.6.34 final at some point.

At the moment it makes sense to use 2.6.32 kernel for the domU since that's the
long-term maintained kernel for both kernel.org and xen.org. Jeremy's git tree
has xen-pcifront and swiotlb patches included in the xen/stable-2.6.32.x branch.

-- Pasi




--
"We learn from failure, not from success!"
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.