1. 02 Dec, 2014 19 commits
    • Hannes Reinecke's avatar
      tcm_loop: Fix wrong I_T nexus association · 506787a2
      Hannes Reinecke authored
      tcm_loop has the I_T nexus associated with the HBA. This causes
      commands to become misdirected if the HBA has more than one
      target portal group; any command is then being sent to the
      first target portal group instead of the correct one.
      
      The nexus needs to be associated with the target portal group
      instead.
      Signed-off-by: default avatarHannes Reinecke <hare@suse.de>
      Cc: <stable@vger.kernel.org> # 3.0+
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      506787a2
    • Nicholas Bellinger's avatar
      target: Drop left-over PHBA_PDEV set attr checks · 4b2f57e5
      Nicholas Bellinger authored
      Now that PSCSI is only exposing four hw_* read-only device attributes,
      go ahead and drop the left-over -> legacy PHBA_PDEV checks in various
      se_dev_set_* code, since it's now only used by virtual devices.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      4b2f57e5
    • Nicholas Bellinger's avatar
      target: Drop left-over internal dev attribute code · 43cf208c
      Nicholas Bellinger authored
      Now that backend drivers are populating their own device attributes,
      go ahead and remove left-over definitions + internal attribute list
      of device attributes from target_core_configfs.c code
      
      Also update TB_CIT_SETUP(dev_attrib,...) to signal ct_attr = NULL.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      43cf208c
    • Nicholas Bellinger's avatar
      target/pscsi: Convert to external pscsi_backend_dev_attrs · 6cfb546b
      Nicholas Bellinger authored
      This patch converts PSCSI to use an external set of device attributes,
      and utilizes target_core_backend_configfs.h macros to generate a default
      set of configfs extended-attr handlers.
      
      It calls target_core_setup_sub_cits() to setup the initial config_item_type
      based on existing target_core_configfs.c defaults, and using configfs_attribute
      for hw_pi_prot_type, hw_block_size, hw_max_sectors, hw_queue_depth populates
      pscsi_backend_dev_attrs[]
      
      Only these four hw_* read-only device attributes are exports for PSCSI.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      6cfb546b
    • Nicholas Bellinger's avatar
      target/user: Convert to external tcmu_backend_dev_attrs · e9f720d6
      Nicholas Bellinger authored
      This patch converts TCM-USER to use an external set of device attributes,
      and utilizes target_core_backend_configfs.h macros to generate a default
      set of configfs extended-attr handlers.
      
      It calls target_core_setup_sub_cits() to setup the initial config_item_type
      based on existing target_core_configfs.c defaults, and using configfs_attribute
      generated by DEF_TB_DEFAULT_ATTRIBS(tcmu) populates tcmu_backend_dev_attrs[]
      
      It introduces no function change for existing TCMU device attributes.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      e9f720d6
    • Nicholas Bellinger's avatar
      target/rd: Convert to external rd_mcp_backend_dev_attrs · 03a62745
      Nicholas Bellinger authored
      This patch converts RAMDISK to use an external set of device attributes,
      and utilizes target_core_backend_configfs.h macros to generate a default
      set of configfs extended-attr handlers.
      
      It calls target_core_setup_sub_cits() to setup the initial config_item_type
      based on existing target_core_configfs.c defaults, and using configfs_attribute
      generated by DEF_TB_DEFAULT_ATTRIBS(rc_mcp) populates rd_mcp_backend_dev_attrs[]
      
      It introduces no functional change for existing RD_MCP device attributes.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      03a62745
    • Nicholas Bellinger's avatar
      target/file: Convert to external fileio_backend_dev_attrs · b2320497
      Nicholas Bellinger authored
      This patch converts FILEIO to use an external set of device attributes,
      and utilizes target_core_backend_configfs.h macros to generate a default
      set of configfs extended-attr handlers.
      
      It calls target_core_setup_sub_cits() to setup the initial config_item_type
      based on existing target_core_configfs.c defaults, and using configfs_attribute
      generated by DEF_TB_DEFAULT_ATTRIBS(fileio) populates fileio_backend_dev_attrs[]
      
      It introduces no functional change for existing FILEIO device attributes.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      b2320497
    • Nicholas Bellinger's avatar
      target/iblock: Convert to external iblock_backend_dev_attrs · 5645cba0
      Nicholas Bellinger authored
      This patch converts IBLOCK to use an external set of device attributes,
      and utilizes target_core_backend_configfs.h macros to generate a default
      set of configfs extended-attr handlers.
      
      It calls target_core_setup_sub_cits() to setup the initial config_item_type
      based on existing target_core_configfs.c defaults, and using configfs_attribute
      generated by DEF_TB_DEFAULT_ATTRIBS(iblock) populates iblock_backend_dev_attrs[]
      
      It introduces no functional change for existing IBLOCK device attributes.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      5645cba0
    • Nicholas Bellinger's avatar
      target: Add DEF_TB_DEFAULT_ATTRIBS macro for virtual device attrs · e6c39f70
      Nicholas Bellinger authored
      This helper macro adds the default set of 30 device attributes for
      virtual devices from existing target_core_configfs.c code, and moves
      the definitions into a single macro to create the structs necessary
      for backend drivers.
      
      It allows them to populate their own external struct configfs_attribute
      for se_subsystem_api->tb_cits.tb_dev_attrib_cit.ct_attrs.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      e6c39f70
    • Nicholas Bellinger's avatar
      target: Add EXPORT_SYMBOL for existing se_dev_set_* · d30cd123
      Nicholas Bellinger authored
      Now that target_core_backend_configfs.h macros will be using these
      se_dev_set attribute functions externally to allow backend drivers
      to populate different attributes, go ahead and add EXPORT_SYMBOL()
      for the existing default set of 30 device attributes.
      
      Also update target_core_backend.h with proper function prototypes.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      d30cd123
    • Nicholas Bellinger's avatar
      target: Add target_core_backend_configfs.h helper macros · 7a23f890
      Nicholas Bellinger authored
      This patch adds a number of configfs e-attr macros following
      what existing target_core_configfs.c code does for internal
      target_backend_dev_attrib setup, and similar to how target
      fabric drivers allow for external config_item_type + cit->ct_attrs.
      assignment.
      
      This is useful for backend drivers like PSCSI who need to only
      expose a small subset of device attributes, while still retaining
      a default list of attributes for other backend drivers like
      IBLOCK, FILEIO, RAMDISK, and TCMU.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      7a23f890
    • Nicholas Bellinger's avatar
      target: Move dev_stat_cit to struct se_subsystem_api · d23ab570
      Nicholas Bellinger authored
      This patch adds support for dev_stat_cit as an external config_item_type
      using TB_CIT_SETUP() helper macro, and sets only ct_group_ops following
      existing code.
      
      It updates target_core_make_subdev() + target_core_setup_dev_attrib_cit() +
      struct target_backend_cits, and drops left-over target_core_dev_stat_cit
      from target_core_configfs.c code and update comments.
      
      This patch introduces no functional change from existing code.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      d23ab570
    • Nicholas Bellinger's avatar
      target: Move dev_alua_tg_pt_gps_cit to struct se_subsystem_api · 72aca57b
      Nicholas Bellinger authored
      This patch adds support for dev_alua_tg_pt_gps_cit as an external config_item_type
      using TB_CIT_SETUP() helper macro, and sets only ct_group_ops following
      existing code.
      
      It updates target_core_make_subdev() + target_core_setup_dev_attrib_cit() +
      struct target_backend_cits, and drops left-over target_core_dev_alua_tg_pt_gps_cit
      from target_core_configfs.c code and update comments.
      
      This patch introduces no functional change from existing code.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      72aca57b
    • Nicholas Bellinger's avatar
      target: Move dev_wwn_cit to struct se_subsystem_api · f8d389c6
      Nicholas Bellinger authored
      This patch adds support for dev_wwn_cit as an external config_item_type
      using TB_CIT_SETUP() helper macro, and sets both ct_item_ops + ct_attr
      following existing code.
      
      It updates target_core_make_subdev() + target_core_setup_dev_attrib_cit() +
      struct target_backend_cits, and drops left-over target_core_dev_wwn_cit
      from target_core_configfs.c code and update comments.
      
      This patch introduces no functional change from existing code.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      f8d389c6
    • Nicholas Bellinger's avatar
      target: Move dev_pr_cit to struct se_subsystem_api · 91e2e39b
      Nicholas Bellinger authored
      This patch adds support for dev_pr_cit as an external config_item_type
      using TB_CIT_SETUP() helper macro, and sets both ct_item_ops + ct_attr
      following existing code.
      
      It updates target_core_make_subdev() + target_core_setup_dev_attrib_cit() +
      struct target_backend_cits, and drops left-over target_core_dev_pr_cit
      from target_core_configfs.c code and update comments.
      
      This patch introduces no functional change from existing code.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      91e2e39b
    • Nicholas Bellinger's avatar
      target: Move dev_attrib_cit to struct se_subsystem_api · f79a897e
      Nicholas Bellinger authored
      This patch adds support for dev_attrib_cit as an external config_item_type
      using TB_CIT_SETUP() helper macro, and sets both ct_item_ops + ct_attr
      following existing code.
      
      It updates target_core_make_subdev() + target_core_setup_dev_attrib_cit() +
      struct target_backend_cits, and drops left-over target_core_dev_attrib_cit
      from target_core_configfs.c code and update comments.
      
      This patch introduces no functional change from existing code.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      f79a897e
    • Nicholas Bellinger's avatar
      target: Move dev_cit to struct se_subsystem_api · 73112edc
      Nicholas Bellinger authored
      This patch adds initial support for dev_cit as external config_item_type.
      
      This includes a new struct target_backend_cits to hold the external CITs
      within struct se_subsystem_api, and target_core_setup_sub_cits() to be
      used by backend drivers ahead of transport_subsystem_register().
      
      It adds a TB_CIT_SETUP() helper following target_core_fabric_configfs.c
      to perform the config_item_type assignments.
      
      Also, drop left-over target_core_dev_cit from target_core_configfs.c code
      and update comments.
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      73112edc
    • Markus Elfring's avatar
      target: Deletion of unnecessary checks before the function call "module_put" · 2ed37f6c
      Markus Elfring authored
      The module_put() function tests whether its argument is NULL and then
      returns immediately. Thus the test around the call is not needed.
      
      This issue was detected by using the Coccinelle software.
      Signed-off-by: default avatarMarkus Elfring <elfring@users.sourceforge.net>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      2ed37f6c
    • Roland Dreier's avatar
      target: Fix target_core_register_fabric() for built-in fabric modules · e7b7af6e
      Roland Dreier authored
      If we try to create a fabric directory in configfs for one of the
      default hard-coded fabric modules (iscsi and loopback), and that
      fabric is actually built into the kernel, then the operation will
      spuriously fail because request_module() (for the code that's already
      linked into the kernel) fails.
      
      Fix this by running the autoprobing code only if an initial
      target_core_get_fabric() fails.
      Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      e7b7af6e
  2. 20 Nov, 2014 1 commit
  3. 03 Nov, 2014 3 commits
  4. 28 Oct, 2014 4 commits
  5. 26 Oct, 2014 4 commits
    • Linus Torvalds's avatar
      Linux 3.18-rc2 · cac7f242
      Linus Torvalds authored
      cac7f242
    • Linus Torvalds's avatar
      Merge tag 'armsoc-for-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 88e23761
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "Another week, another small batch of fixes.
      
        Most of these make zynq, socfpga and sunxi platforms work a bit
        better:
      
         - due to new requirements for regulators, DWMMC on socfpga broke past
           v3.17
         - SMP spinup fix for socfpga
         - a few DT fixes for zynq
         - another option (FIXED_REGULATOR) for sunxi is needed that used to
           be selected by other options but no longer is.
         - a couple of small DT fixes for at91
         - ...and a couple for i.MX"
      
      * tag 'armsoc-for-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: dts: imx28-evk: Let i2c0 run at 100kHz
        ARM: i.MX6: Fix "emi" clock name typo
        ARM: multi_v7_defconfig: enable CONFIG_MMC_DW_ROCKCHIP
        ARM: sunxi_defconfig: enable CONFIG_REGULATOR_FIXED_VOLTAGE
        ARM: dts: socfpga: Add a 3.3V fixed regulator node
        ARM: dts: socfpga: Fix SD card detect
        ARM: dts: socfpga: rename gpio nodes
        ARM: at91/dt: sam9263: fix PLLB frequencies
        power: reset: at91-reset: fix power down register
        MAINTAINERS: add atmel ssc driver maintainer entry
        arm: socfpga: fix fetching cpu1start_addr for SMP
        ARM: zynq: DT: trivial: Fix mc node
        ARM: zynq: DT: Add cadence watchdog node
        ARM: zynq: DT: Add missing reference for memory-controller
        ARM: zynq: DT: Add missing reference for ADC
        ARM: zynq: DT: Add missing address for L2 pl310
        ARM: zynq: DT: Remove 222 MHz OPP
        ARM: zynq: DT: Fix GEM register area size
      88e23761
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · d1e14f1d
      Linus Torvalds authored
      Pull vfs updates from Al Viro:
       "overlayfs merge + leak fix for d_splice_alias() failure exits"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        overlayfs: embed middle into overlay_readdir_data
        overlayfs: embed root into overlay_readdir_data
        overlayfs: make ovl_cache_entry->name an array instead of pointer
        overlayfs: don't hold ->i_mutex over opening the real directory
        fix inode leaks on d_splice_alias() failure exits
        fs: limit filesystem stacking depth
        overlay: overlay filesystem documentation
        overlayfs: implement show_options
        overlayfs: add statfs support
        overlay filesystem
        shmem: support RENAME_WHITEOUT
        ext4: support RENAME_WHITEOUT
        vfs: add RENAME_WHITEOUT
        vfs: add whiteout support
        vfs: export check_sticky()
        vfs: introduce clone_private_mount()
        vfs: export __inode_permission() to modules
        vfs: export do_splice_direct() to modules
        vfs: add i_op->dentry_open()
      d1e14f1d
    • Olof Johansson's avatar
      Merge tag 'imx-fixes-3.18' of... · efc176a8
      Olof Johansson authored
      Merge tag 'imx-fixes-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into fixes
      
      Merge "ARM: imx: fixes for 3.18" from Shawn Guo:
      
      The i.MX fixes for 3.18:
       - Revert one patch which increases I2C bus frequency on imx28-evk
       - Fix a typo on imx6q EIM clock name
      
      * tag 'imx-fixes-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
        ARM: dts: imx28-evk: Let i2c0 run at 100kHz
        ARM: i.MX6: Fix "emi" clock name typo
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      efc176a8
  6. 25 Oct, 2014 6 commits
  7. 24 Oct, 2014 3 commits
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 2cc91884
      Linus Torvalds authored
      Pull MIPS fixes from Ralf Baechle:
       "This is the first round of fixes and tying up loose ends for MIPS.
      
         - plenty of fixes for build errors in specific obscure configurations
         - remove redundant code on the Lantiq platform
         - removal of a useless SEAD I2C driver that was causing a build issue
         - fix an earlier TLB exeption handler fix to also work on Octeon.
         - fix ISA level dependencies in FPU emulator's instruction decoding.
         - don't hardcode kernel command line in Octeon software emulator.
         - fix an earlier fix for the Loondson 2 clock setting"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: SEAD3: Fix I2C device registration.
        MIPS: SEAD3: Nuke PIC32 I2C driver.
        MIPS: ftrace: Fix a microMIPS build problem
        MIPS: MSP71xx: Fix build error
        MIPS: Malta: Do not build the malta-amon.c file if CMP is not enabled
        MIPS: Prevent compiler warning from cop2_{save,restore}
        MIPS: Kconfig: Add missing MIPS_CPS dependencies to PM and cpuidle
        MIPS: idle: Remove leftover __pastwait symbol and its references
        MIPS: Sibyte: Include the swarm subdir to the sb1250 LittleSur builds
        MIPS: ptrace.h: Add a missing include
        MIPS: ath79: Fix compilation error when CONFIG_PCI is disabled
        MIPS: MSP71xx: Remove compilation error when CONFIG_MIPS_MT is present
        MIPS: Octeon: Remove special case for simulator command line.
        MIPS: tlbex: Properly fix HUGE TLB Refill exception handler
        MIPS: loongson2_cpufreq: Fix CPU clock rate setting mismerge
        pci: pci-lantiq: remove duplicate check on resource
        MIPS: Lasat: Add missing CONFIG_PROC_FS dependency to PICVUE_PROC
        MIPS: cp1emu: Fix ISA restrictions for cop1x_op instructions
      2cc91884
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · cdc63a05
      Linus Torvalds authored
      Pull arm64 fixes from Catalin Marinas:
      
       - enable 48-bit VA space now that KVM has been fixed, together with a
         couple of fixes for pgd allocation alignment and initial memblock
         current_limit.  There is still a dependency on !ARM_SMMU which needs
         to be updated as it uses the page table manipulation macros of the
         host kernel
       - eBPF fixes following changes/conflicts during the merging window
       - Compat types affecting compat_elf_prpsinfo
       - Compilation error on UP builds
       - ASLR fix when /proc/sys/kernel/randomize_va_space == 0
       - DT definitions for CLCD support on ARMv8 model platform
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: Fix memblock current_limit with 64K pages and 48-bit VA
        arm64: ASLR: Don't randomise text when randomise_va_space == 0
        arm64: vexpress: Add CLCD support to the ARMv8 model platform
        arm64: Fix compilation error on UP builds
        Documentation/arm64/memory.txt: fix typo
        net: bpf: arm64: minor fix of type in jited
        arm64: bpf: add 'load 64-bit immediate' instruction
        arm64: bpf: add 'shift by register' instructions
        net: bpf: arm64: address randomize and write protect JIT code
        arm64: mm: Correct fixmap pagetable types
        arm64: compat: fix compat types affecting struct compat_elf_prpsinfo
        arm64: Align less than PAGE_SIZE pgds naturally
        arm64: Allow 48-bits VA space without ARM_SMMU
      cdc63a05
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · 83da00fb
      Linus Torvalds authored
      Pull two sparc fixes from David Miller:
      
       1) Fix boots with gcc-4.9 compiled sparc64 kernels.
      
       2) Add missing __get_user_pages_fast() on sparc64 to fix hangs on
          futexes used in transparent hugepage areas.
      
          It's really idiotic to have a weak symbolled fallback that just
          returns zero, and causes this kind of bug.  There should be no
          backup implementation and the link should fail if the architecture
          fails to provide __get_user_pages_fast() and supports transparent
          hugepages.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        sparc64: Implement __get_user_pages_fast().
        sparc64: Fix register corruption in top-most kernel stack frame during boot.
      83da00fb