mlx5_core kernel trace after "ethtool -C eth1 adaptive-rx on" flow

Bug #1557950 reported by Talat Batheesh
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Tim Gardner
Fix Released
Tim Gardner

Bug Description

reproduce steps:
# ethtool -c eth1
Coalesce parameters for eth1:
Adaptive RX: off TX: off

# ethtool -C eth1 adaptive-rx on

# cat /etc/os-release
VERSION="16.04 (Xenial Xerus)"
PRETTY_NAME="Ubuntu 16.04"

# uname -a
Linux dev-h-vrt-006 4.4.0-11-generic #26-Ubuntu SMP Sat Mar 5 14:25:21 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[174430.803529] mst_pci: module verification failed: signature and/or required key missing - tainting kernel
[174453.001485] BUG: unable to handle kernel NULL pointer dereference at (null)
[174453.001509] IP: [<ffffffffc0152c7e>] mlx5e_set_coalesce+0x6e/0x100 [mlx5_core]
[174453.001535] PGD 81a5c7067 PUD 81aa93067 PMD 0
[174453.001556] Oops: 0000 [#1] SMP
[174453.001571] Modules linked in: mst_pciconf(OE) mst_pci(OE) nfsv3 nfs_acl rpcsec_gss_krb5 auth_rpcgss nfsv4 nfs lockd grace fscache mlx5_ib ib_core ib_addr vfio_pci vfio_virqfd vfio_iommu_type1 vfio xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject_ipv4 xt_tcpudp ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables bridge stp llc x86_pkg_temp_thermal intel_powerclamp coretemp crct10dif_pclmul crc32_pclmul aesni_intel kvm_intel aes_x86_64 ipmi_ssif lrw gf128mul glue_helper ablk_helper cryptd serio_raw kvm sb_edac edac_core irqbypass hpilo ipmi_si 8250_fintek ioatdma ipmi_msghandler acpi_power_meter mac_hid lpc_ich shpchp sunrpc autofs4 mlx4_en
[174453.001928] psmouse ixgbe dca vxlan pata_acpi ip6_udp_tunnel udp_tunnel mdio hpsa mlx5_core tg3 scsi_transport_sas mlx4_core ptp pps_core wmi fjes
[174453.002011] CPU: 2 PID: 40824 Comm: ethtool Tainted: G OE 4.4.0-11-generic #26-Ubuntu
[174453.002026] Hardware name: HP ProLiant DL380p Gen8, BIOS P70 12/20/2013
[174453.002037] task: ffff8800bd919b80 ti: ffff880814d74000 task.ti: ffff880814d74000
[174453.002072] RIP: 0010:[<ffffffffc0152c7e>] [<ffffffffc0152c7e>] mlx5e_set_coalesce+0x6e/0x100 [mlx5_core]
[174453.002119] RSP: 0018:ffff880814d77c30 EFLAGS: 00010246
[174453.002141] RAX: 0000000000000000 RBX: ffff880816e00000 RCX: 0000000000000000
[174453.002176] RDX: 0000000000000000 RSI: ffff880814d77c74 RDI: ffff880814e60000
[174453.002210] RBP: ffff880814d77c60 R08: ffffffff81e42520 R09: ffffffffff000000
[174453.002245] R10: 0000000000000533 R11: 0000000000000246 R12: ffff880814d77c74
[174453.002280] R13: ffff880814e60000 R14: 0000000000000000 R15: ffff880814e60000
[174453.002316] FS: 00007f7e927f7700(0000) GS:ffff88081f680000(0000) knlGS:0000000000000000
[174453.002352] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[174453.002374] CR2: 0000000000000000 CR3: 0000000818365000 CR4: 00000000001406e0
[174453.002409] Stack:
[174453.002427] 0000000017a4b290 ffff880814e60000 0000000600114bb3 000000000000000f
[174453.002476] 0000000000008946 ffff880814e60000 ffff880814d77ce0 ffffffff8171784a
[174453.002525] 0000000f00000010 0000002000000010 0000000000000000 0000002000000010
[174453.002574] Call Trace:
[174453.002597] [<ffffffff8171784a>] ethtool_set_coalesce+0x5a/0x80
[174453.002621] [<ffffffff81719928>] dev_ethtool+0xe78/0x1d70
[174453.002645] [<ffffffff8119a76b>] ? page_cache_async_readahead+0x6b/0x70
[174453.002670] [<ffffffff811c9505>] ? page_add_file_rmap+0x25/0x60
[174453.002694] [<ffffffff81727c95>] ? __rtnl_unlock+0x15/0x20
[174453.002717] [<ffffffff81717141>] ? netdev_run_todo+0x61/0x320
[174453.002741] [<ffffffff8172bf02>] dev_ioctl+0x182/0x580
[174453.002765] [<ffffffff816f3e12>] sock_do_ioctl+0x42/0x50
[174453.002788] [<ffffffff816f4312>] sock_ioctl+0x1d2/0x290
[174453.002811] [<ffffffff8121e3ef>] do_vfs_ioctl+0x29f/0x490
[174453.003136] [<ffffffff8106a554>] ? __do_page_fault+0x1b4/0x400
[174453.003161] [<ffffffff81228c35>] ? fd_install+0x25/0x30
[174453.003183] [<ffffffff8121e659>] SyS_ioctl+0x79/0x90
[174453.003208] [<ffffffff8181c832>] entry_SYSCALL_64_fastpath+0x16/0x71
[174453.003231] Code: 66 89 87 36 66 00 00 8b 46 08 66 89 87 38 66 00 00 0f 84 91 00 00 00 49 89 fd 49 89 f4 48 63 45 d4 49 8b 95 00 13 00 00 45 31 f6 <4c> 8b 3c c2 41 80 bf dc 18 00 00 00 74 3d 49 63 c6 41 0f b7 4c
[174453.003564] RIP [<ffffffffc0152c7e>] mlx5e_set_coalesce+0x6e/0x100 [mlx5_core]
[174453.003607] RSP <ffff880814d77c30>
[174453.003626] CR2: 0000000000000000
[174453.004055] ---[ end trace 8466dfbb422a27d8 ]---

Fix upstream commits
7524a5d88b94afef8397a79f1e664af5b7052c22 net/mlx5e: Don't modify CQ before it was created
2fcb92fbd04eef26dfe7e67839da6262d83d6b65 net/mlx5e: Don't try to modify CQ moderation if it is not supported

Tags: patch
Revision history for this message
Talat Batheesh (talat-b87) wrote :
Revision history for this message
Talat Batheesh (talat-b87) wrote :
Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1557950

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Xenial):
assignee: nobody → Tim Gardner (timg-tpi)
status: Incomplete → In Progress
status: In Progress → Fix Committed
tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (11.3 KiB)

This bug was fixed in the package linux - 4.4.0-15.31

linux (4.4.0-15.31) xenial; urgency=low

  [ Tim Gardner ]

  * Release Tracking Bug
    - LP: #1559252

  * Xilinx KU3 Capi card does not show up in Ubuntu 16.04 (LP: #1557001)
    - SAUCE: (noup) cxl: Allow initialization on timebase sync failures

  * policy namespace stacking (LP: #1379535)
    - Revert "UBUNTU: SAUCE: Move replacedby allocation into label_alloc"
    - Revert "UBUNTU: SAUCE: Fixup: __label_update() still doesn't handle some cases correctly."
    - Revert "UBUNTU: SAUCE: fix: audit "no_new_privs" case for exec failure"
    - Revert "UBUNTU: SAUCE: fixup: warning about aa_label_vec_find_or_create not being static"
    - Revert "UBUNTU: SAUCE: apparmor: fix refcount race when finding a child profile"
    - Revert "UBUNTU: SAUCE: fixup: cast poison values to remove warnings"
    - Revert "UBUNTU: SAUCE: fixup: get rid of unused var build warning"
    - Revert "UBUNTU: SAUCE: fixup: 20/23 locking issue around in __label_update"
    - Revert "UBUNTU: SAUCE: fixup: make __share_replacedby private to get rid of build warning"
    - Revert "UBUNTU: SAUCE: fix: replacedby forwarding is not being properly update when ns is destroyed"
    - Revert "UBUNTU: SAUCE: apparmor: fix log of apparmor audit message when kern_path() fails"
    - Revert "UBUNTU: SAUCE: fixup: cleanup return handling of labels"
    - Revert "UBUNTU: SAUCE: apparmor: fix: ref count leak when profile sha1 hash is read"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: query label file permission"
    - Revert "UBUNTU: SAUCE: apparmor: Don't remove label on rcu callback if the label has already been removed"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: break circular refcount for label that is directly freed."
    - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount bug when inserting label update that transitions ns"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: now that insert can force replacement use it instead of remove_and_insert"
    - Revert "UBUNTU: SAUCE: apparmor Fix: refcount bug in pivotroot mediation"
    - Revert "UBUNTU: SAUCE: apparmor: ensure that repacedby sharing is done correctly"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: update replacedby allocation to take a gfp parameter"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: convert replacedby update to be protected by the labelset lock"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: add required locking of __aa_update_replacedby on merge path"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: deadlock in aa_put_label() call chain"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: label_vec_merge insertion"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: ensure new labels resulting from merge have a replacedby"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount leak in aa_label_merge"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: refcount race between locating in labelset and get"
    - Revert "UBUNTU: SAUCE: apparmor: Fix: label merge handling of marking unconfined and stale"
    - Revert "UBUNTU: SAUCE: apparmor: add underscores to indicate aa_label_next_not_in_set() use needs locking"
    - Revert "UBUNTU: SAUCE: apparmor: debug: POISON label and replaceby ...

Changed in linux (Ubuntu Xenial):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.