21 Dec, 2011

14 commits

  • Fix some trivial typos.

    Signed-off-by: Shan Wei
    Signed-off-by: David S. Miller

    Shan Wei
     
  • If recovery is triggered in presence of pending asynchronous
    deliveries of storage blocks we do a forced cleanup after
    the corresponding tasklets are completely stopped and trigger
    appropriate notifications for the correspondingerror state.

    Signed-off-by: Einar Lueck
    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Einar Lueck
     
  • In case there are no system resources to run a recovery we have to clear
    recovery bitmasks so a further automatic or manual driven recovery can
    fix up the device.

    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Frank Blaschka
     
  • The NETIUCV device driver allows to connect a Linux guest on z/VM to
    another z/VM guest based on the z/VM communication facility IUCV.
    Multiple output paths to different guests are possible, as well as
    multiple input paths from different guests.
    With this feature, you can configure multiple point-to-point NETIUCV
    interfaces between your Linux on System z instance and another z/VM
    guest.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • A recovery does not make sense during shutdown and may even cause an
    error like this:

    qeth 0.0.f503: A recovery process has been started for the device
    Badness at drivers/s390/cio/qdio_main.c:1156
    Modules linked in: autofs4 sunrpc dm_multipath scsi_dh scsi_mod qeth_l3 ipv6 vmu
    r qeth qdio ccwgroup ext3 jbd mbcache dasd_eckd_mod dasd_mod dm_mirror dm_region
    _hash dm_log dm_mod [last unloaded: scsi_wait_scan]
    CPU: 3 Not tainted 2.6.32-202.el6.s390x #1
    Process qeth_recover (pid: 1498, task: 000000003efe2040, ksp: 000000003d5e3b80)
    Krnl PSW : 0404200180000000 000003c000be6da8 (qdio_int_handler+0x88/0x43c [qdio]
    )
    R:0 T:1 IO:0 EX:0 Key:0 M:1 W:0 P:0 AS:0 CC:2 PM:0 EA:3
    Krnl GPRS: ffffffffffff3bac 0000000000000005 0000000000000000 fffffffffffffff4
    0000000000000000 000000000000000c 0000000000000000 000000003ca97000
    0000000000000380 fffffffffffffff4 000000003f22d800 000000003f22c478
    000003c000bdf000 000003c000bea270 000000003f447e10 000000003f447db0
    Krnl Code: 000003c000be6d9a: c21f00000004 clfi %r1,4
    000003c000be6da0: a7c40021 brc 12,3c000be6de2
    000003c000be6da4: a7f40001 brc 15,3c000be6da6
    >000003c000be6da8: e320a0080004 lg %r2,8(%r10)
    000003c000be6dae: a7390003 lghi %r3,3
    000003c000be6db2: a72b0178 aghi %r2,376
    000003c000be6db6: a7490001 lghi %r4,1
    000003c000be6dba: a7590000 lghi %r5,0
    Call Trace:
    ([] __per_cpu_offset+0x0/0x200)
    [] ccw_device_call_handler+0x70/0xcc
    [] ccw_device_irq+0x82/0x180
    [] do_IRQ+0x16c/0x1ec
    [] io_return+0x0/0x8
    [] qeth_determine_capabilities+0x208/0x5cc [qeth]
    ([] qeth_determine_capabilities+0x1de/0x5cc [qeth])
    [] qeth_core_hardsetup_card+0x160/0x1258 [qeth]
    [] __qeth_l3_set_online+0x132/0xb14 [qeth_l3]
    [] qeth_l3_recover+0x168/0x224 [qeth_l3]
    [] kthread+0xa4/0xac
    [] kernel_thread_starter+0x6/0xc
    [] kernel_thread_starter+0x0/0xc

    The patch forbids start of a recovery once qeth shutdown is running.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • qeth layer3 recovery invokes its set_multicast_list function, which
    invokes function __vlan_find_dev_deep requiring rcu_read_lock or
    rtnl lock. This causes kernel messages:

    kernel: [ INFO: suspicious rcu_dereference_check() usage. ]
    kernel: ---------------------------------------------------
    kernel: net/8021q/vlan_core.c:70 invoked rcu_dereference_check() without protection!

    kernel: stack backtrace:
    kernel: CPU: 0 Not tainted 3.1.0 #9
    kernel: Process qeth_recover (pid: 2078, task: 000000007e584680, ksp: 000000007e3e3930)
    kernel: 000000007e3e3d08 000000007e3e3c88 0000000000000002 0000000000000000
    kernel: 000000007e3e3d28 000000007e3e3ca0 000000007e3e3ca0 00000000005e77ce
    kernel: 0000000000000000 0000000000000001 ffffffffffffffff 0000000000000001
    kernel: 000000000000000d 000000000000000c 000000007e3e3cf0 0000000000000000
    kernel: 0000000000000000 0000000000100a18 000000007e3e3c88 000000007e3e3cc8
    kernel: Call Trace:
    kernel: ([] show_trace+0xee/0x144)
    kernel: [] __vlan_find_dev_deep+0xb0/0x108
    kernel: [] qeth_l3_set_multicast_list+0x976/0xe38
    kernel: [] __qeth_l3_set_online+0x75c/0x1498
    kernel: [] qeth_l3_recover+0xc4/0x1d0
    kernel: [] kthread+0xa6/0xb0
    kernel: [] kernel_thread_starter+0x6/0xc
    kernel: [] kernel_thread_starter+0x0/0xc

    The patch makes sure the rtnl lock is held once qeth recovery invokes
    its set_multicast_list function.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • af_iucv differs unnecessarily between state IUCV_SEVERED and
    IUCV_DISCONN. This patch removes state IUCV_SEVERED.
    While simplifying af_iucv, this patch removes the 2nd invocation of
    cpcmd as well.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • af_iucv contains timer infrastructure which is not exploited.
    This patch removes the timer related code parts.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • For HiperSockets transport skbs sent are bound to one of the
    available HiperSockets devices. Add missing release of reference to
    a HiperSockets device before freeing an skb.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • Closing an af_iucv socket may wait for confirmation of outstanding
    send requests. This patch adds confirmation code for the new
    HiperSockets transport.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • The AF_IUCV address family offers support for ancillary data.
    This patch enables usage of ancillary data with the new
    HiperSockets transport.

    Signed-off-by: Ursula Braun
    Signed-off-by: Frank Blaschka
    Signed-off-by: David S. Miller

    Ursula Braun
     
  • It was reported that the macvtap device selects a
    Acked-by: Michael S. Tsirkin

    Signed-off-by: David S. Miller

    Krishna Kumar
     
  • When UDP RSS is enabled, we use same QPN for TCP and UDP ranges
    The bug is that the default_qpn was used base UDP qpn before it
    was set.
    Fixes bug introduced in commit: 1202d460b1df3a77fda66f4ba5f90ae3527dd42f

    Signed-off-by: Yevgeny Petrilin
    Signed-off-by: David S. Miller

    Yevgeny Petrilin
     
  • Otherwise getting

    | net/unix/diag.c:312:16: error: expected declaration specifiers or ‘...’ before string constant
    | net/unix/diag.c:313:1: error: expected declaration specifiers or ‘...’ before string constant

    Signed-off-by: Cyrill Gorcunov
    Signed-off-by: David S. Miller

    Cyrill Gorcunov
     

20 Dec, 2011

18 commits


17 Dec, 2011

8 commits