• X
    xen-netfront: fix warn message as irq device name has '/' · 21f2706b
    Xiao Liang 提交于
    There is a call trace generated after commit 2d408c0d(
    xen-netfront: fix queue name setting). There is no 'device/vif/xx-q0-tx' file found
    under /proc/irq/xx/.
    
    This patch only picks up device type and id as its name.
    
    With the patch, now /proc/interrupts looks like below and the warning message gone:
     70:         21          0          0          0   xen-dyn    -event     vif0-q0-tx
     71:         15          0          0          0   xen-dyn    -event     vif0-q0-rx
     72:         14          0          0          0   xen-dyn    -event     vif0-q1-tx
     73:         33          0          0          0   xen-dyn    -event     vif0-q1-rx
     74:         12          0          0          0   xen-dyn    -event     vif0-q2-tx
     75:         24          0          0          0   xen-dyn    -event     vif0-q2-rx
     76:         19          0          0          0   xen-dyn    -event     vif0-q3-tx
     77:         21          0          0          0   xen-dyn    -event     vif0-q3-rx
    
    Below is call trace information without this patch:
    
    name 'device/vif/0-q0-tx'
    WARNING: CPU: 2 PID: 37 at fs/proc/generic.c:174 __xlate_proc_name+0x85/0xa0
    RIP: 0010:__xlate_proc_name+0x85/0xa0
    RSP: 0018:ffffb85c40473c18 EFLAGS: 00010286
    RAX: 0000000000000000 RBX: 0000000000000006 RCX: 0000000000000006
    RDX: 0000000000000007 RSI: 0000000000000096 RDI: ffff984c7f516930
    RBP: ffffb85c40473cb8 R08: 000000000000002c R09: 0000000000000229
    R10: 0000000000000000 R11: 0000000000000001 R12: ffffb85c40473c98
    R13: ffffb85c40473cb8 R14: ffffb85c40473c50 R15: 0000000000000000
    FS:  0000000000000000(0000) GS:ffff984c7f500000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 00007f69b6899038 CR3: 000000001c20a006 CR4: 00000000001606e0
    Call Trace:
    __proc_create+0x45/0x230
    ? snprintf+0x49/0x60
    proc_mkdir_data+0x35/0x90
    register_handler_proc+0xef/0x110
    ? proc_register+0xfc/0x110
    ? proc_create_data+0x70/0xb0
    __setup_irq+0x39b/0x660
    ? request_threaded_irq+0xad/0x160
    request_threaded_irq+0xf5/0x160
    ? xennet_tx_buf_gc+0x1d0/0x1d0 [xen_netfront]
    bind_evtchn_to_irqhandler+0x3d/0x70
    ? xenbus_alloc_evtchn+0x41/0xa0
    netback_changed+0xa46/0xcda [xen_netfront]
    ? find_watch+0x40/0x40
    xenwatch_thread+0xc5/0x160
    ? finish_wait+0x80/0x80
    kthread+0x112/0x130
    ? kthread_create_worker_on_cpu+0x70/0x70
    ret_from_fork+0x35/0x40
    Code: 81 5c 00 48 85 c0 75 cc 5b 49 89 2e 31 c0 5d 4d 89 3c 24 41 5c 41 5d 41 5e 41 5f c3 4c 89 ee 48 c7 c7 40 4f 0e b4 e8 65 ea d8 ff <0f> 0b b8 fe ff ff ff 5b 5d 41 5c 41 5d 41 5e 41 5f c3 66 0f 1f
    ---[ end trace 650e5561b0caab3a ]---
    Signed-off-by: NXiao Liang <xiliang@redhat.com>
    Reviewed-by: NJuergen Gross <jgross@suse.com>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    21f2706b
xen-netfront.c 55.1 KB