04 Dec, 2014

1 commit


03 Dec, 2014

1 commit


17 Nov, 2014

1 commit


14 Nov, 2014

1 commit


30 Oct, 2014

3 commits

  • Merge misc fixes from Andrew Morton:
    "21 fixes"

    * emailed patches from Andrew Morton : (21 commits)
    mm/balloon_compaction: fix deflation when compaction is disabled
    sh: fix sh770x SCIF memory regions
    zram: avoid NULL pointer access in concurrent situation
    mm/slab_common: don't check for duplicate cache names
    ocfs2: fix d_splice_alias() return code checking
    mm: rmap: split out page_remove_file_rmap()
    mm: memcontrol: fix missed end-writeback page accounting
    mm: page-writeback: inline account_page_dirtied() into single caller
    lib/bitmap.c: fix undefined shift in __bitmap_shift_{left|right}()
    drivers/rtc/rtc-bq32k.c: fix register value
    memory-hotplug: clear pgdat which is allocated by bootmem in try_offline_node()
    drivers/rtc/rtc-s3c.c: fix initialization failure without rtc source clock
    kernel/kmod: fix use-after-free of the sub_info structure
    drivers/rtc/rtc-pm8xxx.c: rework to support pm8941 rtc
    mm, thp: fix collapsing of hugepages on madvise
    drivers: of: add return value to of_reserved_mem_device_init()
    mm: free compound page with correct order
    gcov: add ARM64 to GCOV_PROFILE_ALL
    fsnotify: next_i is freed during fsnotify_unmount_inodes.
    mm/compaction.c: avoid premature range skip in isolate_migratepages_range
    ...

    Linus Torvalds
     
  • If __bitmap_shift_left() or __bitmap_shift_right() are asked to shift by
    a multiple of BITS_PER_LONG, they will try to shift a long value by
    BITS_PER_LONG bits which is undefined. Change the functions to avoid
    the undefined shift.

    Coverity id: 1192175
    Coverity id: 1192174
    Signed-off-by: Jan Kara
    Cc: Rasmus Villemoes
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • Pull block layer fixes from Jens Axboe:
    "A small collection of fixes for the current kernel. This contains:

    - Two error handling fixes from Jan Kara. One for null_blk on
    failure to add a device, and the other for the block/scsi_ioctl
    SCSI_IOCTL_SEND_COMMAND fixing up the error jump point.

    - A commit added in the merge window for the bio integrity bits
    unfortunately disabled merging for all requests if
    CONFIG_BLK_DEV_INTEGRITY wasn't set. Reverse the logic, so that
    integrity checking wont disallow merges when not enabled.

    - A fix from Ming Lei for merging and generating too many segments.
    This caused a BUG in virtio_blk.

    - Two error handling printk() fixups from Robert Elliott, improving
    the information given when we rate limit.

    - Error handling fixup on elevator_init() failure from Sudip
    Mukherjee.

    - A fix from Tony Battersby, fixing up a memory leak in the
    scatterlist handling with scsi-mq"

    * 'for-linus' of git://git.kernel.dk/linux-block:
    block: Fix merge logic when CONFIG_BLK_DEV_INTEGRITY is not defined
    lib/scatterlist: fix memory leak with scsi-mq
    block: fix wrong error return in elevator_init()
    scsi: Fix error handling in SCSI_IOCTL_SEND_COMMAND
    null_blk: Cleanup error recovery in null_add_dev()
    blk-merge: recaculate segment if it isn't less than max segments
    fs: clarify rate limit suppressed buffer I/O errors
    fs: merge I/O error prints into one line

    Linus Torvalds
     

29 Oct, 2014

1 commit


25 Oct, 2014

1 commit


24 Oct, 2014

1 commit

  • Pull x86 EFI updates from Peter Anvin:
    "This patchset falls under the "maintainers that grovel" clause in the
    v3.18-rc1 announcement. We had intended to push it late in the merge
    window since we got it into the -tip tree relatively late.

    Many of these are relatively simple things, but there are a couple of
    key bits, especially Ard's and Matt's patches"

    * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
    rtc: Disable EFI rtc for x86
    efi: rtc-efi: Export platform:rtc-efi as module alias
    efi: Delete the in_nmi() conditional runtime locking
    efi: Provide a non-blocking SetVariable() operation
    x86/efi: Adding efi_printks on memory allocationa and pci.reads
    x86/efi: Mark initialization code as such
    x86/efi: Update comment regarding required phys mapped EFI services
    x86/efi: Unexport add_efi_memmap variable
    x86/efi: Remove unused efi_call* macros
    efi: Resolve some shadow warnings
    arm64: efi: Format EFI memory type & attrs with efi_md_typeattr_format()
    ia64: efi: Format EFI memory type & attrs with efi_md_typeattr_format()
    x86: efi: Format EFI memory type & attrs with efi_md_typeattr_format()
    efi: Introduce efi_md_typeattr_format()
    efi: Add macro for EFI_MEMORY_UCE memory attribute
    x86/efi: Clear EFI_RUNTIME_SERVICES if failing to enter virtual mode
    arm64/efi: Do not enter virtual mode if booting with efi=noruntime or noefi
    arm64/efi: uefi_init error handling fix
    efi: Add kernel param efi=noruntime
    lib: Add a generic cmdline parse function parse_option_str
    ...

    Linus Torvalds
     

19 Oct, 2014

2 commits

  • Pull fbdev updates from Tomi Valkeinen:
    - new 6x10 font
    - various small fixes and cleanups

    * tag 'fbdev-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (30 commits)
    fonts: Add 6x10 font
    videomode: provide dummy inline functions for !CONFIG_OF
    video/atmel_lcdfb: Introduce regulator support
    fbdev: sh_mobile_hdmi: Re-init regs before irq re-enable on resume
    framebuffer: fix screen corruption when copying
    framebuffer: fix border color
    arm, fbdev, omap2, LLVMLinux: Remove nested function from omapfb
    arm, fbdev, omap2, LLVMLinux: Remove nested function from omap2 dss
    video: fbdev: valkyriefb.c: use container_of to resolve fb_info_valkyrie from fb_info
    video: fbdev: pxafb.c: use container_of to resolve pxafb_info/layer from fb_info
    video: fbdev: cyber2000fb.c: use container_of to resolve cfb_info from fb_info
    video: fbdev: controlfb.c: use container_of to resolve fb_info_control from fb_info
    video: fbdev: sa1100fb.c: use container_of to resolve sa1100fb_info from fb_info
    video: fbdev: stifb.c: use container_of to resolve stifb_info from fb_info
    video: fbdev: sis: sis_main.c: Cleaning up missing null-terminate in conjunction with strncpy
    video: valkyriefb: Fix unused variable warning in set_valkyrie_clock()
    video: fbdev: use %*ph specifier to dump small buffers
    video: mx3fb: always enable BACKLIGHT_LCD_SUPPORT
    video: fbdev: au1200fb: delete double assignment
    video: fbdev: sis: delete double assignment
    ...

    Linus Torvalds
     
  • Pull md updates from Neil Brown:
    - a few minor bug fixes
    - quite a lot of code tidy-up and simplification
    - remove PRINT_RAID_DEBUG ioctl. I'm fairly sure it is unused, and it
    isn't particularly useful.

    * tag 'md/3.18' of git://neil.brown.name/md: (21 commits)
    lib/raid6: Add log level to printks
    md: move EXPORT_SYMBOL to after function in md.c
    md: discard PRINT_RAID_DEBUG ioctl
    md: remove MD_BUG()
    md: clean up 'exit' labels in md_ioctl().
    md: remove unnecessary test for MD_MAJOR in md_ioctl()
    md: don't allow "-sync" to be set for device in an active array.
    md: remove unwanted white space from md.c
    md: don't start resync thread directly from md thread.
    md: Just use RCU when checking for overlap between arrays.
    md: avoid potential long delay under pers_lock
    md: simplify export_array()
    md: discard find_rdev_nr in favour of find_rdev_nr_rcu
    md: use wait_event() to simplify md_super_wait()
    md: be more relaxed about stopping an array which isn't started.
    md/raid1: process_checks doesn't use its return value.
    md/raid5: fix init_stripe() inconsistencies
    md/raid10: another memory leak due to reshape.
    md: use set_bit/clear_bit instead of shift/mask for bi_flags changes.
    md/raid1: minor typos and reformatting.
    ...

    Linus Torvalds
     

17 Oct, 2014

1 commit

  • zatimend has reported that in his environment (3.16/gcc4.8.3/corei7)
    memset() calls which clear out sensitive data in extract_{buf,entropy,
    entropy_user}() in random driver are being optimized away by gcc.

    Add a helper memzero_explicit() (similarly as explicit_bzero() variants)
    that can be used in such cases where a variable with sensitive data is
    being cleared out in the end. Other use cases might also be in crypto
    code. [ I have put this into lib/string.c though, as it's always built-in
    and doesn't need any dependencies then. ]

    Fixes kernel bugzilla: 82041

    Reported-by: zatimend@hotmail.co.uk
    Signed-off-by: Daniel Borkmann
    Acked-by: Hannes Frederic Sowa
    Cc: Alexey Dobriyan
    Signed-off-by: Theodore Ts'o
    Cc: stable@vger.kernel.org

    Daniel Borkmann
     

14 Oct, 2014

12 commits

  • Replaced the use of a Variable Length Array In Struct (VLAIS) with a C99
    compliant equivalent. This patch allocates the appropriate amount of memory
    using a char array using the SHASH_DESC_ON_STACK macro.

    The new code can be compiled with both gcc and clang.

    Signed-off-by: Jan-Simon Möller
    Signed-off-by: Behan Webster
    Reviewed-by: Mark Charlebois
    Acked-by: Herbert Xu
    Cc: pageexec@freemail.hu
    Cc: "David S. Miller"

    Jan-Simon Möller
     
  • Signed-off-by: Anton Blanchard
    Signed-off-by: NeilBrown

    Anton Blanchard
     
  • This allows user to print a given buffer as an escaped string. The
    rules are applied according to an optional mix of flags provided by
    additional format letters.

    For example, if the given buffer is:

    1b 62 20 5c 43 07 22 90 0d 5d

    The result strings would be:
    %*pE "\eb \C\a"\220\r]"
    %*pEhp "\x1bb \C\x07"\x90\x0d]"
    %*pEa "\e\142\040\\\103\a\042\220\r\135"

    Please, read Documentation/printk-formats.txt and lib/string_helpers.c
    kernel documentation to get further information.

    [akpm@linux-foundation.org: tidy up comment layout, per Joe]
    Signed-off-by: Andy Shevchenko
    Suggested-by: Joe Perches
    Cc: "John W . Linville"
    Cc: Johannes Berg
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     
  • This is almost the opposite function to string_unescape(). Nevertheless
    it handles \0 and could be used for any byte buffer.

    The documentation is supplied together with the function prototype.

    The test cases covers most of the scenarios and would be expanded later
    on.

    [akpm@linux-foundation.org: avoid 1k stack consumption]
    Signed-off-by: Andy Shevchenko
    Cc: "John W . Linville"
    Cc: Johannes Berg
    Cc: Greg Kroah-Hartman
    Cc: Joe Perches
    Cc: Wu Fengguang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     
  • This patch prepares test suite for a following update. It introduces
    test_string_check_buf() helper which checks the result and dumps an error.

    Signed-off-by: Andy Shevchenko
    Cc: "John W . Linville"
    Cc: Johannes Berg
    Cc: Greg Kroah-Hartman
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     
  • The introduced function string_escape_mem() is a kind of opposite to
    string_unescape. We have several users of such functionality each of
    them created custom implementation. The series contains clean up of
    test suite, adding new call, and switching few users to use it via %*pE
    specifier.

    Test suite covers all of existing and most of potential use cases.

    This patch (of 11):

    The documentation of API belongs to c-file. This patch moves it
    accordingly.

    There is no functional change.

    Signed-off-by: Andy Shevchenko
    Cc: "John W . Linville"
    Cc: Johannes Berg
    Cc: Greg Kroah-Hartman
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     
  • The previous patch made strnicmp into a wrapper for strncasecmp.

    This patch makes all in-tree users of strnicmp call strncasecmp
    directly, while still making sure that the strnicmp symbol can be used
    by out-of-tree modules. It should be considered a temporary hack until
    all in-tree callers have been converted.

    Signed-off-by: Rasmus Villemoes
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rasmus Villemoes
     
  • lib/string.c contains two functions, strnicmp and strncasecmp, which do
    roughly the same thing, namely compare two strings case-insensitively up
    to a given bound. They have slightly different implementations, but the
    only important difference is that strncasecmp doesn't handle len==0
    appropriately; it effectively becomes strcasecmp in that case. strnicmp
    correctly says that two strings are always equal in their first 0
    characters.

    strncasecmp is the POSIX name for this functionality. So rename the
    non-broken function to the standard name. To minimize the impact on the
    rest of the kernel (and since both are exported to modules), make strnicmp
    a wrapper for strncasecmp.

    Signed-off-by: Rasmus Villemoes
    Cc: Grant Likely
    Cc: Andi Kleen
    Cc: Dan Carpenter
    Cc: "H. Peter Anvin"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rasmus Villemoes
     
  • The "_MODULE" suffix is reserved for tristates compiled as loadable kernel
    modules (LKM). The "TEST_MODULE" feature thereby violates this
    convention. The feature is used to compile the lib/test_module.c kernel
    module.

    Sadly this convention is not made explicit, but the Kconfig code documents
    it. The following code (./scripts/kconfig/confdata.c) is used to generate
    the autoconf.h header file during the build process. When a feature is
    selected as a kernel module ('m'), it is suffixed with "_MODULE" to
    indicate it.

    switch (*value) {
    case 'n':
    break;
    case 'm':
    suffix = "_MODULE";
    /* fall through */

    This causes problems for static code analysis, which assumes a consistent
    use of the "_MODULE" suffix.

    This patch renames the feature and its reference in a Makefile to
    "TEST_LKM", which still expresses the test of a LKM.

    Signed-off-by: Valentin Rothberg
    Cc: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Valentin Rothberg
     
  • The prio_heap code is unused since commit 889ed9ceaa97 ("cgroup: remove
    css_scan_tasks()"). It should be compiled out to shrink the binary
    kernel size which can be done via introducing CONFIG_PRIO_HEAD or by
    removing the code.

    We can simply recover the code from git when needed, so it would be
    better to remove it IMO.

    Signed-off-by: Lai Jiangshan
    Acked-by: Tejun Heo
    Cc: "David S. Miller"
    Cc: Ingo Molnar
    Acked-by: Peter Zijlstra
    Cc: Kees Cook
    Cc: Francesco Fusco
    Cc: Greg Thelen
    Cc: Chris Wilson
    Cc: Randy Dunlap
    Cc: George Spelvin
    Cc: Mark Salter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lai Jiangshan
     
  • There is no textsearch_put(). Remove it from the comments to avoid
    misunderstanding. Textsearch prepare no longer needs textsearch_put().

    Signed-off-by: Raphael Silva
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Raphael Silva
     
  • Using seq_open_private() removes boilerplate code from ddebug_proc_open().

    The resultant code is shorter and easier to follow.

    This patch does not change any functionality.

    Signed-off-by: Rob Jones
    Acked-by: Jason Baron
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rob Jones
     

13 Oct, 2014

3 commits

  • Pull scheduler updates from Ingo Molnar:
    "The main changes in this cycle were:

    - Optimized support for Intel "Cluster-on-Die" (CoD) topologies (Dave
    Hansen)

    - Various sched/idle refinements for better idle handling (Nicolas
    Pitre, Daniel Lezcano, Chuansheng Liu, Vincent Guittot)

    - sched/numa updates and optimizations (Rik van Riel)

    - sysbench speedup (Vincent Guittot)

    - capacity calculation cleanups/refactoring (Vincent Guittot)

    - Various cleanups to thread group iteration (Oleg Nesterov)

    - Double-rq-lock removal optimization and various refactorings
    (Kirill Tkhai)

    - various sched/deadline fixes

    ... and lots of other changes"

    * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (72 commits)
    sched/dl: Use dl_bw_of() under rcu_read_lock_sched()
    sched/fair: Delete resched_cpu() from idle_balance()
    sched, time: Fix build error with 64 bit cputime_t on 32 bit systems
    sched: Improve sysbench performance by fixing spurious active migration
    sched/x86: Fix up typo in topology detection
    x86, sched: Add new topology for multi-NUMA-node CPUs
    sched/rt: Use resched_curr() in task_tick_rt()
    sched: Use rq->rd in sched_setaffinity() under RCU read lock
    sched: cleanup: Rename 'out_unlock' to 'out_free_new_mask'
    sched: Use dl_bw_of() under RCU read lock
    sched/fair: Remove duplicate code from can_migrate_task()
    sched, mips, ia64: Remove __ARCH_WANT_UNLOCKED_CTXSW
    sched: print_rq(): Don't use tasklist_lock
    sched: normalize_rt_tasks(): Don't use _irqsave for tasklist_lock, use task_rq_lock()
    sched: Fix the task-group check in tg_has_rt_tasks()
    sched/fair: Leverage the idle state info when choosing the "idlest" cpu
    sched: Let the scheduler see CPU idle states
    sched/deadline: Fix inter- exclusive cpusets migrations
    sched/deadline: Clear dl_entity params when setscheduling to different class
    sched/numa: Kill the wrong/dead TASK_DEAD check in task_numa_fault()
    ...

    Linus Torvalds
     
  • Pull core locking updates from Ingo Molnar:
    "The main updates in this cycle were:

    - mutex MCS refactoring finishing touches: improve comments, refactor
    and clean up code, reduce debug data structure footprint, etc.

    - qrwlock finishing touches: remove old code, self-test updates.

    - small rwsem optimization

    - various smaller fixes/cleanups"

    * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    locking/lockdep: Revert qrwlock recusive stuff
    locking/rwsem: Avoid double checking before try acquiring write lock
    locking/rwsem: Move EXPORT_SYMBOL() lines to follow function definition
    locking/rwlock, x86: Delete unused asm/rwlock.h and rwlock.S
    locking/rwlock, x86: Clean up asm/spinlock*.h to remove old rwlock code
    locking/semaphore: Resolve some shadow warnings
    locking/selftest: Support queued rwlock
    locking/lockdep: Restrict the use of recursive read_lock() with qrwlock
    locking/spinlocks: Always evaluate the second argument of spin_lock_nested()
    locking/Documentation: Update locking/mutex-design.txt disadvantages
    locking/Documentation: Move locking related docs into Documentation/locking/
    locking/mutexes: Use MUTEX_SPIN_ON_OWNER when appropriate
    locking/mutexes: Refactor optimistic spinning code
    locking/mcs: Remove obsolete comment
    locking/mutexes: Document quick lock release when unlocking
    locking/mutexes: Standardize arguments in lock/unlock slowpaths
    locking: Remove deprecated smp_mb__() barriers

    Linus Torvalds
     
  • Pull arch atomic cleanups from Ingo Molnar:
    "This is a series kept separate from the main locking tree, which
    cleans up and improves various details in the atomics type handling:

    - Remove the unused atomic_or_long() method

    - Consolidate and compress atomic ops implementations between
    architectures, to reduce linecount and to make it easier to add new
    ops.

    - Rewrite generic atomic support to only require cmpxchg() from an
    architecture - generate all other methods from that"

    * 'locking-arch-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
    locking,arch: Use ACCESS_ONCE() instead of cast to volatile in atomic_read()
    locking, mips: Fix atomics
    locking, sparc64: Fix atomics
    locking,arch: Rewrite generic atomic support
    locking,arch,xtensa: Fold atomic_ops
    locking,arch,sparc: Fold atomic_ops
    locking,arch,sh: Fold atomic_ops
    locking,arch,powerpc: Fold atomic_ops
    locking,arch,parisc: Fold atomic_ops
    locking,arch,mn10300: Fold atomic_ops
    locking,arch,mips: Fold atomic_ops
    locking,arch,metag: Fold atomic_ops
    locking,arch,m68k: Fold atomic_ops
    locking,arch,m32r: Fold atomic_ops
    locking,arch,ia64: Fold atomic_ops
    locking,arch,hexagon: Fold atomic_ops
    locking,arch,cris: Fold atomic_ops
    locking,arch,avr32: Fold atomic_ops
    locking,arch,arm64: Fold atomic_ops
    locking,arch,arm: Fold atomic_ops
    ...

    Linus Torvalds
     

12 Oct, 2014

1 commit

  • Pull security subsystem updates from James Morris.

    Mostly ima, selinux, smack and key handling updates.

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (65 commits)
    integrity: do zero padding of the key id
    KEYS: output last portion of fingerprint in /proc/keys
    KEYS: strip 'id:' from ca_keyid
    KEYS: use swapped SKID for performing partial matching
    KEYS: Restore partial ID matching functionality for asymmetric keys
    X.509: If available, use the raw subjKeyId to form the key description
    KEYS: handle error code encoded in pointer
    selinux: normalize audit log formatting
    selinux: cleanup error reporting in selinux_nlmsg_perm()
    KEYS: Check hex2bin()'s return when generating an asymmetric key ID
    ima: detect violations for mmaped files
    ima: fix race condition on ima_rdwr_violation_check and process_measurement
    ima: added ima_policy_flag variable
    ima: return an error code from ima_add_boot_aggregate()
    ima: provide 'ima_appraise=log' kernel option
    ima: move keyring initialization to ima_init()
    PKCS#7: Handle PKCS#7 messages that contain no X.509 certs
    PKCS#7: Better handling of unsupported crypto
    KEYS: Overhaul key identification when searching for asymmetric keys
    KEYS: Implement binary asymmetric key ID handling
    ...

    Linus Torvalds
     

10 Oct, 2014

3 commits

  • Pull percpu updates from Tejun Heo:
    "A lot of activities on percpu front. Notable changes are...

    - percpu allocator now can take @gfp. If @gfp doesn't contain
    GFP_KERNEL, it tries to allocate from what's already available to
    the allocator and a work item tries to keep the reserve around
    certain level so that these atomic allocations usually succeed.

    This will replace the ad-hoc percpu memory pool used by
    blk-throttle and also be used by the planned blkcg support for
    writeback IOs.

    Please note that I noticed a bug in how @gfp is interpreted while
    preparing this pull request and applied the fix 6ae833c7fe0c
    ("percpu: fix how @gfp is interpreted by the percpu allocator")
    just now.

    - percpu_ref now uses longs for percpu and global counters instead of
    ints. It leads to more sparse packing of the percpu counters on
    64bit machines but the overhead should be negligible and this
    allows using percpu_ref for refcnting pages and in-memory objects
    directly.

    - The switching between percpu and single counter modes of a
    percpu_ref is made independent of putting the base ref and a
    percpu_ref can now optionally be initialized in single or killed
    mode. This allows avoiding percpu shutdown latency for cases where
    the refcounted objects may be synchronously created and destroyed
    in rapid succession with only a fraction of them reaching fully
    operational status (SCSI probing does this when combined with
    blk-mq support). It's also planned to be used to implement forced
    single mode to detect underflow more timely for debugging.

    There's a separate branch percpu/for-3.18-consistent-ops which cleans
    up the duplicate percpu accessors. That branch causes a number of
    conflicts with s390 and other trees. I'll send a separate pull
    request w/ resolutions once other branches are merged"

    * 'for-3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (33 commits)
    percpu: fix how @gfp is interpreted by the percpu allocator
    blk-mq, percpu_ref: start q->mq_usage_counter in atomic mode
    percpu_ref: make INIT_ATOMIC and switch_to_atomic() sticky
    percpu_ref: add PERCPU_REF_INIT_* flags
    percpu_ref: decouple switching to percpu mode and reinit
    percpu_ref: decouple switching to atomic mode and killing
    percpu_ref: add PCPU_REF_DEAD
    percpu_ref: rename things to prepare for decoupling percpu/atomic mode switch
    percpu_ref: replace pcpu_ prefix with percpu_
    percpu_ref: minor code and comment updates
    percpu_ref: relocate percpu_ref_reinit()
    Revert "blk-mq, percpu_ref: implement a kludge for SCSI blk-mq stall during probe"
    Revert "percpu: free percpu allocation info for uniprocessor system"
    percpu-refcount: make percpu_ref based on longs instead of ints
    percpu-refcount: improve WARN messages
    percpu: fix locking regression in the failure path of pcpu_alloc()
    percpu-refcount: add @gfp to percpu_ref_init()
    proportions: add @gfp to init functions
    percpu_counter: add @gfp to percpu_counter_init()
    percpu_counter: make percpu_counters_lock irq-safe
    ...

    Linus Torvalds
     
  • After allocating an address from a particular genpool, there is no good
    way to verify if that address actually belongs to a genpool. Introduce
    addr_in_gen_pool which will return if an address plus size falls
    completely within the genpool range.

    Signed-off-by: Laura Abbott
    Acked-by: Will Deacon
    Reviewed-by: Olof Johansson
    Reviewed-by: Catalin Marinas
    Cc: Arnd Bergmann
    Cc: David Riley
    Cc: Ritesh Harjain
    Cc: Russell King
    Cc: Thierry Reding
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Laura Abbott
     
  • One of the more common algorithms used for allocation is to align the
    start address of the allocation to the order of size requested. Add this
    as an algorithm option for genalloc.

    Signed-off-by: Laura Abbott
    Acked-by: Will Deacon
    Acked-by: Olof Johansson
    Reviewed-by: Catalin Marinas
    Cc: Arnd Bergmann
    Cc: David Riley
    Cc: Ritesh Harjain
    Cc: Russell King
    Cc: Thierry Reding
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Laura Abbott
     

09 Oct, 2014

2 commits

  • This font is suitable for framebuffer consoles on devices with a
    320x240 screen, to get a reasonable number of characters (53x24) that
    are still at a readable size.

    The font is derived from the existing 6x11 font, but gets 3 extra
    lines without sacrificing readability. Also I redesigned a some glyhps
    so they are more distinct and better fill the available space.

    Signed-off-by: Maarten ter Huurne
    Signed-off-by: Tomi Valkeinen

    Maarten ter Huurne
     
  • Pull networking updates from David Miller:
    "Most notable changes in here:

    1) By far the biggest accomplishment, thanks to a large range of
    contributors, is the addition of multi-send for transmit. This is
    the result of discussions back in Chicago, and the hard work of
    several individuals.

    Now, when the ->ndo_start_xmit() method of a driver sees
    skb->xmit_more as true, it can choose to defer the doorbell
    telling the driver to start processing the new TX queue entires.

    skb->xmit_more means that the generic networking is guaranteed to
    call the driver immediately with another SKB to send.

    There is logic added to the qdisc layer to dequeue multiple
    packets at a time, and the handling mis-predicted offloads in
    software is now done with no locks held.

    Finally, pktgen is extended to have a "burst" parameter that can
    be used to test a multi-send implementation.

    Several drivers have xmit_more support: i40e, igb, ixgbe, mlx4,
    virtio_net

    Adding support is almost trivial, so export more drivers to
    support this optimization soon.

    I want to thank, in no particular or implied order, Jesper
    Dangaard Brouer, Eric Dumazet, Alexander Duyck, Tom Herbert, Jamal
    Hadi Salim, John Fastabend, Florian Westphal, Daniel Borkmann,
    David Tat, Hannes Frederic Sowa, and Rusty Russell.

    2) PTP and timestamping support in bnx2x, from Michal Kalderon.

    3) Allow adjusting the rx_copybreak threshold for a driver via
    ethtool, and add rx_copybreak support to enic driver. From
    Govindarajulu Varadarajan.

    4) Significant enhancements to the generic PHY layer and the bcm7xxx
    driver in particular (EEE support, auto power down, etc.) from
    Florian Fainelli.

    5) Allow raw buffers to be used for flow dissection, allowing drivers
    to determine the optimal "linear pull" size for devices that DMA
    into pools of pages. The objective is to get exactly the
    necessary amount of headers into the linear SKB area pre-pulled,
    but no more. The new interface drivers use is eth_get_headlen().
    From WANG Cong, with driver conversions (several had their own
    by-hand duplicated implementations) by Alexander Duyck and Eric
    Dumazet.

    6) Support checksumming more smoothly and efficiently for
    encapsulations, and add "foo over UDP" facility. From Tom
    Herbert.

    7) Add Broadcom SF2 switch driver to DSA layer, from Florian
    Fainelli.

    8) eBPF now can load programs via a system call and has an extensive
    testsuite. Alexei Starovoitov and Daniel Borkmann.

    9) Major overhaul of the packet scheduler to use RCU in several major
    areas such as the classifiers and rate estimators. From John
    Fastabend.

    10) Add driver for Intel FM10000 Ethernet Switch, from Alexander
    Duyck.

    11) Rearrange TCP_SKB_CB() to reduce cache line misses, from Eric
    Dumazet.

    12) Add Datacenter TCP congestion control algorithm support, From
    Florian Westphal.

    13) Reorganize sk_buff so that __copy_skb_header() is significantly
    faster. From Eric Dumazet"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1558 commits)
    netlabel: directly return netlbl_unlabel_genl_init()
    net: add netdev_txq_bql_{enqueue, complete}_prefetchw() helpers
    net: description of dma_cookie cause make xmldocs warning
    cxgb4: clean up a type issue
    cxgb4: potential shift wrapping bug
    i40e: skb->xmit_more support
    net: fs_enet: Add NAPI TX
    net: fs_enet: Remove non NAPI RX
    r8169:add support for RTL8168EP
    net_sched: copy exts->type in tcf_exts_change()
    wimax: convert printk to pr_foo()
    af_unix: remove 0 assignment on static
    ipv6: Do not warn for informational ICMP messages, regardless of type.
    Update Intel Ethernet Driver maintainers list
    bridge: Save frag_max_size between PRE_ROUTING and POST_ROUTING
    tipc: fix bug in multicast congestion handling
    net: better IFF_XMIT_DST_RELEASE support
    net/mlx4_en: remove NETDEV_TX_BUSY
    3c59x: fix bad split of cpu_to_le32(pci_map_single())
    net: bcmgenet: fix Tx ring priority programming
    ...

    Linus Torvalds
     

08 Oct, 2014

3 commits

  • Pull compression update from Greg KH:
    "More fun with the LZO compression code. Here's some patches that
    properly document what the logic is, and fix up all of the previously
    reported issues against the LZO code.

    This has been in linux-next for a while with no issues"

    * tag 'compress-3.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
    lzo: check for length overrun in variable length encoding.
    Revert "lzo: properly check for overruns"
    Documentation: lzo: document part of the encoding

    Linus Torvalds
     
  • Pull driver core update from Greg KH:
    "Here's the driver core patches for 3.18-rc1. Just a few small things,
    and the addition of a new interface to dump firmware "core dumps" to
    userspace through sysfs that the wireless and graphic drivers want to
    use.

    All of these have been in linux-next for a while"

    * tag 'driver-core-3.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
    dynamic_debug: change __dynamic__dbg return types to void
    driver/base/node: remove unnecessary kfree of node struct from unregister_one_node
    devres: Improve devm_kasprintf()/kvasprintf() support
    Documentation: devres: Add missing devm_kstrdup() managed interface
    Documentation: devres: Add missing IRQ functions
    firmware_class: make sure fw requests contain a name
    driver core: Remove kerneldoc from local function
    attribute_container: fix coding style issues
    attribute_container: fix whitespace errors
    drivers/base: Fix length checks in create_syslog_header()/dev_vprintk_emit()
    device coredump: add new device coredump class
    Documentation/sysfs-rules.txt: Add device attribute error code documentation

    Linus Torvalds
     
  • Pull "trivial tree" updates from Jiri Kosina:
    "Usual pile from trivial tree everyone is so eagerly waiting for"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)
    Remove MN10300_PROC_MN2WS0038
    mei: fix comments
    treewide: Fix typos in Kconfig
    kprobes: update jprobe_example.c for do_fork() change
    Documentation: change "&" to "and" in Documentation/applying-patches.txt
    Documentation: remove obsolete pcmcia-cs from Changes
    Documentation: update links in Changes
    Documentation: Docbook: Fix generated DocBook/kernel-api.xml
    score: Remove GENERIC_HAS_IOMAP
    gpio: fix 'CONFIG_GPIO_IRQCHIP' comments
    tty: doc: Fix grammar in serial/tty
    dma-debug: modify check_for_stack output
    treewide: fix errors in printk
    genirq: fix reference in devm_request_threaded_irq comment
    treewide: fix synchronize_rcu() in comments
    checkstack.pl: port to AArch64
    doc: queue-sysfs: minor fixes
    init/do_mounts: better syntax description
    MIPS: fix comment spelling
    powerpc/simpleboot: fix comment
    ...

    Linus Torvalds
     

04 Oct, 2014

3 commits