1. 20 Jul, 2012 3 commits
    • Boaz Harrosh's avatar
      ore: Unlock r4w pages in exact reverse order of locking · 537632e0
      Boaz Harrosh authored
      The read-4-write pages are locked in address ascending order.
      But where unlocked in a way easiest for coding. Fix that,
      locks should be released in opposite order of locking, .i.e
      descending address order.
      
      I have not hit this dead-lock. It was found by inspecting the
      dbug print-outs. I suspect there is an higher lock at caller that
      protects us, but fix it regardless.
      Signed-off-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
      537632e0
    • Boaz Harrosh's avatar
      ore: Remove support of partial IO request (NFS crash) · 62b62ad8
      Boaz Harrosh authored
      Do to OOM situations the ore might fail to allocate all resources
      needed for IO of the full request. If some progress was possible
      it would proceed with a partial/short request, for the sake of
      forward progress.
      
      Since this crashes NFS-core and exofs is just fine without it just
      remove this contraption, and fail.
      
      TODO:
      	Support real forward progress with some reserved allocations
      	of resources, such as mem pools and/or bio_sets
      
      [Bug since 3.2 Kernel]
      CC: Stable Tree <stable@kernel.org>
      CC: Benny Halevy <bhalevy@tonian.com>
      Signed-off-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
      62b62ad8
    • Boaz Harrosh's avatar
      ore: Fix NFS crash by supporting any unaligned RAID IO · 9ff19309
      Boaz Harrosh authored
      In RAID_5/6 We used to not permit an IO that it's end
      byte is not stripe_size aligned and spans more than one stripe.
      .i.e the caller must check if after submission the actual
      transferred bytes is shorter, and would need to resubmit
      a new IO with the remainder.
      
      Exofs supports this, and NFS was supposed to support this
      as well with it's short write mechanism. But late testing has
      exposed a CRASH when this is used with none-RPC layout-drivers.
      
      The change at NFS is deep and risky, in it's place the fix
      at ORE to lift the limitation is actually clean and simple.
      So here it is below.
      
      The principal here is that in the case of unaligned IO on
      both ends, beginning and end, we will send two read requests
      one like old code, before the calculation of the first stripe,
      and also a new site, before the calculation of the last stripe.
      If any "boundary" is aligned or the complete IO is within a single
      stripe. we do a single read like before.
      
      The code is clean and simple by splitting the old _read_4_write
      into 3 even parts:
      1._read_4_write_first_stripe
      2. _read_4_write_last_stripe
      3. _read_4_write_execute
      
      And calling 1+3 at the same place as before. 2+3 before last
      stripe, and in the case of all in a single stripe then 1+2+3
      is preformed additively.
      
      Why did I not think of it before. Well I had a strike of
      genius because I have stared at this code for 2 years, and did
      not find this simple solution, til today. Not that I did not try.
      
      This solution is much better for NFS than the previous supposedly
      solution because the short write was dealt  with out-of-band after
      IO_done, which would cause for a seeky IO pattern where as in here
      we execute in order. At both solutions we do 2 separate reads, only
      here we do it within a single IO request. (And actually combine two
      writes into a single submission)
      
      NFS/exofs code need not change since the ORE API communicates the new
      shorter length on return, what will happen is that this case would not
      occur anymore.
      
      hurray!!
      
      [Stable this is an NFS bug since 3.2 Kernel should apply cleanly]
      CC: Stable Tree <stable@kernel.org>
      Signed-off-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
      9ff19309
  2. 30 Jun, 2012 13 commits
  3. 29 Jun, 2012 13 commits
  4. 28 Jun, 2012 11 commits
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 9acc7bde
      Linus Torvalds authored
      Pull hwmon changes from Guenter Roeck:
       "Just e-mail address updates"
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: Update my e-mail address
        hwmon: (applesmc) correct email address for Jesper Juhl
      9acc7bde
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · ccce27c0
      Linus Torvalds authored
      Pull watchdog fixes from Wim Van Sebroeck:
       "This fixes:
         - the WDIOC_GETSTATUS return value
         - the unregister of all NMI events on exit
         - the loading of the iTCO_wdt driver after the conversion to the
           lpc_ich mfd model."
      
      * git://www.linux-watchdog.org/linux-watchdog:
        watchdog: core: fix WDIOC_GETSTATUS return value
        watchdog: hpwdt: Unregister NMI events on exit.
        watchdog: iTCO_wdt: add platform driver module alias
      ccce27c0
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 221d3ebf
      Linus Torvalds authored
      Pull UDF fixes from Jan Kara:
       "Make UDF more robust in presence of corrupted filesystem"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        udf: Fortify loading of sparing table
        udf: Avoid run away loop when partition table length is corrupted
        udf: Use 'ret' instead of abusing 'i' in udf_load_logicalvol()
      221d3ebf
    • Linus Torvalds's avatar
      Merge tag 'upstream-3.5-rc5' of git://git.infradead.org/linux-ubifs · 9a7c6b73
      Linus Torvalds authored
      Pull ubi/ubifs fixes from Artem Bityutskiy:
       "Fix the debugfs regression - we never enable it because incorrect
        'IS_ENABLED()' macro usage: should be 'IS_ENABLED(CONFIG_DEBUG_FS)',
        but we had 'IS_ENABLED(DEBUG_FS)'.  Also fix incorrect assertion."
      
      * tag 'upstream-3.5-rc5' of git://git.infradead.org/linux-ubifs:
        UBI: correct usage of IS_ENABLED()
        UBIFS: correct usage of IS_ENABLED()
        UBIFS: fix assertion
      9a7c6b73
    • Wim Van Sebroeck's avatar
      watchdog: core: fix WDIOC_GETSTATUS return value · 8b9468d4
      Wim Van Sebroeck authored
      In commit 7a879824 we added
      a wrapper for the WDIOC_GETSTATUS ioctl call. The code results
      however in a different behaviour: it returns an error if the
      driver doesn't support the status operation. This is not
      according to the API that says that when we don't support
      the status operation, that we just should return a 0 value.
      Only when the device isn't there anymore, we should return an
      error.
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      8b9468d4
    • Mingarelli, Thomas's avatar
      watchdog: hpwdt: Unregister NMI events on exit. · a089361c
      Mingarelli, Thomas authored
      This patch is to unregister for NMI events upon exit. Also we are now
      making the default setting for allow_kdump enabled.
      Signed-off-by: default avatarThomas Mingarelli <thomas.mingarelli@hp.com>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      a089361c
    • Jan Beulich's avatar
      watchdog: iTCO_wdt: add platform driver module alias · e5de32e3
      Jan Beulich authored
      The recent conversion of iTCO_wdt resulted in the driver no longer
      getting loaded automatically, since it no longer has a
      MODULE_DEVICE_TABLE() included. As the lpc_ich driver now creates a
      platform device, auto-loading can easily be done by having a respective
      module alias in place.
      Signed-off-by: default avatarJan Beulich <jbeulich@suse.com>
      Cc: Aaron Sierra <asierra@xes-inc.com>
      Acked-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      e5de32e3
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 4a9c4697
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Nearly all intel, one missing license header in nouveau, nothing
        majorly earth shattering."
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        Revert "drm/i915: allow PCH PWM override on IVB"
        drm/nouveau: add license header to prime.
        drm/i915: Fix eDP blank screen after S3 resume on HP desktops
        drm/i915: rip out the PM_IIR WARN
      4a9c4697
    • Linus Torvalds's avatar
      Merge tag 'sh-for-linus' of git://github.com/pmundt/linux-sh · ef726227
      Linus Torvalds authored
      Pull SuperH fixes from Paul Mundt.
      
      * tag 'sh-for-linus' of git://github.com/pmundt/linux-sh:
        sh: Convert sh_clk_mstp32_register to sh_clk_mstp_register
        sh: kfr2r09: fix compile breakage
      ef726227
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · f3747e2f
      Linus Torvalds authored
      Pull networking update from David Miller:
      
       1) Pairing and deadlock fixes in bluetooth from Johan Hedberg.
      
       2) Add device IDs for AR3011 and AR3012 bluetooth chips.  From
          Giancarlo Formicuccia and Marek Vasut.
      
       3) Fix wireless regulatory deadlock, from Eliad Peller.
      
       4) Fix full TX ring panic in bnx2x driver, from Eric Dumazet.
      
       5) Revert the two commits that added skb_orphan_try(), it causes
          erratic bonding behavior with UDP clients and the gains it used to
          give are mostly no longer happening due to how BQL works.  From Eric
          Dumazet.
      
       6) It took two tries, but Thomas Graf fixed a problem wherein we
          registered ipv6 routing procfs files before their backend data were
          initialized properly.
      
       7) Fix max GSO size setting in be2net, from Sarveshwar Bandi.
      
       8) PHY device id mask is wrong for KSZ9021 and KS8001 chips, fix from
          Jason Wang.
      
       9) Fix use of stale SKB data pointer after skb_linearize() call in
          batman-adv, from Antonio Quartulli.
      
      10) Fix memory leak in IXGBE due to missing __GFP_COMP, from Alexander
          Duyck.
      
      11) Fix probing of Gobi devices in qmi_wwan usbnet driver, from Bjørn
          Mork.
      
      12) Fix suspend/resume and open failure handling in usbnet from Ming
          Lei.
      
      13) Attempt to fix device r8169 hangs for certain chips, from Francois
          Romieu.
      
      14) Fix advancement of RX dirty pointer in some situations in sh_eth
          driver, from Yoshihiro Shimoda.
      
      15) Attempt to fix restart of IPV6 routing table dumps when there is an
          intervening table update.  From Eric Dumazet.
      
      16) Respect security_inet_conn_request() return value in ipv6 TCP.  From
          Neal Cardwell.
      
      17) Add another iPAD device ID to ipheth driver, from Davide Gerhard.
      
      18) Fix access to freed SKB in l2tp_eth_dev_xmit(), and fix l2tp lockdep
          splats, from Eric Dumazet.
      
      19) Make sure all bridge devices, regardless of whether they were
          created via netlink or ioctls, have their rtnetlink ops hooked up.
          From Thomas Graf and Stephen Hemminger.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (81 commits)
        9p: fix min_t() casting in p9pdu_vwritef()
        can: flexcan: use be32_to_cpup to handle the value of dt entry
        xen/netfront: teardown the device before unregistering it.
        bridge: Assign rtnl_link_ops to bridge devices created via ioctl (v2)
        vhost: use USER_DS in vhost_worker thread
        ixgbe: Do not pad FCoE frames as this can cause issues with FCoE DDP
        net: l2tp_eth: use LLTX to avoid LOCKDEP splats
        mac802154: add missed braces
        net: l2tp_eth: fix l2tp_eth_dev_xmit race
        net/mlx4_en: Release QP range in free_resources
        net/mlx4: Use single completion vector after NOP failure
        net/mlx4_en: Set correct port parameters during device initialization
        ipheth: add support for iPad
        caif-hsi: Add missing return in error path
        caif-hsi: Bugfix - Piggyback'ed embedded CAIF frame lost
        caif: Clear shutdown mask to zero at reconnect.
        tcp: heed result of security_inet_conn_request() in tcp_v6_conn_request()
        ipv6: fib: fix fib dump restart
        batman-adv: fix race condition in TT full-table replacement
        batman-adv: only drop packets of known wifi clients
        ...
      f3747e2f
    • Jan Kara's avatar
      udf: Fortify loading of sparing table · 1df2ae31
      Jan Kara authored
      Add sanity checks when loading sparing table from disk to avoid accessing
      unallocated memory or writing to it.
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      1df2ae31