1. 23 Aug, 2009 1 commit
  2. 21 Aug, 2009 2 commits
  3. 20 Aug, 2009 1 commit
    • Petri Gynther's avatar
      ibm_newemac: emac_close() needs to call netif_carrier_off() · d3b325f9
      Petri Gynther authored
      When ibm_newemac netdev instance is shutdown with "ifconfig down",
      the netdev interface does not go properly down. netif_carrier_ok()
      keeps returning TRUE even after "ifconfig down".
      
      The problem can be seen when ibm_newemac instances are slaves of
      a bonding interface. The bonding interface code uses netif_carrier_ok()
      to determine the link status of its slaves. When ibm_newemac slave is
      shutdown with "ifconfig down", the bonding interface won't detect any
      link status change because netif_carrier_ok() keeps returning TRUE.
      Signed-off-by: default avatarPetri Gynther <pgynther@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d3b325f9
  4. 19 Aug, 2009 3 commits
  5. 18 Aug, 2009 3 commits
  6. 17 Aug, 2009 2 commits
  7. 16 Aug, 2009 7 commits
  8. 14 Aug, 2009 8 commits
  9. 13 Aug, 2009 7 commits
    • Dhananjay Phadke's avatar
      netxen: free napi resources during detach · 232e7d68
      Dhananjay Phadke authored
      o Defer napi resouce allocation to device attach.
      
      o Free napi resources and delete napi during detach.
      
      This ensures right behavior across firmware reset.
      Signed-off-by: default avatarDhananjay Phadke <dhananjay@netxen.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      232e7d68
    • Amit Kumar Salecha's avatar
      netxen: remove netxen workqueue · e424fa9d
      Amit Kumar Salecha authored
      o Remove private workqueue in the driver, move all
        scheduled tasks to keventd workqueues. This makes
        ports (interfaces) of same / different NIC boards
        independent, in terms of their link watchdog and
        reset tasks.
      
      o Move quick checks for link status and temperature
        in timer callback, schedule watchdog task only if
        link status changed or temperature reached critical
        threshold.
      
      This also fixes deadlock when thermal panic occurs,
      watchdog work was flushing workqueue that it was
      sitting on.
      Signed-off-by: default avatarAmit Kumar Salecha <amit@qlogic.com>
      Signed-off-by: default avatarDhananjay Phadke <dhananjay@netxen.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e424fa9d
    • Don Skidmore's avatar
      ixgbe: fix issues setting rx-usecs with legacy interrupts · 237057ad
      Don Skidmore authored
      Currently setting rx-usecs when the interface is in legacy interrupt
      mode it is not immediate.  We were only setting EITR for each MSIx
      vector and since this count would be zero for legacy mode it wasn't
      set until after a reset.  This patch corrects that by checking what
      mode we are in and then setting EITR accordingly.
      Signed-off-by: default avatarDon Skidmore <donald.skidmore@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      237057ad
    • Oliver Hartkopp's avatar
      can: fix oops caused by wrong rtnl newlink usage · 993e6f2f
      Oliver Hartkopp authored
      For 'real' hardware CAN devices the netlink interface is used to set CAN
      specific communication parameters. Real CAN hardware can not be created with
      the ip tool ...
      
      The invocation of 'ip link add type can' lead to an oops as the standard rtnl
      newlink function was called:
      
      http://bugzilla.kernel.org/show_bug.cgi?id=13954
      
      This patch adds a private newlink function for the CAN device driver interface
      that unconditionally returns -EOPNOTSUPP.
      Signed-off-by: default avatarOliver Hartkopp <oliver@hartkopp.net>
      Reported-by: default avatarDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
      CC: Patrick McHardy <kaber@trash.net>
      CC: Wolfgang Grandegger <wg@grandegger.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      993e6f2f
    • Luis R. Rodriguez's avatar
      mac80211: fix panic when splicing unprepared TIDs · 416fbdff
      Luis R. Rodriguez authored
      We splice skbs from the pending queue for a TID
      onto the local pending queue when tearing down a
      block ack request. This is not necessary unless we
      actually have received a request to start a block ack
      request (rate control, for example). If we never received
      that request we should not be splicing the tid pending
      queue as it would be null, causing a panic.
      
      Not sure yet how exactly we allowed through a call when the
      tid state does not have at least HT_ADDBA_REQUESTED_MSK set,
      that will require some further review as it is not quite
      obvious.
      
      For more information see the bug report:
      
      http://bugzilla.kernel.org/show_bug.cgi?id=13922
      
      This fixes this oops:
      
      BUG: unable to handle kernel NULL pointer dereference at 00000030
      IP: [<f8806c70>] ieee80211_agg_splice_packets+0x40/0xc0 [mac80211]
      *pdpt = 0000000002d1e001 *pde = 0000000000000000
      Thread overran stack, or stack corrupted
      Oops: 0000 [#1] SMP
      last sysfs file: /sys/module/aes_generic/initstate
      Modules linked in: <bleh>
      
      Pid: 0, comm: swapper Not tainted (2.6.31-rc5-wl #2) Dell DV051
      EIP: 0060:[<f8806c70>] EFLAGS: 00010292 CPU: 0
      EIP is at ieee80211_agg_splice_packets+0x40/0xc0 [mac80211]
      EAX: 00000030 EBX: 0000004c ECX: 00000003 EDX: 00000000
      ESI: c1c98000 EDI: f745a1c0 EBP: c076be58 ESP: c076be38
       DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
      Process swapper (pid: 0, ti=c076a000 task=c0709160 task.ti=c076a000)
      Stack: <bleh2>
      Call Trace:
       [<f8806edb>] ? ieee80211_stop_tx_ba_cb+0xab/0x150 [mac80211]
       [<f8802f1e>] ? ieee80211_tasklet_handler+0xce/0x110 [mac80211]
       [<c04862ff>] ? net_rx_action+0xef/0x1d0
       [<c0149378>] ? tasklet_action+0x58/0xc0
       [<c014a0f2>] ? __do_softirq+0xc2/0x190
       [<c018eb48>] ? handle_IRQ_event+0x58/0x140
       [<c01205fe>] ? ack_apic_level+0x7e/0x270
       [<c014a1fd>] ? do_softirq+0x3d/0x40
       [<c014a345>] ? irq_exit+0x65/0x90
       [<c010a6af>] ? do_IRQ+0x4f/0xc0
       [<c014a35d>] ? irq_exit+0x7d/0x90
       [<c011d547>] ? smp_apic_timer_interrupt+0x57/0x90
       [<c01094a9>] ? common_interrupt+0x29/0x30
       [<c010fd9e>] ? mwait_idle+0xbe/0x100
       [<c0107e42>] ? cpu_idle+0x52/0x90
       [<c054b1a5>] ? rest_init+0x55/0x60
       [<c077492d>] ? start_kernel+0x315/0x37d
       [<c07743ce>] ? unknown_bootoption+0x0/0x1f9
       [<c0774099>] ? i386_start_kernel+0x79/0x81
      Code: <bleh3>
      EIP: [<f8806c70>] ieee80211_agg_splice_packets+0x40/0xc0 [mac80211] SS:ESP 0068:c076be38
      CR2: 0000000000000030
      
      Cc: stable@kernel.org
      Testedy-by: default avatarJack Lau <jackelectronics@hotmail.com>
      Signed-off-by: default avatarLuis R. Rodriguez <lrodriguez@atheros.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      416fbdff
    • Francois Romieu's avatar
      8139cp: balance dma_map_single vs dma_unmap_single pair · 839d1624
      Francois Romieu authored
      The driver always:
      1. allocate cp->rx_buf_sz + NET_IP_ALIGN
      2. map cp->rx_buf_sz
      Signed-off-by: default avatarFrancois Romieu <romieu@fr.zoreil.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      839d1624
    • David S. Miller's avatar
      Revert "libertas: Read buffer overflow" · 9799218a
      David S. Miller authored
      This reverts commit 57921c31.
      
      On request from John Linville:
      
      	It has been shown to create a new problem.  There is work
      	towards a solution to that one, but it isn't a simple
      	clean-up.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9799218a
  10. 10 Aug, 2009 6 commits
    • Dan Carpenter's avatar
      ar9170: fix read & write outside array bounds · e9d126cd
      Dan Carpenter authored
      queue == __AR9170_NUM_TXQ would cause a bug on the next line.
      
      found by Smatch ( http://repo.or.cz/w/smatch.git ).
      
      Cc: stable@kernel.org
      Reported-by: default avatarDan Carpenter <error27@gmail.com>
      Signed-off-by: default avatarDan Carpenter <error27@gmail.com>
      Signed-off-by: default avatarChristian Lamparter <chunkeey@web.de>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      e9d126cd
    • Christian Lamparter's avatar
      ar9170usb: fix spurious firmware related message · 363ec561
      Christian Lamparter authored
      When ar9170-2.fw was missing, the driver erroneously complained
      about missing the initialization values file ar9170-1.fw...
      Signed-off-by: default avatarChristian Lamparter <chunkeey@web.de>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      363ec561
    • roel kluin's avatar
      mlx4_en: Fix read buffer overflow in mlx4_en_complete_rx_desc() · 973507cb
      roel kluin authored
      If the length is less or equal to frag_prefix_size in the first iteration
      we write skb_frags_rx[-1] and read from priv->frag_info[-1]
      Signed-off-by: default avatarRoel Kluin <roel.kluin@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      973507cb
    • roel kluin's avatar
      zorro8390: Fix read buffer overflow in zorro8390_init_one() · be12159b
      roel kluin authored
      Prevent read from cards[-1] when no card was found.
      Signed-off-by: default avatarRoel Kluin <roel.kluin@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      be12159b
    • roel kluin's avatar
      pcnet32: Read buffer overflow · 5e33b719
      roel kluin authored
      An `options[cards_found]' that equals `sizeof(options_mapping)' is already beyond
      the array.
      Signed-off-by: default avatarRoel Kluin <roel.kluin@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5e33b719
    • Rafael Laufer's avatar
      sctp: fix missing destroy of percpu counter variable in sctp_proc_exit() · 418372b0
      Rafael Laufer authored
      Commit 1748376b,
      	net: Use a percpu_counter for sockets_allocated
      
      added percpu_counter function calls to sctp_proc_init code path, but
      forgot to add them to sctp_proc_exit().  This resulted in a following
      Ooops when performing this test
      	# modprobe sctp
      	# rmmod -f sctp
      	# modprobe sctp
      
      [  573.862512] BUG: unable to handle kernel paging request at f8214a24
      [  573.862518] IP: [<c0308b8f>] __percpu_counter_init+0x3f/0x70
      [  573.862530] *pde = 37010067 *pte = 00000000
      [  573.862534] Oops: 0002 [#1] SMP
      [  573.862537] last sysfs file: /sys/module/libcrc32c/initstate
      [  573.862540] Modules linked in: sctp(+) crc32c libcrc32c binfmt_misc bridge
      stp bnep lp snd_hda_codec_analog snd_hda_intel snd_hda_codec snd_hwdep
      snd_pcm_oss snd_mixer_oss arc4 joydev snd_pcm ecb pcmcia snd_seq_dummy
      snd_seq_oss iwlagn iwlcore snd_seq_midi snd_rawmidi snd_seq_midi_event
      yenta_socket rsrc_nonstatic thinkpad_acpi snd_seq snd_timer snd_seq_device
      mac80211 psmouse sdhci_pci sdhci nvidia(P) ppdev video snd soundcore serio_raw
      pcspkr iTCO_wdt iTCO_vendor_support led_class ricoh_mmc pcmcia_core intel_agp
      nvram agpgart usbhid parport_pc parport output snd_page_alloc cfg80211 btusb
      ohci1394 ieee1394 e1000e [last unloaded: sctp]
      [  573.862589]
      [  573.862593] Pid: 5373, comm: modprobe Tainted: P  R        (2.6.31-rc3 #6)
      7663B15
      [  573.862596] EIP: 0060:[<c0308b8f>] EFLAGS: 00010286 CPU: 1
      [  573.862599] EIP is at __percpu_counter_init+0x3f/0x70
      [  573.862602] EAX: f8214a20 EBX: f80faa14 ECX: c48c0000 EDX: f80faa20
      [  573.862604] ESI: f80a7000 EDI: 00000000 EBP: f69d5ef0 ESP: f69d5eec
      [  573.862606]  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
      [  573.862610] Process modprobe (pid: 5373, ti=f69d4000 task=c2130c70
      task.ti=f69d4000)
      [  573.862612] Stack:
      [  573.862613]  00000000 f69d5f18 f80a70a8 f80fa9fc 00000000 fffffffc f69d5f30
      c018e2d4
      [  573.862619] <0> 00000000 f80a7000 00000000 f69d5f88 c010112b 00000000
      c07029c0 fffffffb
      [  573.862626] <0> 00000000 f69d5f38 c018f83f f69d5f54 c0557cad f80fa860
      00000001 c07010c0
      [  573.862634] Call Trace:
      [  573.862644]  [<f80a70a8>] ? sctp_init+0xa8/0x7d4 [sctp]
      [  573.862650]  [<c018e2d4>] ? marker_update_probe_range+0x184/0x260
      [  573.862659]  [<f80a7000>] ? sctp_init+0x0/0x7d4 [sctp]
      [  573.862662]  [<c010112b>] ? do_one_initcall+0x2b/0x160
      [  573.862666]  [<c018f83f>] ? tracepoint_module_notify+0x2f/0x40
      [  573.862671]  [<c0557cad>] ? notifier_call_chain+0x2d/0x70
      [  573.862678]  [<c01588fd>] ? __blocking_notifier_call_chain+0x4d/0x60
      [  573.862682]  [<c016b2f1>] ? sys_init_module+0xb1/0x1f0
      [  573.862686]  [<c0102ffc>] ? sysenter_do_call+0x12/0x28
      [  573.862688] Code: 89 48 08 b8 04 00 00 00 e8 df aa ec ff ba f4 ff ff ff 85
      c0 89 43 14 74 31 b8 b0 18 71 c0 e8 19 b9 24 00 a1 c4 18 71 c0 8d 53 0c <89> 50
      04 89 43 0c b8 b0 18 71 c0 c7 43 10 c4 18 71 c0 89 15 c4
      [  573.862725] EIP: [<c0308b8f>] __percpu_counter_init+0x3f/0x70 SS:ESP
      0068:f69d5eec
      [  573.862730] CR2: 00000000f8214a24
      [  573.862734] ---[ end trace 39c4e0b55e7cf54d ]---
      Signed-off-by: default avatarRafael Laufer <rlaufer@cisco.com>
      Signed-off-by: default avatarVlad Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      418372b0