1. 23 5月, 2018 2 次提交
  2. 08 5月, 2018 1 次提交
  3. 14 2月, 2018 1 次提交
    • A
      scsi: qedf: fix LTO-enabled build · d9ea463a
      Arnd Bergmann 提交于
      The prototype for qedf_dbg_fops/qedf_debugfs_ops doesn't match the definition,
      which causes the final link to fail with link-time optimizations:
      
      drivers/scsi/qedf/qedf_main.c:34: error: type of 'qedf_dbg_fops' does not match original declaration [-Werror=lto-type-mismatch]
       extern struct file_operations qedf_dbg_fops;
      
      drivers/scsi/qedf/qedf_debugfs.c:443: note: 'qedf_dbg_fops' was previously declared here
       const struct file_operations qedf_dbg_fops[] = {
      
      drivers/scsi/qedf/qedf_main.c:33: error: type of 'qedf_debugfs_ops' does not match original declaration [-Werror=lto-type-mismatch]
       extern struct qedf_debugfs_ops qedf_debugfs_ops;
      
      drivers/scsi/qedf/qedf_debugfs.c:102: note: 'qedf_debugfs_ops' was previously declared here
       struct qedf_debugfs_ops qedf_debugfs_ops[] = {
      
      This corrects the prototype and moves it into a shared header file where it
      belongs. The file operations can also be marked 'const' like the
      qedf_debugfs_ops.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NChad Dupuis <chad.dupuis@cavium.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      d9ea463a
  4. 23 1月, 2018 1 次提交
  5. 03 1月, 2018 2 次提交
  6. 26 8月, 2017 1 次提交
  7. 25 8月, 2017 5 次提交
  8. 27 7月, 2017 1 次提交
  9. 13 7月, 2017 1 次提交
  10. 16 6月, 2017 2 次提交
    • J
      networking: make skb_pull & friends return void pointers · af72868b
      Johannes Berg 提交于
      It seems like a historic accident that these return unsigned char *,
      and in many places that means casts are required, more often than not.
      
      Make these functions return void * and remove all the casts across
      the tree, adding a (u8 *) cast only where the unsigned char pointer
      was used directly, all done with the following spatch:
      
          @@
          expression SKB, LEN;
          typedef u8;
          identifier fn = {
                  skb_pull,
                  __skb_pull,
                  skb_pull_inline,
                  __pskb_pull_tail,
                  __pskb_pull,
                  pskb_pull
          };
          @@
          - *(fn(SKB, LEN))
          + *(u8 *)fn(SKB, LEN)
      
          @@
          expression E, SKB, LEN;
          identifier fn = {
                  skb_pull,
                  __skb_pull,
                  skb_pull_inline,
                  __pskb_pull_tail,
                  __pskb_pull,
                  pskb_pull
          };
          type T;
          @@
          - E = ((T *)(fn(SKB, LEN)))
          + E = fn(SKB, LEN)
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      af72868b
    • J
      networking: make skb_put & friends return void pointers · 4df864c1
      Johannes Berg 提交于
      It seems like a historic accident that these return unsigned char *,
      and in many places that means casts are required, more often than not.
      
      Make these functions (skb_put, __skb_put and pskb_put) return void *
      and remove all the casts across the tree, adding a (u8 *) cast only
      where the unsigned char pointer was used directly, all done with the
      following spatch:
      
          @@
          expression SKB, LEN;
          typedef u8;
          identifier fn = { skb_put, __skb_put };
          @@
          - *(fn(SKB, LEN))
          + *(u8 *)fn(SKB, LEN)
      
          @@
          expression E, SKB, LEN;
          identifier fn = { skb_put, __skb_put };
          type T;
          @@
          - E = ((T *)(fn(SKB, LEN)))
          + E = fn(SKB, LEN)
      
      which actually doesn't cover pskb_put since there are only three
      users overall.
      
      A handful of stragglers were converted manually, notably a macro in
      drivers/isdn/i4l/isdn_bsdcomp.c and, oddly enough, one of the many
      instances in net/bluetooth/hci_sock.c. In the former file, I also
      had to fix one whitespace problem spatch introduced.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4df864c1
  11. 13 6月, 2017 13 次提交
  12. 25 5月, 2017 1 次提交
  13. 09 5月, 2017 1 次提交
  14. 08 4月, 2017 1 次提交
    • C
      scsi: qedf: Fix crash due to unsolicited FIP VLAN response. · 8eaf7dfc
      Chad Dupuis 提交于
      We need to initialize qedf->fipvlan_compl in __qedf_probe so that if we
      receive an unsolicited FIP VLAN response, the system doesn't crash due
      to trying to complete an uninitialized completion.
      
      Also add a check to see if there are any waiters on the completion so we
      don't inadvertantly kick start the discovery process due to the
      unsolicited frame.
      
      Fixed the crash:
      
      <1>BUG: unable to handle kernel NULL pointer dereference at (null)
      <1>IP: [<ffffffff8105ed71>] __wake_up_common+0x31/0x90
      <4>PGD 0
      <4>Oops: 0000 [#1] SMP
      <4>last sysfs file: /sys/devices/system/cpu/online
      <4>CPU 7
      <4>Modules linked in: autofs4 nfs lockd fscache auth_rpcgss nfs_acl sunrpc target_core_iblock target_core_file target_core_pscsi target_core_mod configfs bnx2fc cnic fcoe 8021q garp stp llc ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables ipv6 vfat fat uinput ipmi_devintf microcode power_meter acpi_ipmi ipmi_si ipmi_msghandler iTCO_wdt iTCO_vendor_support dcdbas sg joydev sb_edac edac_core lpc_ich mfd_core shpchp tg3 ptp pps_core ext4 jbd2 mbcache sr_mod cdrom sd_mod crc_t10dif qedi(U) iscsi_boot_sysfs libiscsi scsi_transport_iscsi uio qedf(U) libfcoe libfc scsi_transport_fc scsi_tgt qede(U) qed(U) ahci megaraid_sas wmi dm_mirror dm_region_hash dm_log dm_mod [last unloaded: speedstep_lib]
      <4>
      <4>Pid: 1485, comm: qedf_11_ll2 Not tainted 2.6.32-642.el6.x86_64 #1 Dell Inc. PowerEdge R730/0599V5
      <4>RIP: 0010:[<ffffffff8105ed71>]  [<ffffffff8105ed71>] __wake_up_common+0x31/0x90
      <4>RSP: 0018:ffff881068a83d50  EFLAGS: 00010086
      <4>RAX: ffffffffffffffe8 RBX: ffff88106bf42de0 RCX: 0000000000000000
      <4>RDX: 0000000000000000 RSI: 0000000000000003 RDI: ffff88106bf42de0
      <4>RBP: ffff881068a83d90 R08: 0000000000000000 R09: 00000000fffffffe
      <4>R10: 0000000000000000 R11: 000000000000000b R12: 0000000000000286
      <4>R13: ffff88106bf42de8 R14: 0000000000000000 R15: 0000000000000000
      <4>FS:  0000000000000000(0000) GS:ffff88089c460000(0000) knlGS:0000000000000000
      <4>CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
      <4>CR2: 0000000000000000 CR3: 0000000001a8d000 CR4: 00000000001407e0
      <4>DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      <4>DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      <4>Process qedf_11_ll2 (pid: 1485, threadinfo ffff881068a80000, task ffff881068a70040)
      <4>Stack:
      <4> ffff88106ef00090 0000000300000001 ffff881068a83d90 ffff88106bf42de0
      <4><d> 0000000000000286 ffff88106bf42dd8 ffff88106bf40a50 0000000000000002
      <4><d> ffff881068a83dc0 ffffffff810634c7 ffff881000000003 000000000000000b
      <4>Call Trace:
      <4> [<ffffffff810634c7>] complete+0x47/0x60
      <4> [<ffffffffa01d37e7>] qedf_fip_recv+0x1c7/0x450 [qedf]
      <4> [<ffffffffa01cb3cb>] qedf_ll2_recv_thread+0x33b/0x510 [qedf]
      <4> [<ffffffffa01cb090>] ? qedf_ll2_recv_thread+0x0/0x510 [qedf]
      <4> [<ffffffff810a662e>] kthread+0x9e/0xc0
      <4> [<ffffffff8100c28a>] child_rip+0xa/0x20
      <4> [<ffffffff810a6590>] ? kthread+0x0/0xc0
      <4> [<ffffffff8100c280>] ? child_rip+0x0/0x20
      <4>Code: 41 56 41 55 41 54 53 48 83 ec 18 0f 1f 44 00 00 89 75 cc 89 55 c8 4c 8d 6f 08 48 8b 57 08 41 89 cf 4d 89 c6 48 8d 42 e8 49 39 d5 <48> 8b 58 18 74 3f 48 83 eb 18 eb 0a 0f 1f 00 48 89 d8 48 8d 5a
      <1>RIP  [<ffffffff8105ed71>] __wake_up_common+0x31/0x90
      <4> RSP <ffff881068a83d50>
      <4>CR2: 0000000000000000
      Signed-off-by: NChad Dupuis <chad.dupuis@cavium.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      8eaf7dfc
  15. 07 3月, 2017 1 次提交
  16. 23 2月, 2017 1 次提交
新手
引导
客服 返回
顶部