1. 22 1月, 2015 1 次提交
  2. 20 1月, 2015 4 次提交
    • R
      module: fix race in kallsyms resolution during module load success. · c7496379
      Rusty Russell 提交于
      The kallsyms routines (module_symbol_name, lookup_module_* etc) disable
      preemption to walk the modules rather than taking the module_mutex:
      this is because they are used for symbol resolution during oopses.
      
      This works because there are synchronize_sched() and synchronize_rcu()
      in the unload and failure paths.  However, there's one case which doesn't
      have that: the normal case where module loading succeeds, and we free
      the init section.
      
      We don't want a synchronize_rcu() there, because it would slow down
      module loading: this bug was introduced in 2009 to speed module
      loading in the first place.
      
      Thus, we want to do the free in an RCU callback.  We do this in the
      simplest possible way by allocating a new rcu_head: if we put it in
      the module structure we'd have to worry about that getting freed.
      Reported-by: NRui Xiang <rui.xiang@huawei.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      c7496379
    • R
      module: remove mod arg from module_free, rename module_memfree(). · be1f221c
      Rusty Russell 提交于
      Nothing needs the module pointer any more, and the next patch will
      call it from RCU, where the module itself might no longer exist.
      Removing the arg is the safest approach.
      
      This just codifies the use of the module_alloc/module_free pattern
      which ftrace and bpf use.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Acked-by: NAlexei Starovoitov <ast@kernel.org>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Jesper Nilsson <jesper.nilsson@axis.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Ley Foon Tan <lftan@altera.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Chris Metcalf <cmetcalf@ezchip.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: x86@kernel.org
      Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
      Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Cc: linux-cris-kernel@axis.com
      Cc: linux-kernel@vger.kernel.org
      Cc: linux-mips@linux-mips.org
      Cc: nios2-dev@lists.rocketboards.org
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: sparclinux@vger.kernel.org
      Cc: netdev@vger.kernel.org
      be1f221c
    • R
      module_arch_freeing_init(): new hook for archs before module->module_init freed. · d453cded
      Rusty Russell 提交于
      Archs have been abusing module_free() to clean up their arch-specific
      allocations.  Since module_free() is also (ab)used by BPF and trace code,
      let's keep it to simple allocations, and provide a hook called before
      that.
      
      This means that avr32, ia64, parisc and s390 no longer need to implement
      their own module_free() at all.  avr32 doesn't need module_finalize()
      either.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Cc: Chris Metcalf <cmetcalf@ezchip.com>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Fenghua Yu <fenghua.yu@intel.com>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: linux-kernel@vger.kernel.org
      Cc: linux-ia64@vger.kernel.org
      Cc: linux-parisc@vger.kernel.org
      Cc: linux-s390@vger.kernel.org
      d453cded
    • R
      param: fix uninitialized read with CONFIG_DEBUG_LOCK_ALLOC · c772be52
      Rusty Russell 提交于
      ignore_lockdep is uninitialized, and sysfs_attr_init() doesn't initialize
      it, so memset to 0.
      Reported-by: NHuang Ying <ying.huang@intel.com>
      Cc: Eric W. Biederman <ebiederm@xmission.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      c772be52
  3. 23 12月, 2014 3 次提交
  4. 21 12月, 2014 8 次提交
    • L
      Linux 3.19-rc1 · 97bf6af1
      Linus Torvalds 提交于
      97bf6af1
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/borntraeger/linux · 60815cf2
      Linus Torvalds 提交于
      Pull ACCESS_ONCE cleanup preparation from Christian Borntraeger:
       "kernel: Provide READ_ONCE and ASSIGN_ONCE
      
        As discussed on LKML http://marc.info/?i=54611D86.4040306%40de.ibm.com
        ACCESS_ONCE might fail with specific compilers for non-scalar
        accesses.
      
        Here is a set of patches to tackle that problem.
      
        The first patch introduce READ_ONCE and ASSIGN_ONCE.  If the data
        structure is larger than the machine word size memcpy is used and a
        warning is emitted.  The next patches fix up several in-tree users of
        ACCESS_ONCE on non-scalar types.
      
        This does not yet contain a patch that forces ACCESS_ONCE to work only
        on scalar types.  This is targetted for the next merge window as Linux
        next already contains new offenders regarding ACCESS_ONCE vs.
        non-scalar types"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/borntraeger/linux:
        s390/kvm: REPLACE barrier fixup with READ_ONCE
        arm/spinlock: Replace ACCESS_ONCE with READ_ONCE
        arm64/spinlock: Replace ACCESS_ONCE READ_ONCE
        mips/gup: Replace ACCESS_ONCE with READ_ONCE
        x86/gup: Replace ACCESS_ONCE with READ_ONCE
        x86/spinlock: Replace ACCESS_ONCE with READ_ONCE
        mm: replace ACCESS_ONCE with READ_ONCE or barriers
        kernel: Provide READ_ONCE and ASSIGN_ONCE
      60815cf2
    • L
      Merge tag 'clk-for-linus-3.19' of git://git.linaro.org/people/mike.turquette/linux · bfc7249c
      Linus Torvalds 提交于
      Pull clk framework updates from Mike Turquette:
       "This is much later than usual due to several last minute bugs that had
        to be addressed.  As usual the majority of changes are new drivers and
        modifications to existing drivers.  The core recieved many fixes along
        with the groundwork for several large changes coming in the future
        which will better parition clock providers from clock consumers"
      
      * tag 'clk-for-linus-3.19' of git://git.linaro.org/people/mike.turquette/linux: (86 commits)
        clk: samsung: Fix Exynos 5420 pinctrl setup and clock disable failure due to domain being gated
        ARM: OMAP3: clock: fix boot breakage in legacy mode
        ARM: OMAP2+: clock: fix DPLL code to use new determine rate APIs
        clk: Really fix deadlock with mmap_sem
        clk: mmp: fix sparse non static symbol warning
        clk: Change clk_ops->determine_rate to return a clk_hw as the best parent
        clk: change clk_debugfs_add_file to take a struct clk_hw
        clk: Don't expose __clk_get_accuracy
        clk: Don't try to use a struct clk* after it could have been freed
        clk: Remove unused function __clk_get_prepare_count
        clk: samsung: Fix double add of syscore ops after driver rebind
        clk: samsung: exynos4: set parent of sclk_hdmiphy to hdmi
        clk: samsung: exynos4415: Fix build with PM_SLEEP disabled
        clk: samsung: remove unnecessary inclusion of header files from clk.h
        clk: samsung: remove unnecessary CONFIG_OF from clk.c
        clk: samsung: Spelling s/bwtween/between/
        clk: rockchip: Add support for the mmc clock phases using the framework
        clk: rockchip: add bindings for the mmc clocks
        clk: rockchip: rk3288 export i2s0_clkout for use in DT
        clk: rockchip: use clock ID for DMC (memory controller) on rk3288
        ...
      bfc7249c
    • L
      Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · a4e1328a
      Linus Torvalds 提交于
      Pull more i2c updates from Wolfram Sang:
       "Included are two bugfixes needing some bigger refactoring (sh_mobile:
        deferred probe with DMA, mv64xxx: fix offload support) and one
        deprecated driver removal I thought would go in via ppc but I
        misunderstood.  It has a proper ack from BenH"
      
      * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: sh_mobile: fix uninitialized var when debug is enabled
        macintosh: therm_pm72: delete deprecated driver
        i2c: sh_mobile: I2C_SH_MOBILE should depend on HAS_DMA
        i2c: sh_mobile: rework deferred probing
        i2c: sh_mobile: refactor DMA setup
        i2c: mv64xxx: rework offload support to fix several problems
        i2c: mv64xxx: use BIT() macro for register value definitions
      a4e1328a
    • L
      Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · cdce6ac2
      Linus Torvalds 提交于
      Pull SCSI update from James Bottomley:
       "This is a much shorter set of patches that were on the go but didn't
        make it in to the early pull request for the merge window.  It's
        really a set of bug fixes plus some final cleanup work on the new tag
        queue API"
      
      * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        storvsc: ring buffer failures may result in I/O freeze
        ipr: set scsi_level correctly for disk arrays
        ipr: add support for async scanning to speed up boot
        scsi_debug: fix missing "break;" in SDEBUG_UA_CAPACITY_CHANGED case
        scsi_debug: take sdebug_host_list_lock when changing capacity
        scsi_debug: improve driver description in Kconfig
        scsi_debug: fix compare and write errors
        qla2xxx: fix race in handling rport deletion during recovery causes panic
        scsi: blacklist RSOC for Microsoft iSCSI target devices
        scsi: fix random memory corruption with scsi-mq + T10 PI
        Revert "[SCSI] mpt3sas: Remove phys on topology change"
        Revert "[SCSI] mpt2sas: Remove phys on topology change."
        esas2r: Correct typos of "validate" in a comment
        fc: FCP_PTA_SIMPLE is 0
        ibmvfc: remove unused tag variable
        scsi: remove MSG_*_TAG defines
        scsi: remove scsi_set_tag_type
        scsi: remove scsi_get_tag_type
        scsi: never drop to untagged mode during queue ramp down
        scsi: remove ->change_queue_type method
      cdce6ac2
    • L
      Merge tag 'pm-config-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 5d6a5468
      Linus Torvalds 提交于
      Pull CONFIG_PM_RUNTIME elimination from Rafael Wysocki:
       "This removes the last few uses of CONFIG_PM_RUNTIME introduced
        recently and makes that config option finally go away.
      
        CONFIG_PM will be available directly from the menu now and also it
        will be selected automatically if CONFIG_SUSPEND or CONFIG_HIBERNATION
        is set"
      
      * tag 'pm-config-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM: Eliminate CONFIG_PM_RUNTIME
        tty: 8250_omap: Replace CONFIG_PM_RUNTIME with CONFIG_PM
        sound: sst-haswell-pcm: Replace CONFIG_PM_RUNTIME with CONFIG_PM
        spi: Replace CONFIG_PM_RUNTIME with CONFIG_PM
      5d6a5468
    • L
      Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 787140ad
      Linus Torvalds 提交于
      Pull misc kbuild changes from Michal Marek:
       "There are only a few things in the misc branch:
      
         - Fix for bugon.cocci semantic patch
         - Kdevelop4 files are .gitignored
         - Put make binrpm-pkg on diet"
      
      * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        scripts/package: binrpm-pkg do not create source and devel package
        .gitignore: Add Kdevelop4 project files
        bugon.cocci: fix Options at the macro
      787140ad
    • L
      Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · d08372ca
      Linus Torvalds 提交于
      Pull kbuild updates from Michal Marek:
       "Here are the kbuild changes for v3.19-rc1:
      
         - Cleanups and deduplication in the main Makefile and
           scripts/Makefile.*
         - Sort the output of *config targets in make help
         - Old <linux/version.h> is always removed to avoid a surprise during
           bisecting
         - Warning fix in kconfig"
      
      * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kbuild: remove redundant -rR flag of hdr-inst
        kbuild: Fix make help-<board series> on powerpc
        kbuild: Automatically remove stale <linux/version.h> file
        kconfig: Fix warning "‘jump’ may be used uninitialized"
        Makefile: sort list of defconfig targets in make help output
        kbuild: Remove duplicate $(cmd) definition in Makefile.clean
        kbuild: collect shorthands into scripts/Kbuild.include
      d08372ca
  5. 20 12月, 2014 24 次提交
    • W
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · ecb5ec04
      Linus Torvalds 提交于
      Pull vfs pile #3 from Al Viro:
       "Assorted fixes and patches from the last cycle"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        [regression] chunk lost from bd9b51
        vfs: make mounts and mountstats honor root dir like mountinfo does
        vfs: cleanup show_mountinfo
        init: fix read-write root mount
        unfuck binfmt_misc.c (broken by commit e6084d4a)
        vm_area_operations: kill ->migrate()
        new helper: iter_is_iovec()
        move_extent_per_page(): get rid of unused w_flags
        lustre: get rid of playing with ->fs
        btrfs: filp_open() returns ERR_PTR() on failure, not NULL...
      ecb5ec04
    • L
      Merge tag 'ecryptfs-3.19-rc1-fixes' of... · 298647e3
      Linus Torvalds 提交于
      Merge tag 'ecryptfs-3.19-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs
      
      Pull eCryptfs fixes from Tyler Hicks:
       "Fixes for filename decryption and encrypted view plus a cleanup
      
         - The filename decryption routines were, at times, writing a zero
           byte one character past the end of the filename buffer
      
         - The encrypted view feature attempted, and failed, to roll its own
           form of enforcing a read-only mount instead of letting the VFS
           enforce it"
      
      * tag 'ecryptfs-3.19-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs:
        eCryptfs: Remove buggy and unnecessary write in file name decode routine
        eCryptfs: Remove unnecessary casts when parsing packet lengths
        eCryptfs: Force RO mount when encrypted view is enabled
      298647e3
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 5c68eac6
      Linus Torvalds 提交于
      Pull more btrfs updates from Chris Mason:
       "This is part two of our merge window patches.
      
        These are all from Filipe, and fix some really hard to find races that
        can cause corruptions.  Most of them involved block group removal
        (balance) or discard"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: remove non-sense btrfs_error_discard_extent() function
        Btrfs: fix fs corruption on transaction abort if device supports discard
        Btrfs: always clear a block group node when removing it from the tree
        Btrfs: ensure deletion from pinned_chunks list is protected
      5c68eac6
    • L
      Merge tag 'sound-fix-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 20e471fd
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "Here are a few fixes that have landed after the previous pull request.
        All are driver specific fixes including:
      
         - error/int value fixes in OXFW,
         - Intel Skylake HD-audio HDMI codec support,
         - Additional HD-audio Realtek codecs and AD1986A codec fixes/quirks,
         - a few more DSD support and a quirk for Arcam rPAC in usb-audio,
         - a typo fix for Scarlett 6i6,
         - fixes for new ASIHPI firmware,
         - ASoC Exynos7 cleanups,
         - Intel ACPI support, and
         - a fix for PCM512 register cache sync"
      
      * tag 'sound-fix-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (24 commits)
        ALSA: usb-audio: extend KEF X300A FU 10 tweak to Arcam rPAC
        ALSA: hda/realtek - New codec support for ALC298
        ALSA: asihpi: update to HPI version 4.14
        ALSA: asihpi: increase tuner pad cache size
        ALSA: asihpi: relax firmware version check
        ALSA: usb-audio: Fix Scarlett 6i6 initialization typo
        ALSA: hda - Add quirk for Packard Bell EasyNote MX65
        ALSA: usb-audio: add native DSD support for Matrix Audio DACs
        ALSA: hda/realtek - New codec support for ALC256
        ALSA: hda/realtek - Add new Dell desktop for ALC3234 headset mode
        ASoC: Intel: fix possible acpi enumeration panic
        ALSA: hda/hdmi - apply Haswell fix-ups to Skylake display codec
        ASoC: Intel: fix return value check in sst_acpi_probe()
        ALSA: hda - Make add_stereo_mix_input flag tristate
        ALSA: hda - Create capture source ctls when stereo mix input is added
        ALSA: hda - Fix typos in snd_hda_get_int_hint() kerneldoc comments
        ALSA: hda - add codec ID for Skylake display audio codec
        ALSA: oxfw: some signedness bugs
        ALSA: oxfw: fix detect_loud_models() return value
        ASoC: rt5677: add REGMAP_I2C and REGMAP_IRQ dependency
        ...
      20e471fd
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · ed55635e
      Linus Torvalds 提交于
      Pull SCSI target fixes from Nicholas Bellinger:
       "The highlights this merge window include:
      
         - Allow target fabric drivers to function as built-in.  (Roland)
         - Fix tcm_loop multi-TPG endpoint nexus bug.  (Hannes)
         - Move per device config_item_type into se_subsystem_api, allowing
           configfs attributes to be defined at module_init time.  (Jerome +
           nab)
         - Convert existing IBLOCK/FILEIO/RAMDISK/PSCSI/TCMU drivers to use
           external configfs attributes.  (nab)
         - A number of iser-target fixes related to active session + network
           portal shutdown stability during extended stress testing.  (Sagi +
           Slava)
         - Dynamic allocation of T10-PI contexts for iser-target, fixing a
           potentially bogus iscsi_np->tpg_np pointer reference in >= v3.14
           code.  (Sagi)
         - iser-target performance + scalability improvements.  (Sagi)
         - Fixes for SPC-4 Persistent Reservation AllRegistrants spec
           compliance.  (Ilias + James + nab)
         - Avoid potential short kern_sendmsg() in iscsi-target for now until
           Al's conversion to use msghdr iteration is merged post -rc1.
           (Viro)
      
        Also, Sagi has requested a number of iser-target patches (9) that
        address stability issues he's encountered during extended stress
        testing be considered for v3.10.y + v3.14.y code.  Given the amount of
        LOC involved, it will certainly require extra backporting effort.
      
        Apologies in advance to Greg-KH & Co on this.  Sagi and I will be
        working post-merge to ensure they each get applied correctly"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (53 commits)
        target: Allow AllRegistrants to re-RESERVE existing reservation
        uapi/linux/target_core_user.h: fix headers_install.sh badness
        iscsi-target: Fail connection on short sendmsg writes
        iscsi-target: nullify session in failed login sequence
        target: Avoid dropping AllRegistrants reservation during unregister
        target: Fix R_HOLDER bit usage for AllRegistrants
        iscsi-target: Drop left-over bogus iscsi_np->tpg_np
        iser-target: Fix wc->wr_id cast warning
        iser-target: Remove code duplication
        iser-target: Adjust log levels and prettify some prints
        iser-target: Use debug_level parameter to control logging level
        iser-target: Fix logout sequence
        iser-target: Don't wait for session commands from completion context
        iser-target: Reduce CQ lock contention by batch polling
        iser-target: Introduce isert_poll_budget
        iser-target: Remove an atomic operation from the IO path
        iser-target: Remove redundant call to isert_conn_terminate
        iser-target: Use single CQ for TX and RX
        iser-target: Centralize completion elements to a context
        iser-target: Cast wr_id with uintptr_t instead of unsinged long
        ...
      ed55635e
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel · 5be95b7e
      Linus Torvalds 提交于
      Pull arch/hexagon updates from Richard Kuo:
       "Build cleanup and a few misc fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
        Hexagon: fix signal delivery for debug traps
        Hexagon: set ARCH_DMA_MINALIGN
        Hexagon: fix alignment of init_task in RW_DATA_SECTION
        hexagon: Fix build failures in linux-next
      5be95b7e
    • L
      Merge tag 'cris-changes-for-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris · 971d9e07
      Linus Torvalds 提交于
      Pull arch/chris updates from Jesper Nilsson:
       "Mostly cleanup and build fixes for CRISv32 allmodconfig
      
        God Jul och Gott Nytt år!"
      
      * tag 'cris-changes-for-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris:
        CRISv32: Remove last remnants of ETRAX_SPI_MMC_BOARD
        CRISv32: ETRAXFS: Fix recursive spinlock
        CRISv32: Select MTDRAM for axisflashmap
        CRISv32: Implement early console
        CRIS: Use KALLSYMs if available in call stack dump
        CRISv32: Fix declaration mismatch
        CRISv32: Rewrite of synchronous serial port driver
        CRIS: Update init memory handling
        CRISv32: Better handling of watchdog bite
        CRIS: Export missing function symbols
        CRIS: Export ioremap_nocache
        CRIS: Fix headers_install
        CRISv32: Add missing include for mm.h
        CRISv32: Drop obsolete file for SPI driver
      971d9e07
    • L
      Merge tag 'please-pull-misc-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · acab1f88
      Linus Torvalds 提交于
      Pull ia64 __get_cpu_var removal from Tony Luck:
       "__get_cpu_var removed from rest of tree, drop reference from comments
        in arch/ia64"
      
      * tag 'please-pull-misc-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        [IA64] Update comment that references __get_cpu_var
      acab1f88
    • J
      CRISv32: Remove last remnants of ETRAX_SPI_MMC_BOARD · 8bcabff0
      Jesper Nilsson 提交于
      There are no users of this symbol left.
      Reported-by: NPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      8bcabff0
    • J
      CRISv32: ETRAXFS: Fix recursive spinlock · a3199ad9
      Jesper Nilsson 提交于
      Move pinmux alloc/dealloc code into functions that don't take
      the spinlock so we can use from code that has the spinlock already.
      
      CRISv32 has no working SMP, so spinlocks becomes a NOP,
      so deadlock was never seen.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      a3199ad9
    • J
      CRISv32: Select MTDRAM for axisflashmap · 9f1ad51b
      Jesper Nilsson 提交于
      Fixes compile error on allmodconfig.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      9f1ad51b
    • J
      CRISv32: Implement early console · 4729d773
      Jesper Nilsson 提交于
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      4729d773
    • J
      CRIS: Use KALLSYMs if available in call stack dump · 421d0852
      Jesper Nilsson 提交于
      Also, print kernel version on oops.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      421d0852
    • J
      CRISv32: Fix declaration mismatch · ca36c1fa
      Jesper Nilsson 提交于
      Drop i2c_init from this header, it was declared non-static here,
      but static in the C-file.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      ca36c1fa
    • J
      CRISv32: Rewrite of synchronous serial port driver · 3f10462f
      Jesper Nilsson 提交于
      Make driver possible to load as a module and try to handle
      locking better.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      3f10462f
    • J
      CRIS: Update init memory handling · 80d6170a
      Jesper Nilsson 提交于
      - Add free_initrd_mem as found by Guenter Roeck <linux@roeck-us.net>
      - Add free_init_pages
      - Export empty_zero_page symbol
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      80d6170a
    • J
      CRISv32: Better handling of watchdog bite · d6517c4c
      Jesper Nilsson 提交于
      Don't enter watchdog handling if we're already in watchdog handling.
      
      Also some minor formatting tweaks.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      d6517c4c
    • J
      CRIS: Export missing function symbols · dbd3c7e1
      Jesper Nilsson 提交于
      strcmp was lost when all other string functions were removed,
      but we still have an optimized version for this on CRISv32,
      so any driver built as a module would not have access to this symbol.
      
      In a similar manner, we had optimized versions of
      csum_partial_copy_from_user and __do_clear_user
      but no exported symbols for them, breaking bunch of other drivers
      when built as a module.
      
      At the same time, move EXPORT_SYMBOL(__copy_user) and
      EXPORT_SYMBOL(__copy_user_zeroing) C-files so it's
      located together with the function definition.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      dbd3c7e1
    • J
      CRIS: Export ioremap_nocache · 82e6df1e
      Jesper Nilsson 提交于
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      82e6df1e
    • S
      CRIS: Fix headers_install · 6eb64b8c
      Sam Ravnborg 提交于
      Fix headers_install by adjusting the path to arch files.
      And delete unused Kbuild file.
      Drop special handling of cris in the headers.sh script
      as a nice side-effect.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      6eb64b8c
    • J
      CRISv32: Add missing include for mm.h · eeda0084
      Jesper Nilsson 提交于
      Fixes the following compile error.
      
      arch/cris/arch-v32/kernel/time.c: In function 'reset_watchdog':
      arch/cris/arch-v32/kernel/time.c:121:2:
              error: implicit declaration of function 'global_page_state'
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      eeda0084
    • J
      CRISv32: Drop obsolete file for SPI driver · f89412ac
      Jesper Nilsson 提交于
      File was already deleted.
      Signed-off-by: NJesper Nilsson <jesper.nilsson@axis.com>
      f89412ac
    • L
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e589c9e1
      Linus Torvalds 提交于
      Pull x86 apic updates from Thomas Gleixner:
       "After stopping the full x86/apic branch, I took some time to go
        through the first block of patches again, which are mostly cleanups
        and preparatory work for the irqdomain conversion and ioapic hotplug
        support.
      
        Unfortunaly one of the real problematic commits was right at the
        beginning, so I rebased this portion of the pending patches without
        the offenders.
      
        It would be great to get this into 3.19.  That makes reworking the
        problematic parts simpler.  The usual tip testing did not unearth any
        issues and it is fully bisectible now.
      
        I'm pretty confident that this wont affect the calmness of the xmas
        season.
      
        Changes:
         - Split the convoluted io_apic.c code into domain specific parts
           (vector, ioapic, msi, htirq)
         - Introduce proper helper functions to retrieve irq specific data
           instead of open coded dereferencing of pointers
         - Preparatory work for ioapic hotplug and irqdomain conversion
         - Removal of the non functional pci-ioapic driver
         - Removal of unused irq entry stubs
         - Make native_smp_prepare_cpus() preemtible to avoid GFP_ATOMIC
           allocations for everything which is called from there.
         - Small cleanups and fixes"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (36 commits)
        iommu/amd: Use helpers to access irq_cfg data structure associated with IRQ
        iommu/vt-d: Use helpers to access irq_cfg data structure associated with IRQ
        x86: irq_remapping: Use helpers to access irq_cfg data structure associated with IRQ
        x86, irq: Use helpers to access irq_cfg data structure associated with IRQ
        x86, irq: Make MSI and HT_IRQ indepenent of X86_IO_APIC
        x86, irq: Move IRQ initialization routines from io_apic.c into vector.c
        x86, irq: Move IOAPIC related declarations from hw_irq.h into io_apic.h
        x86, irq: Move HT IRQ related code from io_apic.c into htirq.c
        x86, irq: Move PCI MSI related code from io_apic.c into msi.c
        x86, irq: Replace printk(KERN_LVL) with pr_lvl() utilities
        x86, irq: Make UP version of irq_complete_move() an inline stub
        x86, irq: Move local APIC related code from io_apic.c into vector.c
        x86, irq: Introduce helpers to access struct irq_cfg
        x86, irq: Protect __clear_irq_vector() with vector_lock
        x86, irq: Rename local APIC related functions in io_apic.c as apic_xxx()
        x86, irq: Refine hw_irq.h to prepare for irqdomain support
        x86, irq: Convert irq_2_pin list to generic list
        x86, irq: Kill useless parameter 'irq_attr' of IO_APIC_get_PCI_irq_vector()
        x86, irq, acpi: Get rid of special handling of GSI for ACPI SCI
        x86, irq: Introduce helper to check whether an IOAPIC has been registered
        ...
      e589c9e1