13 Jun, 2012

1 commit

  • IO_DATA_PATH_WIDTH_8 is 0, so a bit-and with it is always false. The
    value IO_DATA_PATH_WIDTH covers the bits of the IO_DATA_PATH constants, so
    first pick those bits and then make the test using !=.

    This problem was found using Coccinelle (http://coccinelle.lip6.fr/).

    Signed-off-by: Julia Lawall
    Signed-off-by: David S. Miller

    Julia Lawall
     

07 Jun, 2012

2 commits


06 Jun, 2012

13 commits

  • Pull MCE regression fix from Tony Luck:
    "Typo/thinko in a cleanup caused a semantic change. Fix it."

    * tag 'please-pull-mce' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
    x86/mce: Fix the MCE poll timer logic

    Linus Torvalds
     
  • Pull arm CMA fix from Marek Szyprowski:
    "This removes the ARMv6+ CMA dependency and lets one use old, well-
    tested dma-mapping implementation also on ARMv6+ systems without the
    need to use EXPERIMENTAL stuff."

    Russell King complained (rightly) about the experimental feature being
    forced on by the ARM config.

    Here CMA is "continuous memory allocator", not "cross-memory attach".
    We really neet to stop using insane TLA's for things that aren't big
    industry standards.

    * 'fixes-for-linus' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping:
    ARM: dma-mapping: remove unconditional dependency on CMA

    Linus Torvalds
     
  • Signed-off-by: Linus Torvalds

    Bryan Wu
     
  • Signed-off-by: Karel Zak
    Signed-off-by: Linus Torvalds

    Karel Zak
     
  • Pull two scsi target fixes from Nicholas Bellinger:
    "The first is a small name-space collision fix from Stefan for the new
    sbp-target / ieee-1394 code, and second is the FILEIO backend
    conversion patch to always use O_DSYNC by default instead of O_SYNC as
    recommended by hch. Note the latter is CC'ed stable."

    * '3.5-merge-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
    target/file: Use O_DSYNC by default for FILEIO backends
    sbp-target: rename a variable to avoid name clash

    Linus Torvalds
     
  • Pull cgroup fix from Tejun Heo:
    "This fixes the possible premature superblock release on umount bug
    mentioned during v3.5-rc1 pull request.

    Originally, cgroup dentry destruction path assumed that cgroup dentry
    didn't have any reference left after cgroup removal thus put super
    during dentry removal. Now that there can be lingering dentry
    references, this led to super being put with live dentries. This
    patch fixes the problem by putting super ref on dentry release instead
    of removal."

    * 'for-3.5-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
    cgroup: superblock can't be released with active dentries

    Linus Torvalds
     
  • Pull embedded i2c update from Wolfram Sang:
    "This only contains one new driver which had multiple dependencies
    (pinctrl, i2c-mux-rework, new devm_* functions), so I decided to wait
    for rc1. Plus, it had to wait a little for the ack of a devicetree
    maintainer since the bindings were not trivial enough for me to pass
    through.

    So, given that, I hope there is still something like the "new driver
    rule", so we could have the driver in 3.5 and people can start using
    it. That would make merging support for some boards easier for 3.6
    since the dependency on this driver is gone then."

    * 'i2c-embedded/for-current' of git://git.pengutronix.de/git/wsa/linux:
    i2c: Add generic I2C multiplexer using pinctrl API

    Linus Torvalds
     
  • Pull kvm fix from Avi Kivity:
    "A one-liner fix for a buffer overflow"

    * git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: Fix buffer overflow in kvm_set_irq()

    Linus Torvalds
     
  • Pull drm radeon fixes from Dave Airlie:
    "This is just radeon fixes and a bunch of new PCI ids. The fixes are
    for a deadlock, an audio regression, and a couple of audio fixes."

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    drm/radeon/kms: add new SI PCI ids
    drm/radeon/kms: add new BTC PCI ids
    drm/radeon/kms: add new Palm, Sumo PCI ids
    drm/radeon/kms: add new Trinity PCI ids
    drm/radeon: fix vm deadlocks on cayman
    drm/radeon: fix gpu_init on si
    drm/radeon/hdmi: don't set SEND_MAX_PACKETS bit
    drm/radeon/audio: don't hardcode CRTC id
    drm/radeon: make audio_init consistent across asics

    Linus Torvalds
     
  • This patch fixes bug in macro radix_tree_for_each_contig().

    If radix_tree_next_slot() sees NULL in next slot it returns NULL, but following
    radix_tree_next_chunk() switches iterating into next chunk. As result iterating
    becomes non-contiguous and breaks vfs "splice" and all its users.

    Signed-off-by: Konstantin Khlebnikov
    Reported-and-bisected-by: Hans de Bruin
    Reported-and-bisected-by: Ondrej Zary
    Reported-bisected-and-tested-by: Toralf Förster
    Link: https://lkml.org/lkml/2012/6/5/64
    Cc: stable # 3.4.x
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     
  • In commit 82f7af09 (x86/mce: Cleanup timer mess), Thomas just forgot
    the "/ 2" there while cleaning up.

    Signed-off-by: Chen Gong
    Acked-by: Thomas Gleixner
    Signed-off-by: Tony Luck

    Chen Gong
     
  • Pull fuse updates from Miklos Szeredi.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
    fuse: fix blksize calculation
    fuse: fix stat call on 32 bit platforms
    fuse: optimize fallocate on permanent failure
    fuse: add FALLOCATE operation
    fuse: Convert to kstrtoul_from_user

    Linus Torvalds
     
  • Pull scheduler fixes from Ingo Molnar.

    * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    sched: Remove NULL assignment of dattr_cur
    sched: Remove the last NULL entry from sched_feat_names
    sched: Make sched_feat_names const
    sched/rt: Fix SCHED_RR across cgroups
    sched: Move nr_cpus_allowed out of 'struct sched_rt_entity'
    sched: Make sure to not re-read variables after validation
    sched: Fix SD_OVERLAP
    sched: Don't try allocating memory from offline nodes
    sched/nohz: Fix rq->cpu_load calculations some more
    sched/x86: Use cpu_llc_shared_mask(cpu) for coregroup_mask

    Linus Torvalds
     

05 Jun, 2012

18 commits

  • Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • kvm_set_irq() has an internal buffer of three irq routing entries, allowing
    connecting a GSI to three IRQ chips or on MSI. However setup_routing_entry()
    does not properly enforce this, allowing three irqchip routes followed by
    an MSI route to overflow the buffer.

    Fix by ensuring that an MSI entry is added to an empty list.

    Signed-off-by: Avi Kivity

    Avi Kivity
     
  • Locking mutex in different orders just screams for
    deadlocks, and some testing showed that it is actually
    quite easy to trigger them.

    Signed-off-by: Christian König
    Reviewed-by: Jerome Glisse
    Cc: stable@vger.kernel.org
    Signed-off-by: Dave Airlie

    Christian König
     
  • - Properly set up the RBs
    - Properly set up the SPI
    - Properly set up gb_addr_config

    This should fix rendering issues on certain cards.

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Many TVs and A/V receivers don't work with this bit set. Problem was
    confirmed using: Onkyo TX-SR605, Sony BRAVIA KDL-52X3500, Sony BRAVIA
    KDL-40S40xx. In theory this bit shouldn't affect audio engine when
    feeding it with data, however it seems it does. Driver fglrx doesn't set
    that bit in any of the above cases.
    This fixes a regression introduced by 3.5-rc1.

    Signed-off-by: Rafał Miłecki
    Reviewed-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Rafał Miłecki
     
  • This is based on info released by AMD, should allow using audio in much
    more cases.

    Signed-off-by: Rafał Miłecki
    Reviewed-by: Alex Deucher
    Cc:
    Signed-off-by: Dave Airlie

    Rafał Miłecki
     
  • Call it in the asic startup callback on all asics.
    Previously r600 and rv770 called it in the startup
    and resume callbacks while all the other asics called
    it in the startup callback.

    Signed-off-by: Alex Deucher
    Reviewed-by: Rafał Miłecki
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Pull signal and vfs compile breakage fixes from Al Viro.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:
    fixups for signal breakage

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    nommu: fix compilation of nommu.c

    Linus Torvalds
     
  • Pull cifs fixes from Steve French.

    * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
    CIFS: Move get_next_mid to ops struct
    CIFS: Make accessing is_valid_oplock/dump_detail ops struct field safe
    CIFS: Improve identation in cifs_unlock_range
    CIFS: Fix possible wrong memory allocation

    Linus Torvalds
     
  • Obvious brainos spotted by Geert.

    Signed-off-by: Al Viro

    Al Viro
     
  • Compiling 3.5-rc1 for nommu targets gives:

    CC mm/nommu.o
    mm/nommu.c: In function ‘sys_mmap_pgoff’:
    mm/nommu.c:1489:2: error: ‘ret’ undeclared (first use in this function)
    mm/nommu.c:1489:2: note: each undeclared identifier is reported only once for each function it appears in

    It is trivially fixed by replacing 'ret' with the local variable that is
    already defined for the return value 'retval'.

    Signed-off-by: Greg Ungerer
    Signed-off-by: Al Viro

    Greg Ungerer
     
  • Pull frontswap feature from Konrad Rzeszutek Wilk:
    "Frontswap provides a "transcendent memory" interface for swap pages.
    In some environments, dramatic performance savings may be obtained
    because swapped pages are saved in RAM (or a RAM-like device) instead
    of a swap disk. This tag provides the basic infrastructure along with
    some changes to the existing backends."

    Fix up trivial conflict in mm/Makefile due to removal of swap token code
    changing a line next to the new frontswap entry.

    This pull request came in before the merge window even opened, it got
    delayed to after the merge window by me just wanting to make sure it had
    actual users. Apparently IBM is using this on their embedded side, and
    Jan Beulich says that it's already made available for SLES and OpenSUSE
    users.

    Also acked by Rik van Riel, and Konrad points to other people liking it
    too. So in it goes.

    By Dan Magenheimer (4) and Konrad Rzeszutek Wilk (2)
    via Konrad Rzeszutek Wilk
    * tag 'stable/frontswap.v16-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm:
    frontswap: s/put_page/store/g s/get_page/load
    MAINTAINER: Add myself for the frontswap API
    mm: frontswap: config and doc files
    mm: frontswap: core frontswap functionality
    mm: frontswap: core swap subsystem hooks and headers
    mm: frontswap: add frontswap header file

    Linus Torvalds
     
  • …ernel.org/pub/scm/linux/kernel/git/tip/tip

    Pull irq and smpboot updates from Thomas Gleixner:
    "Just cleanup patches with no functional change and a fix for suspend
    issues."

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    genirq: Introduce irq_do_set_affinity() to reduce duplicated code
    genirq: Add IRQS_PENDING for nested and simple irq

    * 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    smpboot, idle: Fix comment mismatch over idle_threads_init()
    smpboot, idle: Optimize calls to smp_processor_id() in idle_threads_init()

    Linus Torvalds
     
  • Pull timer updates from Thomas Gleixner:
    "The clocksource driver is pure hardware enablement and the skew option
    is default off, well tested and non dangerous."

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    tick: Move skew_tick option into the HIGH_RES_TIMER section
    clocksource: em_sti: Add DT support
    clocksource: em_sti: Emma Mobile STI driver
    clockevents: Make clockevents_config() a global symbol
    tick: Add tick skew boot option

    Linus Torvalds
     
  • Cyrill Gorcunov reports that I broke the fdinfo files with commit
    30a08bf2d31d ("proc: move fd symlink i_mode calculations into
    tid_fd_revalidate()"), and he's quite right.

    The tid_fd_revalidate() function is not just used for the /fd
    symlinks, it's also used for the /fdinfo/ files, and the
    permission model for those are different.

    So do the dynamic symlink permission handling just for symlinks, making
    the fdinfo files once more appear as the proper regular files they are.

    Of course, Al Viro argued (probably correctly) that we shouldn't do the
    symlink permission games at all, and make the symlinks always just be
    the normal 'lrwxrwxrwx'. That would have avoided this issue too, but
    since somebody noticed that the permissions had changed (which was the
    reason for that original commit 30a08bf2d31d in the first place), people
    do apparently use this feature.

    [ Basically, you can use the symlink permission data as a cheap "fdinfo"
    replacement, since you see whether the file is open for reading and/or
    writing by just looking at st_mode of the symlink. So the feature
    does make sense, even if the pain it has caused means we probably
    shouldn't have done it to begin with. ]

    Reported-and-tested-by: Cyrill Gorcunov
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

04 Jun, 2012

6 commits

  • This is useful for SoCs whose I2C module's signals can be routed to
    different sets of pins at run-time, using the pinctrl API.

    +-----+ +-----+
    | dev | | dev |
    +------------------------+ +-----+ +-----+
    | SoC | | |
    | /----|------+--------+
    | +---+ +------+ | child bus A, on first set of pins
    | |I2C|---|Pinmux| |
    | +---+ +------+ | child bus B, on second set of pins
    | \----|------+--------+--------+
    | | | | |
    +------------------------+ +-----+ +-----+ +-----+
    | dev | | dev | | dev |
    +-----+ +-----+ +-----+

    Signed-off-by: Stephen Warren
    Acked-by: Linus Walleij
    Acked-by: Rob Herring
    Signed-off-by: Wolfram Sang

    Stephen Warren
     
  • CMA has been enabled unconditionally on all ARMv6+ systems to solve the
    long standing issue of double kernel mappings for all dma coherent
    buffers. This however created a dependency on CONFIG_EXPERIMENTAL for
    the whole ARM architecture what should be really avoided. This patch
    removes this dependency and lets one use old, well-tested dma-mapping
    implementation also on ARMv6+ systems without the need to use
    EXPERIMENTAL stuff.

    Reported-by: Russell King
    Signed-off-by: Marek Szyprowski

    Marek Szyprowski
     
  • Should be 'exynos5_xxx' instead of 'exonys5_xxx'.

    It happened at the commit 30b842889eea ("Merge tag 'soc2' of
    git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc")
    during v3.5 merge window.

    Signed-off-by: Kukjin Kim
    [ My bad - Linus ]
    Signed-off-by: Linus Torvalds

    Kukjin Kim
     
  • Pull some left-over PM patches from Rafael J. Wysocki.

    * 'pm-acpi' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    ACPI / PM: Make acpi_pm_device_sleep_state() follow the specification
    ACPI / PM: Make __acpi_bus_get_power() cover D3cold correctly
    ACPI / PM: Fix error messages in drivers/acpi/bus.c
    rtc-cmos / PM: report wakeup event on ACPI RTC alarm
    ACPI / PM: Generate wakeup events on fixed power button

    Linus Torvalds
     
  • This reverts commit 5ceb9ce6fe9462a298bb2cd5c9f1ca6cb80a0199.

    That commit seems to be the cause of the mm compation list corruption
    issues that Dave Jones reported. The locking (or rather, absense
    there-of) is dubious, as is the use of the 'page' variable once it has
    been found to be outside the pageblock range.

    So revert it for now, we can re-visit this for 3.6. If we even need to:
    as Minchan Kim says, "The patch wasn't a bug fix and even test workload
    was very theoretical".

    Reported-and-tested-by: Dave Jones
    Acked-by: Hugh Dickins
    Acked-by: KOSAKI Motohiro
    Acked-by: Minchan Kim
    Cc: Bartlomiej Zolnierkiewicz
    Cc: Kyungmin Park
    Cc: Andrew Morton
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • New tmpfs use of !PageUptodate pages for fallocate() is triggering the
    WARNING: at mm/page-writeback.c:1990 when __set_page_dirty_nobuffers()
    is called from migrate_page_copy() for compaction.

    It is anomalous that migration should use __set_page_dirty_nobuffers()
    on an address_space that does not participate in dirty and writeback
    accounting; and this has also been observed to insert surprising dirty
    tags into a tmpfs radix_tree, despite tmpfs not using tags at all.

    We should probably give migrate_page_copy() a better way to preserve the
    tag and migrate accounting info, when mapping_cap_account_dirty(). But
    that needs some more work: so in the interim, avoid the warning by using
    a simple SetPageDirty on PageSwapBacked pages.

    Reported-and-tested-by: Dave Jones
    Signed-off-by: Hugh Dickins
    Signed-off-by: Linus Torvalds

    Hugh Dickins