• Pravin B Shelar's avatar
    Revert "ip_gre: propogate target device GSO capability to the tunnel device" · 7992ae6d
    Pravin B Shelar authored
    This reverts commit eb6b9a8c.
    
    Above commit limits GSO capability of gre device to just TSO, but
    software GRE-GSO is capable of handling all GSO capabilities.
    
    This patch also fixes following panic which reverted commit introduced:-
    
    BUG: unable to handle kernel NULL pointer dereference at 00000000000000a2
    IP: [<ffffffffa0680fd1>] ipgre_tunnel_bind_dev+0x161/0x1f0 [ip_gre]
    PGD 42bc19067 PUD 42bca9067 PMD 0
    Oops: 0000 [#1] SMP
    Pid: 2636, comm: ip Tainted: GF            3.8.0+ #83 Dell Inc. PowerEdge R620/0KCKR5
    RIP: 0010:[<ffffffffa0680fd1>]  [<ffffffffa0680fd1>] ipgre_tunnel_bind_dev+0x161/0x1f0 [ip_gre]
    RSP: 0018:ffff88042bfcb708  EFLAGS: 00010246
    RAX: 00000000000005b6 RBX: ffff88042d2fa000 RCX: 0000000000000044
    RDX: 0000000000000018 RSI: 0000000000000078 RDI: 0000000000000060
    RBP: ffff88042bfcb748 R08: 0000000000000018 R09: 000000000000000c
    R10: 0000000000000020 R11: 000000000101010a R12: ffff88042d2fa800
    R13: 0000000000000000 R14: ffff88042d2fa800 R15: ffff88042cd7f650
    FS:  00007fa784f55700(0000) GS:ffff88043fd20000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 00000000000000a2 CR3: 000000042d8b9000 CR4: 00000000000407e0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Process ip (pid: 2636, threadinfo ffff88042bfca000, task ffff88042d142a80)
    Stack:
     0000000100000000 002f000000000000 0a01010100000000 000000000b010101
     ffff88042d2fa800 ffff88042d2fa000 ffff88042bfcb858 ffff88042f418c00
     ffff88042bfcb798 ffffffffa068199a ffff88042bfcb798 ffff88042d2fa830
    Call Trace:
     [<ffffffffa068199a>] ipgre_newlink+0xca/0x160 [ip_gre]
     [<ffffffff8143b692>] rtnl_newlink+0x532/0x5f0
     [<ffffffff8143b2fc>] ? rtnl_newlink+0x19c/0x5f0
     [<ffffffff81438978>] rtnetlink_rcv_msg+0x2c8/0x340
     [<ffffffff814386b0>] ? rtnetlink_rcv+0x40/0x40
     [<ffffffff814560f9>] netlink_rcv_skb+0xa9/0xd0
     [<ffffffff81438695>] rtnetlink_rcv+0x25/0x40
     [<ffffffff81455ddc>] netlink_unicast+0x1ac/0x230
     [<ffffffff81456a45>] netlink_sendmsg+0x265/0x380
     [<ffffffff814138c0>] sock_sendmsg+0xb0/0xe0
     [<ffffffff8141141e>] ? move_addr_to_kernel+0x4e/0x90
     [<ffffffff81420445>] ? verify_iovec+0x85/0xf0
     [<ffffffff81414ffd>] __sys_sendmsg+0x3fd/0x420
     [<ffffffff8114b701>] ? handle_mm_fault+0x251/0x3b0
     [<ffffffff8114f39f>] ? vma_link+0xcf/0xe0
     [<ffffffff81415239>] sys_sendmsg+0x49/0x90
     [<ffffffff814ffd19>] system_call_fastpath+0x16/0x1b
    
    CC: Dmitry Kravkov <dmitry@broadcom.com>
    Signed-off-by: default avatarPravin B Shelar <pshelar@nicira.com>
    Acked-by: default avatarDmitry Kravkov <dmitry@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7992ae6d
ip_gre.c 45.9 KB