1. 17 9月, 2006 8 次提交
    • F
      [PATCH] s390: qeth driver fixes [5/6] · f956b690
      Frank Pavlic 提交于
      [PATCH 8/9] s390: qeth driver fixes [5/6]
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
      	fix kernel panic in qdio queue handling.
      	qeth_qdio_clear_card() could be invoked by 2 CPUs
      	simultaneously (for example reboot event and recovery).
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      f956b690
    • F
      [PATCH] s390: qeth driver fixes [4/6] · 09d2d38a
      Frank Pavlic 提交于
      [PATCH 7/9] s390: qeth driver fixes [4/6]
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
      	- fix kernel crash due to race,
      	  set card->state to SOFTSETUP after
      	  card and card->dev are initialized properly.
      	- remove CONFIG_QETH_PERF_STATS, use sysfs attribute instead,
      	  as we want to have the ability to turn on/off the
      	  statistics at runtime.
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      09d2d38a
    • F
      [PATCH] s390: qeth driver fixes [3/6] · f7b65d70
      Frank Pavlic 提交于
      [PATCH 6/9] s390: qeth driver fixes [3/6]
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
             	fixed kernel panic caused by qeth driver:
              Using a bonding device qeth driver will realloc
              headroom for every skb coming from the bond device.
              Once this happens qeth frees the original skb and
              set the skb pointer to the new realloced skb.
              Under heavy transmit workload (e.g.UDP streams) through bond
              network device the qdio output queue might get full.
              In this case we return with EBUSY from qeth_send_packet.
              Returning to qeth_hard_start_xmit routine
              the skb address on the stack still points to the old address,
              which has been freed before.
              Returning from qeth_hard_start_xmit with EBUSY results in
              requeuing the skb. In this case it corrupts the qdisc queue
              and results in kernel panic.
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      f7b65d70
    • F
      [PATCH] s390: qeth driver fixes [2/6] · 1fda1a12
      Frank Pavlic 提交于
      [PATCH 5/9] s390: qeth driver fixes [2/6]
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
      	- fixed error handling in create_device_attributes
      	- fixed some minor bugs in IPv4
      	  and IPv6 address checking
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      1fda1a12
    • F
      [PATCH] s390: qeth driver fixes [1/6] · 330b6369
      Frank Pavlic 提交于
      [PATCH 4/9] s390: qeth driver fixes [1/6]
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
      	- Drop incoming packets with vlan_tag set
                if card->vlangrp is not set.
              - use always vlan_hwaccel_rx to pass
      	  vlan frames to the stack.
              - fix recovery problem. Device was recovered
      	  properly but still not working.
      	  netif_carrier_on call right before
                recovery start fixes it.
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      330b6369
    • F
      [PATCH] s390: Makefile cleanup · f449c565
      Frank Pavlic 提交于
      [PATCH 3/9] s390: Makefile cleanup
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
       	remove CONFIG_MPC from Makefile which was
      	introduced accidently in the past.
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      f449c565
    • F
      [PATCH] s390: netiucv driver fixes · 16a83b30
      Frank Pavlic 提交于
      [PATCH 2/9] s390: netiucv driver fixes
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
      	- missing lock initialization added
              - avoid duplicate iucv-interfaces to the same peer
             	- rw-lock added for manipulating the list of
                defined iucv connections
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      16a83b30
    • F
      [PATCH] s390: minor s390 network driver fixes · 4c7ae6ea
      Frank Pavlic 提交于
      Hi Jeff,
      this is a RESEND of the nine s390 network driver patches.
      I finally found  that my kmail corrupted almost every patch
      I sent the last time. Please apply these 9 patches and forget
      about my first attempt! Sorry for the delay, I had some fights
      with sendmail, IMAP and mutt configuration.
      
      Frank
      
      [RESEND PATCH 1/9] s390: minor s390 network driver fixes
      
      From: Frank Pavlic <fpavlic@de.ibm.com>
      	- iucv driver:
                use do { } while (0) constructs
      	  instead of empty defines to avoid compile bugs.
              - ctc driver:
                missing lock initialization added
              - lcs driver:
                BUG_ON usage was removed accidently
      	  with the last lcs patch.
                Put them back in place.
      Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      4c7ae6ea
  2. 30 8月, 2006 4 次提交
  3. 24 8月, 2006 1 次提交
  4. 20 8月, 2006 1 次提交
  5. 16 8月, 2006 2 次提交
  6. 10 8月, 2006 1 次提交
  7. 09 8月, 2006 1 次提交
  8. 08 8月, 2006 1 次提交
    • M
      [S390] xpram system device class. · 37ab46a3
      Martin Schwidefsky 提交于
      Remove system device class for xpram. It creates the directory hierarchy
      under /sys/devices/system/xpram/xpram0. The xpram0 directory is empty and
      it is always created while xpram1 and following devices are always missing,
      independent if the devices exist or not. Since the xpram devices are
      listed in /proc/partitions and /sys/block/ as slram<x> the system device
      class for xpram is meaningless.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      37ab46a3
  9. 07 8月, 2006 6 次提交
  10. 27 7月, 2006 2 次提交
  11. 18 7月, 2006 1 次提交
  12. 17 7月, 2006 2 次提交
  13. 12 7月, 2006 4 次提交
  14. 11 7月, 2006 3 次提交
  15. 09 7月, 2006 1 次提交
  16. 04 7月, 2006 2 次提交
    • H
      [PATCH] zfcp: fix incorrect usage of fsf_req_list_lock · 38c54ee8
      Heiko Carstens 提交于
        =================================
        [ INFO: inconsistent lock state ]
        ---------------------------------
        inconsistent {in-hardirq-W} -> {hardirq-on-W} usage.
        swapper/0 [HC0[0]:SC1[1]:HE1:SE0] takes:
         (&adapter->fsf_req_list_lock){++..}, at: [<0000000000274486>] zfcp_qdio_reqid_check+0x46/0x178
        {in-hardirq-W} state was registered at:
          [<000000000005fb0c>] __lock_acquire+0xad8/0xed0
          [<00000000000604ae>] lock_acquire+0x9a/0xc8
          [<000000000035a326>] _spin_lock+0x4e/0x68
          [<0000000000274486>] zfcp_qdio_reqid_check+0x46/0x178
          [<000000000027469e>] zfcp_qdio_response_handler+0xe6/0x430
          [<0000000000219dd4>] tiqdio_thinint_handler+0xd20/0x213c
          [<000000000020229a>] do_adapter_IO+0xb2/0xc0
          [<0000000000206f32>] do_IRQ+0x136/0x16c
          [<0000000000020462>] io_no_vtime+0x16/0x1c
          [<0000000000019432>] cpu_idle+0x222/0x250
        irq event stamp: 129220
        hardirqs last  enabled at (129220): [<00000000000411e6>] tasklet_hi_action+0x5a/0x19c
        hardirqs last disabled at (129219): [<00000000000411c0>] tasklet_hi_action+0x34/0x19c
        softirqs last  enabled at (129212): [<0000000000040b62>] __do_softirq+0x13a/0x180
        softirqs last disabled at (129217): [<000000000001fd58>] do_softirq+0xec/0xf0
      
        other info that might help us debug this:
        no locks held by swapper/0.
      
        stack backtrace:
        00000000012bb670 0000000000000002 0000000000000000 00000000012bb780
               00000000012bb6e8 0000000000399122 0000000000399122 0000000000016b0a
               0000000000000000 0000000000000000 0000000000000000 00000000004660e8
               0000000000000000 000000000000000d 00000000012bb6e0 00000000012bb758
               0000000000368b90 0000000000016b0a 00000000012bb6e0 00000000012bb730
        Call Trace:
        ([<0000000000016a26>] show_trace+0x76/0xdc)
         [<0000000000016b2c>] show_stack+0xa0/0xd0
         [<0000000000016b8a>] dump_stack+0x2e/0x3c
         [<000000000005e3da>] print_usage_bug+0x27e/0x290
         [<000000000005ea9c>] mark_lock+0x6b0/0x6c0
         [<000000000005f33e>] __lock_acquire+0x30a/0xed0
         [<00000000000604ae>] lock_acquire+0x9a/0xc8
         [<000000000035a326>] _spin_lock+0x4e/0x68
         [<0000000000274486>] zfcp_qdio_reqid_check+0x46/0x178
         [<000000000027469e>] zfcp_qdio_response_handler+0xe6/0x430
         [<0000000000217bd2>] tiqdio_tl+0xd02/0x2120
         [<000000000004123a>] tasklet_hi_action+0xae/0x19c
         [<0000000000040ae4>] __do_softirq+0xbc/0x180
         [<000000000001fd58>] do_softirq+0xec/0xf0
         [<0000000000040c38>] irq_exit+0x90/0xa8
         [<0000000000206f40>] do_IRQ+0x144/0x16c
         [<0000000000020462>] io_no_vtime+0x16/0x1c
         [<0000000000019432>] cpu_idle+0x222/0x250
        ([<0000000000019416>] cpu_idle+0x206/0x250)
         [<000000000001405a>] rest_init+0x5a/0x68
         [<0000000000536998>] start_kernel+0x39c/0x3dc
         [<0000000000013046>] _stext+0x46/0x1000
      
      Fix incorrect usage of fsf_req_list_lock. It's used in tasklet context
      (irqs on) as well as in irq context. Therefore use the spin_lock_irqsave
      variant to avoid deadlocks.
      Acked-by: NAndreas Herrmann <aherrman@de.ibm.com>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      38c54ee8
    • H
      [PATCH] zfcp: fix incorrect usage of erp_lock · 9f09c548
      Heiko Carstens 提交于
        =================================
        [ INFO: inconsistent lock state ]
        ---------------------------------
        inconsistent {hardirq-on-W} -> {in-hardirq-W} usage.
        swapper/0 [HC1[1]:SC0[0]:HE0:SE1] takes:
         (&adapter->erp_lock){+-..}, at: [<000000000026c7f8>] zfcp_erp_async_handler+0x3c/0x70
        {hardirq-on-W} state was registered at:
          [<000000000005f33e>] __lock_acquire+0x30a/0xed0
          [<00000000000604ae>] lock_acquire+0x9a/0xc8
          [<000000000035a7ae>] _write_lock+0x4e/0x68
          [<000000000026d822>] zfcp_erp_adapter_strategy_generic+0x286/0xd94
          [<000000000026fd72>] zfcp_erp_strategy_do_action+0x91e/0x1a94
          [<0000000000271a3a>] zfcp_erp_thread+0x21a/0x1568
          [<0000000000019096>] kernel_thread_starter+0x6/0xc
          [<0000000000019090>] kernel_thread_starter+0x0/0xc
        irq event stamp: 12078
        hardirqs last  enabled at (12077): [<0000000000019416>] cpu_idle+0x206/0x250
        hardirqs last disabled at (12078): [<0000000000020458>] io_no_vtime+0xc/0x1c
        softirqs last  enabled at (12072): [<0000000000040b62>] __do_softirq+0x13a/0x180
        softirqs last disabled at (12059): [<000000000001fd58>] do_softirq+0xec/0xf0
      
        other info that might help us debug this:
        no locks held by swapper/0.
      
        stack backtrace:
        00000000012bb648 0000000000000002 0000000000000000 00000000012bb758
               00000000012bb6c0 0000000000399122 0000000000399122 0000000000016b0a
               0000000000000000 0000000000000001 0000000000000000 00000000004660e8
               0000000000000000 000000000000000d 00000000012bb6b8 00000000012bb730
               0000000000368b90 0000000000016b0a 00000000012bb6b8 00000000012bb708
        Call Trace:
        ([<0000000000016a26>] show_trace+0x76/0xdc)
         [<0000000000016b2c>] show_stack+0xa0/0xd0
         [<0000000000016b8a>] dump_stack+0x2e/0x3c
         [<000000000005e3da>] print_usage_bug+0x27e/0x290
         [<000000000005e934>] mark_lock+0x548/0x6c0
         [<000000000005fb0c>] __lock_acquire+0xad8/0xed0
         [<00000000000604ae>] lock_acquire+0x9a/0xc8
         [<000000000035a662>] _write_lock_irqsave+0x62/0x80
         [<000000000026c7f8>] zfcp_erp_async_handler+0x3c/0x70
         [<0000000000279178>] zfcp_fsf_req_dispatch+0xd8/0x1fa8
         [<000000000027e538>] zfcp_fsf_req_complete+0x104/0xe4c
         [<0000000000274534>] zfcp_qdio_reqid_check+0xf4/0x178
         [<000000000027469e>] zfcp_qdio_response_handler+0xe6/0x430
         [<0000000000219dd4>] tiqdio_thinint_handler+0xd20/0x213c
         [<000000000020229a>] do_adapter_IO+0xb2/0xc0
         [<0000000000206f32>] do_IRQ+0x136/0x16c
         [<0000000000020462>] io_no_vtime+0x16/0x1c
         [<0000000000019432>] cpu_idle+0x222/0x250
        ([<0000000000019416>] cpu_idle+0x206/0x250)
         [<000000000001405a>] rest_init+0x5a/0x68
         [<0000000000536998>] start_kernel+0x39c/0x3dc
         [<0000000000013046>] _stext+0x46/0x1000
      
      Fix incorrect usage of erp_lock. Using the write_lock() variant is wrong,
      since this might lead to deadlocks.
      Acked-by: NAndreas Herrmann <aherrman@de.ibm.com>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9f09c548