1. 26 Jun, 2013 1 commit
    • Nicholas Bellinger's avatar
      iscsi-target: Refactor ISCSI_OP_TEXT_RSP TX handling · 889c8a68
      Nicholas Bellinger authored
      This patch refactoring existing iscsit_send_text_rsp() in order
      to handle iscsi_text_rsp payloads in a transport specific manner.
      
      This includes the addition of iscsit_build_text_rsp() to build
      the response payload and initialize ISCSI_OP_TEXT_RSP.
      
      v2: Make iscsit_build_text_rsp() determine extra padding bytes, and
          drop legacy padding calculation for traditional iSCSI text
          responses within iscsit_send_text_rsp()
      Reported-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Mike Christie <michaelc@cs.wisc.edu>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      889c8a68
  2. 25 Jun, 2013 2 commits
    • Nicholas Bellinger's avatar
      iscsi-target: Refactor ISCSI_OP_TEXT RX handling · 64534aa7
      Nicholas Bellinger authored
      This patch refactors ISCSI_OP_TEXT handling within iscsi-target in
      order to handle iscsi_text payloads in a transport specific manner.
      
      This includes splitting current iscsit_handle_text_cmd() into
      iscsit_setup_text_cmd() and iscsit_process_text_cmd() calls, and
      makes iscsit_handle_text_cmd be only used internally by traditional
      iscsi socket calls.
      
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Mike Christie <michaelc@cs.wisc.edu>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      64534aa7
    • Nicholas Bellinger's avatar
      iscsi/isert-target: Refactor ISCSI_OP_NOOP RX handling · 778de368
      Nicholas Bellinger authored
      This patch refactors ISCSI_OP_NOOP handling within iscsi-target in
      order to handle iscsi_nopout payloads in a transport specific manner.
      
      This includes splitting existing iscsit_handle_nop_out() into
      iscsit_setup_nop_out() and iscsit_process_nop_out() calls, and
      makes iscsit_handle_nop_out() be only used internally by traditional
      iscsi socket calls.
      
      Next update iser-target code to use new callers and add FIXME for
      the handling iscsi_nopout payloads.  Also fix reject response handling
      in iscsit_setup_nop_out() to use proper iscsit_add_reject_from_cmd().
      
      v2: Fix uninitialized iscsit_handle_nop_out() payload_length usage (Fengguang)
      v3: Remove left-over dead code in iscsit_setup_nop_out() (DanC)
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      778de368
  3. 20 Jun, 2013 10 commits
    • Jörn Engel's avatar
      qla_target: remove qlt_check_fcport_exist · 08234e3a
      Jörn Engel authored
      Comment from original 2012 patch:
        In all our testing this function has never returned true.  However, the
        dropping of hardware_lock necessary to call this function seems to cause
        a use-after-free we manage to hit rather frequently.  Given this
        cost-benefit ratio, I'm willing to remove some 100 lines of code.
      
      And since the same problem exists around shutdown_sess and put_sess,
      this patch changes them from taking the hardware_lock to requiring the
      hardware_lock to be taken.  In most cases the caller already had the
      lock and had to drop it for the called method to reacquire it.  At best
      that hurts performance and in rare instances it causes races with fatal
      consequences.
      
      We dropped the original 2012 patch when upgrading our kernel and it took
      us nearly half a year to discover we still need it.
      
      (nab: Fix qla_tgt_sess reference in tcm_qla2xxx_put_sess)
      Signed-off-by: default avatarJoern Engel <joern@logfs.org>
      Cc: Giridhar Malavali <giridhar.malavali@qlogic.com>
      Cc: Chad Dupuis <chad.dupuis@qlogic.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      08234e3a
    • Nicholas Bellinger's avatar
      vhost/scsi: Convert to se_cmd->cmd_kref TARGET_SCF_ACK_KREF usage · 084ed45b
      Nicholas Bellinger authored
      This patch coverts vhost/scsi to se_cmd->cmd_kref TARGET_SCF_ACK_KREF
      usage, instead of assuming that vhost_scsi_free_cmd() is always called
      before TCM processing is completed in the response fast path.
      
      This includes adding vhost_scsi_check_stop_free() -> target_put_sess_cmd()
      to perform the second se_cmd->cmd_kref put, and moving vhost_scsi_free_cmd()
      resource release into tcm_vhost_release_cmd() that is invoked once the last
      se_cmd->cmd_kref put occurs.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Asias He <asias@redhat.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      084ed45b
    • Nicholas Bellinger's avatar
      vhost/scsi: Drop unnecessary wait_for_tasks=true usage with transport_generic_free_cmd · 6c131d0c
      Nicholas Bellinger authored
      This patch changes vhost_scsi_free_cmd() to call transport_generic_free_cmd()
      with wait_for_tasks=false in order to avoid the extra se_cmd->t_state_lock
      access for the wait_for_tasks=true case.
      
      This is unnecessary because vhost_scsi_free_cmd() is only ever called by
      vhost_scsi_complete_cmd_work() after TCM completion handoff, and by
      vhost_scsi_handle_vq() exception code before TCM submission handoff, so
      there is never a case where se_cmd is still active from TCM's perspective
      when transport_generic_free_cmd() is called.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Asias He <asias@redhat.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      6c131d0c
    • Nicholas Bellinger's avatar
      target: Drop legacy se_cmd->check_release bit · ca24976a
      Nicholas Bellinger authored
      Now with iscsi-target using modern se_cmd->cmd_kref accounting in
      v3.10 code, it's safe to go ahead and drop the legacy release
      codepath + se_cmd->check_release bit in transport_release_cmd()
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      ca24976a
    • Nicholas Bellinger's avatar
      iscsi-target: Avoid unnecessary t_state_lock during unsolicited data-out check · b9da5826
      Nicholas Bellinger authored
      In modern iscsi-target code, the setup and I/O submission is done within a
      single process context, so there is no need to acquire se_cmd->t_state_lock while
      checking SCF_SUPPORTED_SAM_OPCODE for determining when unsolicited data-out
      should be dumped.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      b9da5826
    • Nicholas Bellinger's avatar
      target: Drop unnecessary t_state_lock access for SCF_SUPPORTED_SAM_OPCODE assignment · b28e545c
      Nicholas Bellinger authored
      This patch drops the se_cmd->t_state_lock access around SCF_SUPPORTED_SAM_OPCODE
      assignment within target_setup_cmd_from_cdb().
      
      Original v4.0 target code required this as fabrics would be checking for
      this values in different process contexts for setup and I/O submission.
      
      Given that modern v4.1 target code performs setup and I/O submission
      from the same process context, this t_state_lock access is no longer
      required.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      b28e545c
    • Nicholas Bellinger's avatar
      target: Avoid extra t_state_lock access in __target_execute_cmd · 1a398b97
      Nicholas Bellinger authored
      This patch makes target_execute_cmd() set CMD_T_BUSY|CMD_T_SENT while
      holding se_cmd->t_state_lock, in order to avoid the extra aquire/release
      in __target_execute_cmd().
      
      It also clears these bits in case of a target_handle_task_attr()
      failure.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      1a398b97
    • Nicholas Bellinger's avatar
      target: Remove legacy t_fe_count + avoid t_state_lock access in transport_put_cmd · c1c35d52
      Nicholas Bellinger authored
      This patch removes legacy se_cmd->t_fe_count usage in order to avoid
      se_cmd->t_state_lock access within transport_put_cmd() during normal
      fast path se_cmd descriptor release.
      
      Also drop the left-over parameter usage within core_tmr_handle_tas_abort()
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      c1c35d52
    • Nicholas Bellinger's avatar
      target: Drop unnecessary CMD_T_DEV_ACTIVE check from transport_lun_remove_cmd · 0b66818a
      Nicholas Bellinger authored
      This patch drops an unnecessary acquire/release of se_cmd->t_state_lock within
      transport_lun_remove_cmd() when checking CMD_T_DEV_ACTIVE for invoking
      target_remove_from_state_list().
      
      For all fast path completion cases, transport_lun_remove_cmd() is always
      called ahead of transport_cmd_check_stop(), and since transport_cmd_check_stop()
      is calling target_remove_from_state_list() when remove_from_lists=true,
      the t_state_lock usage in transport_lun_remove_cmd() can safely be removed.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      0b66818a
    • Nicholas Bellinger's avatar
      target: Add transport_cmd_check_stop write_pending bit · 862e6389
      Nicholas Bellinger authored
      This patch adds a new transport_cmd_check_stop() parameter for signaling
      when TRANSPORT_WRITE_PENDING needs to be set.
      
      This allows transport_generic_new_cmd() to avoid the extra lock acquire/release
      of ->t_state_lock in the fast path for DMA_TO_DEVICE operations ahead of
      transport_cmd_check_stop() + se_tfo->write_pending().
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Kent Overstreet <koverstreet@google.com>
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Moussa Ba <moussaba@micron.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      862e6389
  4. 14 Jun, 2013 13 commits
  5. 09 Jun, 2013 2 commits
    • Linus Torvalds's avatar
      Linux 3.10-rc5 · 317ddd25
      Linus Torvalds authored
      317ddd25
    • Mikulas Patocka's avatar
      hpfs: fix warnings when the filesystem fills up · bbd465df
      Mikulas Patocka authored
      This patch fixes warnings due to missing lock on write error path.
      
        WARNING: at fs/hpfs/hpfs_fn.h:353 hpfs_truncate+0x75/0x80 [hpfs]()
        Hardware name: empty
        Pid: 26563, comm: dd Tainted: P           O 3.9.4 #12
        Call Trace:
          hpfs_truncate+0x75/0x80 [hpfs]
          hpfs_write_begin+0x84/0x90 [hpfs]
          _hpfs_bmap+0x10/0x10 [hpfs]
          generic_file_buffered_write+0x121/0x2c0
          __generic_file_aio_write+0x1c7/0x3f0
          generic_file_aio_write+0x7c/0x100
          do_sync_write+0x98/0xd0
          hpfs_file_write+0xd/0x50 [hpfs]
          vfs_write+0xa2/0x160
          sys_write+0x51/0xa0
          page_fault+0x22/0x30
          system_call_fastpath+0x1a/0x1f
      Signed-off-by: default avatarMikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
      Cc: stable@kernel.org  # 2.6.39+
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      bbd465df
  6. 08 Jun, 2013 12 commits
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 81db4dbf
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
      
       - Trivial: unused variable removal
      
       - Posix-timers: Add the clock ID to the new proc interface to make it
         useful.  The interface is new and should be functional when we reach
         the final 3.10 release.
      
       - Cure a false positive warning in the tick code introduced by the
         overhaul in 3.10
      
       - Fix for a persistent clock detection regression introduced in this
         cycle
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timekeeping: Correct run-time detection of persistent_clock.
        ntp: Remove unused variable flags in __hardpps
        posix-timers: Show clock ID in proc file
        tick: Cure broadcast false positive pending bit warning
      81db4dbf
    • Linus Torvalds's avatar
      Merge tag 'irqdomain-for-linus' of git://git.secretlab.ca/git/linux · c3e58a79
      Linus Torvalds authored
      Pull irqdomain bug fixes from Grant Likely:
       "This branch contains a set of straight forward bug fixes to the
        irqdomain code and to a couple of drivers that make use of it."
      
      * tag 'irqdomain-for-linus' of git://git.secretlab.ca/git/linux:
        irqchip: Return -EPERM for reserved IRQs
        irqdomain: document the simple domain first_irq
        kernel/irq/irqdomain.c: before use 'irq_data', need check it whether valid.
        irqdomain: export irq_domain_add_simple
      c3e58a79
    • Grant Likely's avatar
      irqchip: Return -EPERM for reserved IRQs · d94ea3f6
      Grant Likely authored
      The irqdomain core will report a log message for any attempted map call
      that fails unless the error code is -EPERM. This patch changes the
      Versatile irq controller drivers to use -EPERM because it is normal for
      a subset of the IRQ inputs to be marked as reserved on the various
      Versatile platforms.
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      d94ea3f6
    • Linus Walleij's avatar
      irqdomain: document the simple domain first_irq · 94a63da0
      Linus Walleij authored
      The first_irq needs to be zero to get a linear domain and that
      comes with special semantics. We want to simplify this going
      forward but some documentation never hurts.
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      94a63da0
    • Chen Gang's avatar
      kernel/irq/irqdomain.c: before use 'irq_data', need check it whether valid. · 275e31b1
      Chen Gang authored
      Since irq_data may be NULL, if so, we WARN_ON(), and continue, 'hwirq'
      which related with 'irq_data' has to initialize later, or it will cause
      issue.
      Signed-off-by: default avatarChen Gang <gang.chen@asianux.com>
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      275e31b1
    • Arnd Bergmann's avatar
      irqdomain: export irq_domain_add_simple · 346dbb79
      Arnd Bergmann authored
      All other irq_domain_add_* functions are exported already, and apparently
      this one got left out by mistake, which causes build errors for ARM
      allmodconfig kernels:
      
      ERROR: "irq_domain_add_simple" [drivers/gpio/gpio-rcar.ko] undefined!
      ERROR: "irq_domain_add_simple" [drivers/gpio/gpio-em.ko] undefined!
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarSimon Horman <horms+renesas@verge.net.au>
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      346dbb79
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 50b4b9c3
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "Another week, another batch of fixes for arm-soc platforms.
      
        Nothing controversial here, a handful of fixes for regressions and/or
        serious problems across several of the platforms.  Things are slowing
        down nicely on fix rates for 3.10"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: exynos: add debug_ll_io_init() call in exynos_init_io()
        ARM: EXYNOS: uncompress - print debug messages if DEBUG_LL is defined
        ARM: shmobile: sh73a0: Update CMT clockevent rating to 80
        sh-pfc: r8a7779: Don't group USB OVC and PENC pins
        ARM: mxs: icoll: Fix interrupts gpio bank 0
        ARM: imx: clk-imx6q: AXI clock select index is incorrect
        ARM: bcm2835: override the HW UART periphid
        ARM: mvebu: Fix bug in coherency fabric low level init function
        ARM: Kirkwood: TS219: Fix crash by double PCIe instantiation
        ARM: ux500: Provide supplies for AUX1, AUX2 and AUX3
        ARM: ux500: Only configure wake-up reasons on ux500 based platforms
        ARM: dts: imx: fix clocks for cspi
        ARM i.MX6q: fix for ldb_di_sels
      50b4b9c3
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 554e6e9f
      Linus Torvalds authored
      Pull MIPS fixes from Ralf Baechle:
       "MIPS fixes across the field.  The only area that's standing out is the
        exception handling which received it's dose of breakage as part of the
        microMIPS patchset"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: ralink: add missing SZ_1M multiplier
        MIPS: Compat: Fix cputime_to_timeval() arguments in compat binfmt_elf.
        MIPS: OCTEON: Improve _machine_halt implementation.
        MIPS: rtlx: Fix implicit declaration of function set_vi_handler()
        MIPS: Trap exception handling fixes
        MIPS: Quit exposing Kconfig symbols in uapi headers.
        MIPS: Remove duplicate definition of check_for_high_segbits.
      554e6e9f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 17d8dfcd
      Linus Torvalds authored
      Pull m68knommu fix from Greg Ungerer:
       "A single fix for compilation breakage to many of the ColdFire CPU
        targets"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68k: only use local gpio_request_one if not using GPIOLIB
      17d8dfcd
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 6ea31c56
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Regression fixers for the big 3:
      
         - nouveau: hdmi audio, dac load detect, s/r regressions fixed
         - radeon: long standing system hang fixed, hdmi audio and rs780 fast
           fb fixes
         - intel: one old regression, a WARN removal, and a stop X dying fix
      
        Otherwise one mgag200 fix, a couple of arm build fixes, and a core use
        after free fix."
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/nv50/kms: use dac loadval from vbios, where it's available
        drm/nv50/disp: force dac power state during load detect
        drm/nv50-nv84/fifo: fix resume regression introduced by playlist race fix
        drm/nv84/disp: Fix HDMI audio regression
        drm/i915/sdvo: Use &intel_sdvo->ddc instead of intel_sdvo->i2c for DDC.
        drm/radeon: don't allow audio on DCE6
        drm/radeon: Use direct mapping for fast fb access on RS780/RS880 (v2)
        radeon: Fix system hang issue when using KMS with older cards
        drm/i915: no lvds quirk for hp t5740
        drm/i915: Quirk the pipe A quirk in the modeset state checker
        drm/i915: Fix spurious -EIO/SIGBUS on wedged gpus
        drm/mgag200: Add missing write to index before accessing data register
        drm/nouveau: use mdelay instead of large udelay constants
        drm/tilcd: select BACKLIGHT_LCD_SUPPORT
        drm: fix a use-after-free when GPU acceleration disabled
      6ea31c56
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma · d7a39e30
      Linus Torvalds authored
      Pull slave-dmaengine fixes from Vinod Koul:
       "Fix from Andy is for dmatest regression reported by Will and Rabin has
        fixed runtime ref counting for st_dma40"
      
      * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
        dmatest: do not allow to interrupt ongoing tests
        dmaengine: ste_dma40: fix pm runtime ref counting
      d7a39e30
    • Linus Torvalds's avatar
      Merge tag 'trace-fixes-v3.10-rc3-v3' of... · 14d0ee05
      Linus Torvalds authored
      Merge tag 'trace-fixes-v3.10-rc3-v3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      
      Pull tracing fixes from Steven Rostedt:
       "This contains 4 fixes.
      
        The first two fix the case where full RCU debugging is enabled,
        enabling function tracing causes a live lock of the system.  This is
        due to the added debug checks in rcu_dereference_raw() that is used by
        the function tracer.  These checks are also traced by the function
        tracer as well as cause enough overhead to the function tracer to slow
        down the system enough that the time to finish an interrupt can take
        longer than when the next interrupt is triggered, causing a live lock
        from the timer interrupt.
      
        Talking this over with Paul McKenney, we came up with a fix that adds
        a new rcu_dereference_raw_notrace() that does not perform these added
        checks, and let the function tracer use that.
      
        The third commit fixes a failed compile when branch tracing is
        enabled, due to the conversion of the trace_test_buffer() selftest
        that the branch trace wasn't converted for.
      
        The forth patch fixes a bug caught by the RCU lockdep code where a
        rcu_read_lock() is performed when rcu is disabled (either going to or
        from idle, or user space).  This happened on the irqsoff tracer as it
        calls task_uid().  The fix here was to use current_uid() when possible
        that doesn't use rcu locking.  Which luckily, is always used when
        irqsoff calls this code."
      
      * tag 'trace-fixes-v3.10-rc3-v3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Use current_uid() for critical time tracing
        tracing: Fix bad parameter passed in branch selftest
        ftrace: Use the rcu _notrace variants for rcu_dereference_raw() and friends
        rcu: Add _notrace variation of rcu_dereference_raw() and hlist_for_each_entry_rcu()
      14d0ee05