27 Apr, 2015

1 commit

  • Commit d2c5e30c9a1420902262aa923794d2ae4e0bc391
    ("[PATCH] zoned vm counters: conversion of nr_bounce to per zone counter")
    convert statistic of nr_bounce to per zone and one global value in vm_stat,
    but it call inc_|dec_zone_page_state on different pages, then different
    zones, and cause us to get unexpected value of NR_BOUNCE.

    Below is the result on my machine:
    Mar 2 09:26:08 udknight kernel: [144766.778265] Mem-Info:
    Mar 2 09:26:08 udknight kernel: [144766.778266] DMA per-cpu:
    Mar 2 09:26:08 udknight kernel: [144766.778268] CPU 0: hi: 0, btch: 1 usd: 0
    Mar 2 09:26:08 udknight kernel: [144766.778269] CPU 1: hi: 0, btch: 1 usd: 0
    Mar 2 09:26:08 udknight kernel: [144766.778270] Normal per-cpu:
    Mar 2 09:26:08 udknight kernel: [144766.778271] CPU 0: hi: 186, btch: 31 usd: 0
    Mar 2 09:26:08 udknight kernel: [144766.778273] CPU 1: hi: 186, btch: 31 usd: 0
    Mar 2 09:26:08 udknight kernel: [144766.778274] HighMem per-cpu:
    Mar 2 09:26:08 udknight kernel: [144766.778275] CPU 0: hi: 186, btch: 31 usd: 0
    Mar 2 09:26:08 udknight kernel: [144766.778276] CPU 1: hi: 186, btch: 31 usd: 0
    Mar 2 09:26:08 udknight kernel: [144766.778279] active_anon:46926 inactive_anon:287406 isolated_anon:0
    Mar 2 09:26:08 udknight kernel: [144766.778279] active_file:105085 inactive_file:139432 isolated_file:0
    Mar 2 09:26:08 udknight kernel: [144766.778279] unevictable:653 dirty:0 writeback:0 unstable:0
    Mar 2 09:26:08 udknight kernel: [144766.778279] free:178957 slab_reclaimable:6419 slab_unreclaimable:9966
    Mar 2 09:26:08 udknight kernel: [144766.778279] mapped:4426 shmem:305277 pagetables:784 bounce:0
    Mar 2 09:26:08 udknight kernel: [144766.778279] free_cma:0
    Mar 2 09:26:08 udknight kernel: [144766.778286] DMA free:3324kB min:68kB low:84kB high:100kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15976kB managed:15900kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
    Mar 2 09:26:08 udknight kernel: [144766.778287] lowmem_reserve[]: 0 822 3754 3754
    Mar 2 09:26:08 udknight kernel: [144766.778293] Normal free:26828kB min:3632kB low:4540kB high:5448kB active_anon:4872kB inactive_anon:68kB active_file:1796kB inactive_file:1796kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:892920kB managed:842560kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:4144kB slab_reclaimable:25676kB slab_unreclaimable:39864kB kernel_stack:1944kB pagetables:3136kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:2412612 all_unreclaimable? yes
    Mar 2 09:26:08 udknight kernel: [144766.778294] lowmem_reserve[]: 0 0 23451 23451
    Mar 2 09:26:08 udknight kernel: [144766.778299] HighMem free:685676kB min:512kB low:3748kB high:6984kB active_anon:182832kB inactive_anon:1149556kB active_file:418544kB inactive_file:555932kB unevictable:2612kB isolated(anon):0kB isolated(file):0kB present:3001732kB managed:3001732kB mlocked:0kB dirty:0kB writeback:0kB mapped:17704kB shmem:1216964kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:75771152kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
    Mar 2 09:26:08 udknight kernel: [144766.778300] lowmem_reserve[]: 0 0 0 0

    You can see bounce:75771152kB for HighMem, but bounce:0 for lowmem and global.

    This patch fix it.

    Signed-off-by: Wang YanQing
    Signed-off-by: Jens Axboe

    Wang YanQing
     

24 Apr, 2015

5 commits

  • Our issue is descripted in below call path:
    ->elevator_init
    ->elevator_init_fn
    ->{cfq,deadline,noop}_init_queue
    ->elevator_alloc
    ->kzalloc_node
    fail to call kzalloc_node and then put module in elevator_alloc;
    fail to call elevator_init_fn and then put module again in elevator_init.

    Remove elevator_put invoking in error path of elevator_alloc to avoid
    double release issue.

    Signed-off-by: Chao Yu
    Reviewed-by: Jeff Moyer
    Signed-off-by: Jens Axboe

    Chao Yu
     
  • mm/page-writeback.c has several places where 1 is added to the divisor
    to prevent division by zero exceptions; however, if the original
    divisor is equivalent to -1, adding 1 leads to division by zero.

    There are three places where +1 is used for this purpose - one in
    pos_ratio_polynom() and two in bdi_position_ratio(). The second one
    in bdi_position_ratio() actually triggered div-by-zero oops on a
    machine running a 3.10 kernel. The divisor is

    x_intercept - bdi_setpoint + 1 == span + 1

    span is confirmed to be (u32)-1. It isn't clear how it ended up that
    but it could be from write bandwidth calculation underflow fixed by
    c72efb658f7c ("writeback: fix possible underflow in write bandwidth
    calculation").

    At any rate, +1 isn't a proper protection against div-by-zero. This
    patch converts all +1 protections to |1. Note that
    bdi_update_dirty_ratelimit() was already using |1 before this patch.

    Signed-off-by: Tejun Heo
    Cc: stable@vger.kernel.org
    Reviewed-by: Jan Kara
    Signed-off-by: Jens Axboe

    Tejun Heo
     
  • hctx->tags has to be set as NULL in case that it is to be unmapped
    no matter if set->tags[hctx->queue_num] is NULL or not in blk_mq_map_swqueue()
    because shared tags can be freed already from another request queue.

    The same situation has to be considered during handling CPU online too.
    Unmapped hw queue can be remapped after CPU topo is changed, so we need
    to allocate tags for the hw queue in blk_mq_map_swqueue(). Then tags
    allocation for hw queue can be removed in hctx cpu online notifier, and it
    is reasonable to do that after mapping is updated.

    Cc:
    Reported-by: Dongsu Park
    Tested-by: Dongsu Park
    Signed-off-by: Ming Lei
    Signed-off-by: Jens Axboe

    Ming Lei
     
  • Firstly during CPU hotplug, even queue is freezed, timeout
    handler still may come and access hctx->tags, which may cause
    use after free, so this patch deactivates timeout handler
    inside CPU hotplug notifier.

    Secondly, tags can be shared by more than one queues, so we
    have to check if the hctx has been unmapped, otherwise
    still use-after-free on tags can be triggered.

    Cc:
    Reported-by: Dongsu Park
    Tested-by: Dongsu Park
    Signed-off-by: Ming Lei
    Signed-off-by: Jens Axboe

    Ming Lei
     
  • Use the namespace's block format for reporting the max transfer length.

    Max unmap count is left as-is since NVMe doesn't provide a max, so the
    value the driver provided the block layer is valid for any format.

    Reported-by: Martin K. Petersen
    Signed-off-by: Keith Busch
    Signed-off-by: Jens Axboe

    Keith Busch
     

18 Apr, 2015

2 commits

  • Pull block core fix from Jens Axboe:
    "A commit in the previous pull request introduce a regression. So far
    only observed on qemu-sparc64, but it's a general bug. Please pull
    this single fix to rectify that, thanks"

    [ And it turns out that it's been seen outside of that qemu-sparc64
    case, and is easy to trigger with small number of CPUs and blk-mq
    enabled by default - Linus ]

    * 'for-linus' of git://git.kernel.dk/linux-block:
    blk-mq: fix iteration of busy bitmap

    Linus Torvalds
     
  • Pull ACPICA updates from Rafael Wysocki:
    "This updates the kernel's ACPICA code to upstream revision 20150410
    and adds a fix for a GPE handling regression introduced during the
    3.19 cycle on top of that.

    Included are two stable-candidate bug fixes (one of them fixing a 3.16
    regression), multiple other fixes and a bunch of cleanups.

    Specifics:

    - Fix for a GPE handling regression on Dell Latitude D600 that caused
    GPE signaling to stop working on that machine, which appears to be
    due to a hardware glitch, but it used to work and it can be made
    work again in a relativly straightforward way (Rafael J Wysocki).

    - Fix for a mutex unlock regression related to the handling of ACPI
    tables introduced during the 3.16 development cycle (Octavian
    Purdila).

    - _REV modification to always return 2 which has been done by all
    versions of Windows since NT and the firmware people started to use
    it to distinguish between OSes in their AML and do some silly and
    wrong things on that basis (Bob Moore).

    - Fixes and cleanups related to the acpi_physicall_address data type
    including one stable-candidate fix for an issue occasionally
    occuring on 64-bit machines running 32-bit kernels where using
    offsets provided by the firmware may lead to address overflows (Lv
    Zheng).

    - External() opcode support infrastructure needed for recompiling
    disassembled ACPI tables in some cases including interpreter
    modification to ignore that opcode (Bob Moore).

    - Support for the "Windows 2015" string in _OSI (Bob Moore).

    - GPE debug interface change to return values read from hardware
    registers (Lv Zheng).

    - Removal of the __DATE__ macro usage in tools (Rasmus Villemoes).

    - Assorted minor fixes and cleanups (Lv Zheng, Rickard Strandqvist,
    Bob Moore)"

    * tag 'acpica-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (32 commits)
    ACPICA: Store GPE register enable masks upfront
    ACPICA: Update version to 20150410.
    ACPICA: Fix a couple issues with the local printf module.
    ACPICA: Disassembler: Some cleanup of the table dump module.
    ACPICA: iASL: Add support for MSDM ACPI table.
    ACPICA: Update for SLIC ACPI table.
    ACPICA: Add "//" before ascii output of buffers.
    ACPICA: Remove unused internal AML opcode.
    ACPICA: Permanently set _REV to the value '2'.
    ACPICA: Add "Windows 2015" string to _OSI support.
    ACPICA: Add infrastructure for External() opcode.
    ACPICA: iASL: Enhancement for constant folding.
    ACPICA: iASL/Disassembler: Add option to assume table contains valid AML.
    ACPICA: Update AML Debugger global variables.
    ACPICA: Update Resource descriptor dump module.
    ACPICA: Fix a sscanf format string.
    ACPICA: Casting changes around acpi_physical_address/acpi_size.
    ACPICA: Resources: Correct conditional compilation definitions.
    ACPICA: Utilities: Correct conditional compilation definitions.
    ACPICA: Tables: Move an iasl specific table function to iasl source file.
    ...

    Linus Torvalds
     

17 Apr, 2015

32 commits

  • Commit 889fa31f00b2 was a bit too eager in reducing the loop count,
    so we ended up missing queues in some configurations. Ensure that
    our division rounds up, so that's not the case.

    Reported-by: Guenter Roeck
    Fixes: 889fa31f00b2 ("blk-mq: reduce unnecessary software queue looping")
    Signed-off-by: Jens Axboe

    Jens Axboe
     
  • Merge third patchbomb from Andrew Morton:

    - various misc things

    - a couple of lib/ optimisations

    - provide DIV_ROUND_CLOSEST_ULL()

    - checkpatch updates

    - rtc tree

    - befs, nilfs2, hfs, hfsplus, fatfs, adfs, affs, bfs

    - ptrace fixes

    - fork() fixes

    - seccomp cleanups

    - more mmap_sem hold time reductions from Davidlohr

    * emailed patches from Andrew Morton : (138 commits)
    proc: show locks in /proc/pid/fdinfo/X
    docs: add missing and new /proc/PID/status file entries, fix typos
    drivers/rtc/rtc-at91rm9200.c: make IO endian agnostic
    Documentation/spi/spidev_test.c: fix warning
    drivers/rtc/rtc-s5m.c: allow usage on device type different than main MFD type
    .gitignore: ignore *.tar
    MAINTAINERS: add Mediatek SoC mailing list
    tomoyo: reduce mmap_sem hold for mm->exe_file
    powerpc/oprofile: reduce mmap_sem hold for exe_file
    oprofile: reduce mmap_sem hold for mm->exe_file
    mips: ip32: add platform data hooks to use DS1685 driver
    lib/Kconfig: fix up HAVE_ARCH_BITREVERSE help text
    x86: switch to using asm-generic for seccomp.h
    sparc: switch to using asm-generic for seccomp.h
    powerpc: switch to using asm-generic for seccomp.h
    parisc: switch to using asm-generic for seccomp.h
    mips: switch to using asm-generic for seccomp.h
    microblaze: use asm-generic for seccomp.h
    arm: use asm-generic for seccomp.h
    seccomp: allow COMPAT sigreturn overrides
    ...

    Linus Torvalds
     
  • Let's show locks which are associated with a file descriptor in
    its fdinfo file.

    Currently we don't have a reliable way to determine who holds a lock. We
    can find some information in /proc/locks, but PID which is reported there
    can be wrong. For example, a process takes a lock, then forks a child and
    dies. In this case /proc/locks contains the parent pid, which can be
    reused by another process.

    $ cat /proc/locks
    ...
    6: FLOCK ADVISORY WRITE 324 00:13:13431 0 EOF
    ...

    $ ps -C rpcbind
    PID TTY TIME CMD
    332 ? 00:00:00 rpcbind

    $ cat /proc/332/fdinfo/4
    pos: 0
    flags: 0100000
    mnt_id: 22
    lock: 1: FLOCK ADVISORY WRITE 324 00:13:13431 0 EOF

    $ ls -l /proc/332/fd/4
    lr-x------ 1 root root 64 Mar 5 14:43 /proc/332/fd/4 -> /run/rpcbind.lock

    $ ls -l /proc/324/fd/
    total 0
    lrwx------ 1 root root 64 Feb 27 14:50 0 -> /dev/pts/0
    lrwx------ 1 root root 64 Feb 27 14:50 1 -> /dev/pts/0
    lrwx------ 1 root root 64 Feb 27 14:49 2 -> /dev/pts/0

    You can see that the process with the 324 pid doesn't hold the lock.

    This information is required for proper dumping and restoring file
    locks.

    Signed-off-by: Andrey Vagin
    Cc: Jonathan Corbet
    Cc: Alexander Viro
    Acked-by: Jeff Layton
    Acked-by: "J. Bruce Fields"
    Acked-by: Cyrill Gorcunov
    Cc: Pavel Emelyanov
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrey Vagin
     
  • docs: add missing and new /proc/PID/status file entries, fix typos

    Signed-off-by: Nathan Scott
    Signed-off-by: Chen Hanxiao
    Cc: Serge Hallyn
    Cc: "Eric W. Biederman"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nathan Scott
     
  • Change the __raw IO calls to readl/write_relaxed which makes the driver
    endian agnostic to run properly on big endian systems.

    Signed-off-by: Ben Dooks
    Cc: Alessandro Zummo
    Cc: Andrew Victor
    Acked-by: Nicolas Ferre
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ben Dooks
     
  • Documentation/spi/spidev_test.c:83:5: warning: no previous prototype for 'unespcape' [-Wmissing-prototypes]

    fix spelling too.

    Acked-by: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • The RTC driver supports two flavors of S5M devices: S5M8767-like and
    S2MPS14-like.

    On S2MPS13 and S2MPS14 devices the RTC module is the same so we want to
    re-use the existing support of S2MPS14. However device type was passed
    from parent MFD driver in platform data structure. This way for the
    S2MPS13 device the main MFD driver passed device type of 'S2MPS13X'.

    Instead decouple detecting of device type between main MFD and RTC driver.
    This allows adding support for other S2MPS14 variations (like S2MPS11 and
    S2MPS13) easily by adding to mfd/sec-core.c:

    static const struct mfd_cell s2mps13_devs[] = {
    { .name = "s2mps14-rtc", }
    };

    Signed-off-by: Krzysztof Kozlowski
    Cc: Alessandro Zummo
    Cc: Kyungmin Park
    Cc: Marek Szyprowski
    Cc: Chanwoo Choi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Kozlowski
     
  • Running make tar-pkg results in following:

    # Untracked files:
    # (use "git add ..." to include in what will be committed)
    #
    # linux-4.0.0-rc3-next-20150313-150225--x86.tar

    This patch makes git ignore *.tar files.
    Running 'git ls-files -i --exclude-standard' does not show any
    tar files excluded from tracking after the change.

    Signed-off-by: Andrey Skvortsov
    Cc: Michal Marek
    Cc: Greg Kroah-Hartman
    Cc: Boaz Harrosh
    Cc: Andi Kleen
    Cc: Benjamin Romer
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrey Skvortsov
     
  • Add the new list that Mediatek specific patches should also be
    directed to.

    Signed-off-by: Matthias Brugger
    Cc: Olof Johansson
    Cc: Arnd Bergmann
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthias Brugger
     
  • The mm->exe_file is currently serialized with mmap_sem (shared) in order
    to both safely (1) read the file and (2) compute the realpath by calling
    tomoyo_realpath_from_path, making it an absolute overkill. Good users
    will, on the other hand, make use of the more standard get_mm_exe_file(),
    requiring only holding the mmap_sem to read the value, and relying on
    reference

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Davidlohr Bueso
    Acked-by: Tetsuo Handa
    Cc: James Morris
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Davidlohr Bueso
     
  • In the future mm->exe_file will be done without mmap_sem serialization,
    thus isolate and reorganize the related code to make the transition
    easier. Good users will, make use of the more standard get_mm_exe_file(),
    requiring only holding the mmap_sem to read the value, and relying on
    reference counting to make sure that the exe file won't dissappear
    underneath us while getting the dcookie.

    Signed-off-by: Davidlohr Bueso
    Cc: Arnd Bergmann
    Cc: Robert Richter
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Davidlohr Bueso
     
  • sync_buffer() needs the mmap_sem for two distinct operations, both only
    occurring upon user context switch handling:

    1) Dealing with the exe_file.

    2) Adding the dcookie data as we need to lookup the vma that
    backs it. This is done via add_sample() and add_data().

    This patch isolates 1), for it will no longer need the mmap_sem for
    serialization. However, for now, make of the more standard
    get_mm_exe_file(), requiring only holding the mmap_sem to read the value,
    and relying on reference counting to make sure that the exe file won't
    dissappear underneath us while doing the get dcookie.

    As a consequence, for 2) we move the mmap_sem locking into where we really
    need it, in lookup_dcookie(). The benefits are twofold: reduce mmap_sem
    hold times, and cleaner code.

    [akpm@linux-foundation.org: export get_mm_exe_file for arch/x86/oprofile/oprofile.ko]
    Signed-off-by: Davidlohr Bueso
    Cc: Robert Richter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Davidlohr Bueso
     
  • This modifies the IP32 (SGI O2) platform and reset code to utilize the new
    rtc-ds1685 driver. The old mc146818rtc.h header is removed and ip32_defconfig
    is updated as well.

    Signed-off-by: Joshua Kinard
    Acked-by: Ralf Baechle
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joshua Kinard
     
  • Cc: Yalin Wang
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. The obsolete sigreturn syscall override
    is retained in 32-bit mode, and the ia32 syscall overrides are used in
    the compat case. Remaining definitions were identical.

    Signed-off-by: Kees Cook
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. The obsolete sigreturn in COMPAT mode
    is retained as an override. Remaining definitions are identical. Also
    corrected missing #define for header reinclusion protection.

    Signed-off-by: Kees Cook
    Cc: "David S. Miller"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. The obsolete sigreturn in COMPAT mode is
    retained as an override. Remaining definitions are identical, though they
    incorrectly appeared in uapi, which has been corrected.

    Signed-off-by: Kees Cook
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Michael Ellerman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. Definitions were identical.

    Signed-off-by: Kees Cook
    Cc: "James E.J. Bottomley"
    Cc: Helge Deller
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. COMPAT definitions retain their
    overrides and the remaining definitions were identical.

    Signed-off-by: Kees Cook
    Cc: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. Since microblaze is 32-bit, the COMPAT
    seccomp defines are unused and can be dropped. The obsolete sigreturn
    for seccomp strict mode is retained as an override. Remaining definitions
    are identical.

    Signed-off-by: Kees Cook
    Cc: Michal Simek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Switch to using the newly created asm-generic/seccomp.h for the seccomp
    strict mode syscall definitions. Definitions were identical.

    Signed-off-by: Kees Cook
    Cc: Russell King
    Cc: Laura Abbott
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • Most architectures don't need to do much special for the strict-mode
    seccomp syscall entries. Remove the redundant headers and reduce the
    others.

    This patch (of 8):

    Some architectures may need to override the compat sigreturn definition,
    as is already possible in the non-compat case.

    Signed-off-by: Kees Cook
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Thomas Gleixner
    Cc: Russell King
    Cc: Michal Simek
    Cc: Ralf Baechle
    Cc: "James E.J. Bottomley"
    Cc: Helge Deller
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Michael Ellerman
    Cc: "David S. Miller"
    Cc: Arnd Bergmann
    Cc: Frederic Weisbecker
    Cc: Peter Zijlstra
    Cc: Will Deacon
    Cc: Daniel Borkmann
    Cc: Laura Abbott
    Cc: James Hogan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • print_task_path_n_nm() is local to this file, its only user being
    show_regs(). Mark the function static and avoid the EXPORT_SYMBOL.

    Signed-off-by: Davidlohr Bueso
    Acked-by: Vineet Gupta
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Davidlohr Bueso
     
  • It is better to use macros which are already available because then there
    is just one location which needs to be change.

    [akpm@linux-foundation.org: move IS_ENABLED definition to after the IS_BUILTIN and IS_MODULE definitions]
    Signed-off-by: Michal Simek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Simek
     
  • Using the indenting we can see the curly braces were obviously intended.
    This is a static checker fix, but my guess is that we don't read enough
    bytes, because we don't calculate "t_len" correctly.

    Fixes: f1d82698029b ('memstick: use fully asynchronous request processing')
    Signed-off-by: Dan Carpenter
    Cc: Alex Dubov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dan Carpenter
     
  • In case of failed memory allocation, the return should be ENOMEM instead
    of ENOSPC.

    Return -EIO when sb_bread() fails.

    Signed-off-by: Sanidhya Kashyap
    Cc: Tigran Aivazian
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sanidhya Kashyap
     
  • This kthread is not loop at all due to break at the end of the loop. Make
    that function linear, with no while loop.

    And remove an unnecessary cast.

    Signed-off-by: Jiri Slaby
    Cc: Anil Gurumurthy
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jiri Slaby
     
  • There is a possibility of kstrdup() failure upon memory pressure.
    Therefore, returning ENOMEM even for new_opts.

    [akpm@linux-foundation.org: cleanup]
    Signed-off-by: Sanidhya Kashyap
    Cc: Taesoo kim
    Cc: Fabian Frederick
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sanidhya Kashyap
     
  • Replace mount option test by affs_test_opt().

    Signed-off-by: Fabian Frederick
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fabian Frederick
     
  • Replace direct mount option assignation by affs_set_opt() macro.

    Signed-off-by: Fabian Frederick
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fabian Frederick
     
  • Add clear/set/test affs mount option macros.

    Signed-off-by: Fabian Frederick
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fabian Frederick
     
  • Currently, affs still uses direct access on mount_options. This patch
    prepares to use affs_clear/set/test_opt() like other filesystems.

    Signed-off-by: Fabian Frederick
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fabian Frederick