1. 17 5月, 2013 9 次提交
  2. 16 5月, 2013 24 次提交
    • L
      Merge branch 'queue' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 5c64e3a4
      Linus Torvalds 提交于
      Pull target fixes from Nicholas Bellinger:
       "A handful of fixes + minor changes this time around, along with one
        important >= v3.9 regression fix for IBLOCK backends.  The highlights
        include:
      
         - Use FD_MAX_SECTORS in FILEIO for block_device as
           well as files (agrover)
      
         - Fix processing of out-of-order CmdSNs with
           iSBD driver (shlomo)
      
         - Close long-standing target_put_sess_cmd() vs.
           core_tmr_abort_task() race with the addition of
           kref_put_spinlock_irqsave() (joern + greg-kh)
      
         - Fix IBLOCK WCE=1 + DPOFUA=1 backend WRITE
           regression in >= v3.9 (nab + bootc)
      
        Note these four patches are CC'ed to stable.
      
        Also, there is still some work left to be done on the active I/O
        shutdown path in target_wait_for_sess_cmds() used by tcm_qla2xxx +
        ib_isert fabrics that is still being discussed on the list, and will
        hopefully be resolved soon."
      
      * 'queue' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        target: close target_put_sess_cmd() vs. core_tmr_abort_task() race
        target: removed unused transport_state flag
        target/iblock: Fix WCE=1 + DPOFUA=1 backend WRITE regression
        MAINTAINERS: Update target git tree URL
        iscsi-target: Fix typos in RDMAEXTENSIONS macro usage
        target/rd: Add ramdisk bit for NULLIO operation
        iscsi-target: Fix processing of OOO commands
        iscsi-target: Make buf param of iscsit_do_crypto_hash_buf() const void *
        iscsi-target: Fix NULL pointer dereference in iscsit_send_reject
        target: Have dev/enable show if TCM device is configured
        target: Use FD_MAX_SECTORS/FD_BLOCKSIZE for blockdevs using fileio
        target: Remove unused struct members in se_dev_entry
      5c64e3a4
    • T
      workqueue: don't perform NUMA-aware allocations on offline nodes in wq_numa_init() · 1be0c25d
      Tejun Heo 提交于
      wq_numa_init() builds per-node cpumasks which are later used to make
      unbound workqueues NUMA-aware.  The cpumasks are allocated using
      alloc_cpumask_var_node() for all possible nodes.  Unfortunately, on
      machines with off-line nodes, this leads to NUMA-aware allocations on
      existing bug offline nodes, which in turn triggers BUG in the memory
      allocation code.
      
      Fix it by using NUMA_NO_NODE for cpumask allocations for offline
      nodes.
      
        kernel BUG at include/linux/gfp.h:323!
        invalid opcode: 0000 [#1] SMP
        Modules linked in:
        CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.9.0+ #1
        Hardware name: ProLiant BL465c G7, BIOS A19 12/10/2011
        task: ffff880234608000 ti: ffff880234602000 task.ti: ffff880234602000
        RIP: 0010:[<ffffffff8117495d>]  [<ffffffff8117495d>] new_slab+0x2ad/0x340
        RSP: 0000:ffff880234603bf8  EFLAGS: 00010246
        RAX: 0000000000000000 RBX: ffff880237404b40 RCX: 00000000000000d0
        RDX: 0000000000000001 RSI: 0000000000000003 RDI: 00000000002052d0
        RBP: ffff880234603c28 R08: 0000000000000000 R09: 0000000000000001
        R10: 0000000000000001 R11: ffffffff812e3aa8 R12: 0000000000000001
        R13: ffff8802378161c0 R14: 0000000000030027 R15: 00000000000040d0
        FS:  0000000000000000(0000) GS:ffff880237800000(0000) knlGS:0000000000000000
        CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
        CR2: ffff88043fdff000 CR3: 00000000018d5000 CR4: 00000000000007f0
        DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
        DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
        Stack:
         ffff880234603c28 0000000000000001 00000000000000d0 ffff8802378161c0
         ffff880237404b40 ffff880237404b40 ffff880234603d28 ffffffff815edba1
         ffff880237816140 0000000000000000 ffff88023740e1c0
        Call Trace:
         [<ffffffff815edba1>] __slab_alloc+0x330/0x4f2
         [<ffffffff81174b25>] kmem_cache_alloc_node_trace+0xa5/0x200
         [<ffffffff812e3aa8>] alloc_cpumask_var_node+0x28/0x90
         [<ffffffff81a0bdb3>] wq_numa_init+0x10d/0x1be
         [<ffffffff81a0bec8>] init_workqueues+0x64/0x341
         [<ffffffff810002ea>] do_one_initcall+0xea/0x1a0
         [<ffffffff819f1f31>] kernel_init_freeable+0xb7/0x1ec
         [<ffffffff815d50de>] kernel_init+0xe/0xf0
         [<ffffffff815ff89c>] ret_from_fork+0x7c/0xb0
        Code: 45  84 ac 00 00 00 f0 41 80 4d 00 40 e9 f6 fe ff ff 66 0f 1f 84 00 00 00 00 00 e8 eb 4b ff ff 49 89 c5 e9 05 fe ff ff <0f> 0b 4c 8b 73 38 44 89 ff 81 cf 00 00 20 00 4c 89 f6 48 c1 ee
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Reported-and-Tested-by: NLingzhu Xiang <lxiang@redhat.com>
      1be0c25d
    • L
      Merge tag 'trace-fixes-v3.10-rc1' of... · c240a539
      Linus Torvalds 提交于
      Merge tag 'trace-fixes-v3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      
      Pull tracing fixes from Steven Rostedt:
       "This includes a fix to a memory leak when adding filters to traces.
      
        Also, Masami Hiramatsu fixed up some minor bugs that were discovered
        by sparse."
      
      * tag 'trace-fixes-v3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing/kprobes: Make print_*probe_event static
        tracing/kprobes: Fix a sparse warning for incorrect type in assignment
        tracing/kprobes: Use rcu_dereference_raw for tp->files
        tracing: Fix leaks of filter preds
      c240a539
    • L
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ae3b29e6
      Linus Torvalds 提交于
      Pull x86 fixes from Thomas Gleixner:
      
       - Fix for a CPU hot-add deadlock in microcode update code
      
       - Fix for idle consolidation fallout
      
       - Documentation update for initial kernel direct mapping
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm: Add missing comments for initial kernel direct mapping
        x86/microcode: Add local mutex to fix physical CPU hot-add deadlock
        x86: Fix idle consolidation fallout
      ae3b29e6
    • L
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 652df602
      Linus Torvalds 提交于
      Pull perf fixes from Thomas Gleixner:
      
       - Fix for a task exit cleanup race caused by a missing a preempt
         disable
      
       - Cleanup of the event notification functions with a massive reduction
         of duplicated code
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf: Factor out auxiliary events notification
        perf: Fix EXIT event notification
      652df602
    • L
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cc51bf6e
      Linus Torvalds 提交于
      Pull timer fixes from Thomas Gleixner:
      
       - Cure for not using zalloc in the first place, which leads to random
         crashes with CPUMASK_OFF_STACK.
      
       - Revert a user space visible change which broke udev
      
       - Add a missing cpu_online early return introduced by the new full
         dyntick conversions
      
       - Plug a long standing race in the timer wheel cpu hotplug code.
         Sigh...
      
       - Cleanup NOHZ per cpu data on cpu down to prevent stale data on cpu
         up.
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        time: Revert ALWAYS_USE_PERSISTENT_CLOCK compile time optimizaitons
        timer: Don't reinitialize the cpu base lock during CPU_UP_PREPARE
        tick: Don't invoke tick_nohz_stop_sched_tick() if the cpu is offline
        tick: Cleanup NOHZ per cpu data on cpu down
        tick: Use zalloc_cpumask_var for allocating offstack cpumasks
      cc51bf6e
    • L
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 37cae5e2
      Linus Torvalds 提交于
      Pull core fixes from Thomas Gleixner:
      
       - Two fixlets for the fallout of the generic idle task conversion
      
       - Documentation update
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        rcu/idle: Wrap cpu-idle poll mode within rcu_idle_enter/exit
        idle: Fix hlt/nohlt command-line handling in new generic idle
        kthread: Document ways of reducing OS jitter due to per-CPU kthreads
      37cae5e2
    • L
      Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm · d21572c5
      Linus Torvalds 提交于
      Pull ARM fixes from Russell King:
       "A small number of fixes for stuff from the last merge window, and in
        one case (IRQ time accounting) the previous merge window."
      
      * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
        ARM: 7720/1: ARM v6/v7 cmpxchg64 shouldn't clear upper 32 bits of the old/new value
        ARM: 7715/1: MCPM: adapt to GIC changes after upstream merge
        ARM: 7714/1: mmc: mmci: Ensure return value of regulator_enable() is checked
        ARM: 7712/1: Remove trailing whitespace in arch/arm/Makefile
        ARM: 7711/1: dove: fix Dove cpu type from V7 to PJ4
        ARM: finally enable IRQ time accounting config
      d21572c5
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · 109c3c02
      Linus Torvalds 提交于
      Pull Ceph fixes from Sage Weil:
       "Yes, this is a much larger pull than I would like after -rc1.  There
        are a few things included:
      
         - a few fixes for leaks and incorrect assertions
         - a few patches fixing behavior when mapped images are resized
         - handling for cloned/layered images that are flattened out from
           underneath the client
      
        The last bit was non-trivial, and there is some code movement and
        associated cleanup mixed in.  This was ready and was meant to go in
        last week but I missed the boat on Friday.  My only excuse is that I
        was waiting for an all clear from the testing and there were many
        other shiny things to distract me.
      
        Strictly speaking, handling the flatten case isn't a regression and
        could wait, so if you like we can try to pull the series apart, but
        Alex and I would much prefer to have it all in as it is a case real
        users will hit with 3.10."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (33 commits)
        rbd: re-submit flattened write request (part 2)
        rbd: re-submit write request for flattened clone
        rbd: re-submit read request for flattened clone
        rbd: detect when clone image is flattened
        rbd: reference count parent requests
        rbd: define parent image request routines
        rbd: define rbd_dev_unparent()
        rbd: don't release write request until necessary
        rbd: get parent info on refresh
        rbd: ignore zero-overlap parent
        rbd: support reading parent page data for writes
        rbd: fix parent request size assumption
        libceph: init sent and completed when starting
        rbd: kill rbd_img_request_get()
        rbd: only set up watch for mapped images
        rbd: set mapping read-only flag in rbd_add()
        rbd: support reading parent page data
        rbd: fix an incorrect assertion condition
        rbd: define rbd_dev_v2_header_info()
        rbd: get rid of trivial v1 header wrappers
        ...
      109c3c02
    • J
      NTB: Multiple NTB client fix · 8b19d450
      Jon Mason 提交于
      Fix issue with adding multiple ntb client devices to the ntb virtual
      bus.  Previously, multiple devices would be added with the same name,
      resulting in crashes.  To get around this issue, add a unique number to
      the device when it is added.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      8b19d450
    • J
      ntb_netdev: remove from list on exit · 904435cf
      Jon Mason 提交于
      The ntb_netdev device is not removed from the global list of devices
      upon device removal.  If the device is re-added, the removal code would
      find the first instance and try to remove an already removed device.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      904435cf
    • J
      NTB: memcpy lockup workaround · c336acd3
      Jon Mason 提交于
      The system will appear to lockup for long periods of time due to the NTB
      driver spending too much time in memcpy.  Avoid this by reducing the
      number of packets that can be serviced on a given interrupt.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      c336acd3
    • J
      NTB: Correctly handle receive buffers of the minimal size · c9d534c8
      Jon Mason 提交于
      The ring logic of the NTB receive buffer/transmit memory window requires
      there to be at least 2 payload sized allotments.  For the minimal size
      case, split the buffer into two and set the transport_mtu to the
      appropriate size.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      c9d534c8
    • J
      NTB: reset tx_index on link toggle · 90f9e934
      Jon Mason 提交于
      If the NTB link toggles, the driver could stop receiving due to the
      tx_index not being set to 0 on the transmitting size on a link-up event.
      This is due to the driver expecting the incoming data to start at the
      beginning of the receive buffer and not at a random place.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      90f9e934
    • J
      NTB: Link toggle memory leak · b77b2637
      Jon Mason 提交于
      Each link-up will allocate a new NTB receive buffer when the NTB
      properties are negotiated with the remote system.  These allocations did
      not check for existing buffers and thus did not free them.  Now, the
      driver will check for an existing buffer and free it if not of the
      correct size, before trying to alloc a new one.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      b77b2637
    • J
      NTB: Handle 64bit BAR sizes · 113fc505
      Jon Mason 提交于
      64bit BAR sizes are permissible with an NTB device.  To support them
      various modifications and clean-ups were required, most significantly
      using 2 32bit scratch pad registers for each BAR.
      
      Also, modify the driver to allow more than 2 Memory Windows.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      113fc505
    • D
      NTB: fix pointer math issues · cc0f868d
      Dan Carpenter 提交于
      ->remote_rx_info and ->rx_info are struct ntb_rx_info pointers.  If we
      add sizeof(struct ntb_rx_info) then it goes too far.
      Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      cc0f868d
    • D
      ntb: off by one sanity checks · ad3e2751
      Dan Carpenter 提交于
      These tests are off by one.  If "mw" is equal to NTB_NUM_MW then we
      would go beyond the end of the ndev->mw[] array.
      Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      ad3e2751
    • J
      NTB: variable dereferenced before check · 186f27ff
      Jon Mason 提交于
      Correct instances of variable dereferencing before checking its value on
      the functions exported to the client drivers.  Also, add sanity checks
      for all exported functions.
      Reported-by: NDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      186f27ff
    • M
      tracing/kprobes: Make print_*probe_event static · b62fdd97
      Masami Hiramatsu 提交于
      According to sparse warning, print_*probe_event static because
      those functions are not directly called from outside.
      
      Link: http://lkml.kernel.org/r/20130513115839.6545.83067.stgit@mhiramat-M0-7522
      
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Tom Zanussi <tom.zanussi@intel.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      b62fdd97
    • M
      tracing/kprobes: Fix a sparse warning for incorrect type in assignment · 3d1fc7b0
      Masami Hiramatsu 提交于
      Fix a sparse warning about the rcu operated pointer is
      defined without __rcu address space.
      
      Link: http://lkml.kernel.org/r/20130513115837.6545.23322.stgit@mhiramat-M0-7522
      
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Tom Zanussi <tom.zanussi@intel.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      3d1fc7b0
    • M
      tracing/kprobes: Use rcu_dereference_raw for tp->files · c02c7e65
      Masami Hiramatsu 提交于
      Use rcu_dereference_raw() for accessing tp->files. Because the
      write-side uses rcu_assign_pointer() for memory barrier,
      the read-side also has to use rcu_dereference_raw() with
      read memory barrier.
      
      Link: http://lkml.kernel.org/r/20130513115834.6545.17022.stgit@mhiramat-M0-7522
      
      Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Tom Zanussi <tom.zanussi@intel.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Signed-off-by: NMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      c02c7e65
    • S
      tracing: Fix leaks of filter preds · 60705c89
      Steven Rostedt (Red Hat) 提交于
      Special preds are created when folding a series of preds that
      can be done in serial. These are allocated in an ops field of
      the pred structure. But they were never freed, causing memory
      leaks.
      
      This was discovered using the kmemleak checker:
      
      unreferenced object 0xffff8800797fd5e0 (size 32):
        comm "swapper/0", pid 1, jiffies 4294690605 (age 104.608s)
        hex dump (first 32 bytes):
          00 00 01 00 03 00 05 00 07 00 09 00 0b 00 0d 00  ................
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        backtrace:
          [<ffffffff814b52af>] kmemleak_alloc+0x73/0x98
          [<ffffffff8111ff84>] kmemleak_alloc_recursive.constprop.42+0x16/0x18
          [<ffffffff81120e68>] __kmalloc+0xd7/0x125
          [<ffffffff810d47eb>] kcalloc.constprop.24+0x2d/0x2f
          [<ffffffff810d4896>] fold_pred_tree_cb+0xa9/0xf4
          [<ffffffff810d3781>] walk_pred_tree+0x47/0xcc
          [<ffffffff810d5030>] replace_preds.isra.20+0x6f8/0x72f
          [<ffffffff810d50b5>] create_filter+0x4e/0x8b
          [<ffffffff81b1c30d>] ftrace_test_event_filter+0x5a/0x155
          [<ffffffff8100028d>] do_one_initcall+0xa0/0x137
          [<ffffffff81afbedf>] kernel_init_freeable+0x14d/0x1dc
          [<ffffffff814b24b7>] kernel_init+0xe/0xdb
          [<ffffffff814d539c>] ret_from_fork+0x7c/0xb0
          [<ffffffffffffffff>] 0xffffffffffffffff
      
      Cc: Tom Zanussi <tzanussi@gmail.com>
      Cc: stable@vger.kernel.org # 2.6.39+
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      60705c89
    • S
      rcu: Don't allocate bootmem from rcu_init() · 615ee544
      Sasha Levin 提交于
      When rcu_init() is called we already have slab working, allocating
      bootmem at that point results in warnings and an allocation from
      slab.  This commit therefore changes alloc_bootmem_cpumask_var() to
      alloc_cpumask_var() in rcu_bootup_announce_oddness(), which is called
      from rcu_init().
      Signed-off-by: NSasha Levin <sasha.levin@oracle.com>
      Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Reviewed-by: NJosh Triplett <josh@joshtriplett.org>
      Tested-by: NRobin Holt <holt@sgi.com>
      
      [paulmck: convert to zalloc_cpumask_var(), as suggested by Yinghai Lu.]
      615ee544
  3. 15 5月, 2013 7 次提交