15 Jan, 2013

1 commit

  • Pull staging fixes from Greg Kroah-Hartman:
    "Here are a number of small fixes to staging drivers for your 3.8-rc3
    tree.

    Well, the omapdrm fixes aren't really "small" but they were waiting on
    a number of other drm patches to go in through the drm tree, and got
    delayed by my vacation over the holidays. They are totally
    self-contained, everyone involved have acked them, and they fix issues
    that people have been having with the driver.

    Other than that one, it's a bunch of tiny bugfixes for a number of
    reported issues.

    Signed-off-by: Greg Kroah-Hartman "

    * tag 'staging-3.8-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (36 commits)
    staging: zram: fix invalid memory references during disk write
    staging: tidspbridge: use prepare/unprepare on dsp clocks
    staging: tidspbridge: Fix build breakage due to splitting CM functions.
    staging: comedi: comedi_test: fix race when cancelling command
    staging: comedi: Kconfig: COMEDI_NI_AT_A2150 should select COMEDI_FC
    staging: comedi: prevent auto-unconfig of manually configured devices
    staging: comedi: fix minimum AO period for NI 625x and NI 628x
    staging: vme_pio2: fix oops on module unloading
    staging: speakup: avoid out-of-range access in synth_add()
    staging: speakup: avoid out-of-range access in synth_init()
    staging: rtl8192e: Fix failure to check pci_map_single()
    staging: rtl8187se: Fix failure to check pci_map_single()
    staging: drm/imx: fix double free bug in error path
    staging: drm/imx: several bug fixes
    staging: drm/imx: check return value of ipu_reset()
    staging: drm/omap: fix flags in dma buf exporting
    staging: drm/omap: use omapdss low level API
    staging/fwserial: Update TODO file per reviewer comments
    staging/fwserial: Limit tx/rx to 1394-2008 spec maximum
    staging/fwserial: Refine Kconfig help text
    ...

    Linus Torvalds
     

14 Jan, 2013

1 commit

  • Fixes a bug introduced by commit c8f2f0db1 ("zram: Fix handling
    of incompressible pages") which caused invalid memory references
    during disk write. Invalid references could occur in two cases:
    - Incoming data expands on compression: In this case, reference was
    made to kunmap()'ed bio page.
    - Partial (non PAGE_SIZE) write with incompressible data: In this
    case, reference was made to a kfree()'ed buffer.

    Fixes bug 50081:
    https://bugzilla.kernel.org/show_bug.cgi?id=50081

    Signed-off-by: Nitin Gupta
    Cc: stable
    Reported-by: Mihail Kasadjikov
    Reported-by: Tomas M
    Reviewed-by: Minchan Kim
    Signed-off-by: Greg Kroah-Hartman

    Nitin Gupta
     

08 Jan, 2013

25 commits

  • Increasing ref counts of both dma-buf and gem for imported dma-buf come from gem
    makes memory leak. release function of dma-buf cannot be called because f_count
    of dma-buf increased by importing gem and gem ref count cannot be decrease
    because of exported dma-buf.

    So I add dma_buf_put() for imported gem come from its own gem into each drivers
    having prime_import and prime_export capabilities. With this, only gem ref
    count is increased if importing gem exported from gem of same driver.

    Signed-off-by: Seung-Woo Kim
    Signed-off-by: Kyungmin.park
    Cc: Inki Dae
    Cc: Daniel Vetter
    Cc: Rob Clark
    Cc: Alex Deucher
    Cc: stable
    Signed-off-by: Dave Airlie

    Seung-Woo Kim
     
  • This solves runtime failures while trying to enable WDT3 related
    functionality on firmware load, however it does affect other clocks
    controlled by the driver. Seen on 3.8-rc1.

    CCF provides clk_prepare and clk_unprepare for enable and disable
    operations respectively, this needs to be called in the correct
    order while handling clocks.

    Code path to enable/disable dsp clocks can still be reached from an
    atomic context, hence we can't use clk_prepare_enable and
    clk_disable_unprepare yet.

    Signed-off-by: Omar Ramirez Luna
    Signed-off-by: Greg Kroah-Hartman

    Omar Ramirez Luna
     
  • Commit ff4ae5d (ARM: OMAP2+: CM/hwmod: split CM functions into OMAP2, OMAP3-specific files)
    resulted in a build breakage for tidspbridge driver.

    ...
    CC [M] drivers/staging/tidspbridge/core/tiomap3430.o
    staging/tidspbridge/core/tiomap3430.c: In function ‘bridge_brd_start’:
    staging/tidspbridge/core/tiomap3430.c:550:24: error: ‘OMAP3430_CM_AUTOIDLE_PLL’
    undeclared (first use in this function)
    make[3]: *** [drivers/staging/tidspbridge/core/tiomap3430.o] Error 1
    ...

    Fix this by including the appropriate header file.

    Signed-off-by: Enric Balletbo i Serra
    Signed-off-by: Greg Kroah-Hartman

    Enric Balletbo i Serra
     
  • Éric Piel reported a kernel oops in the "comedi_test" module. It was a
    NULL pointer dereference within `waveform_ai_interrupt()` (actually a
    timer function) that sometimes occurred when a running asynchronous
    command is cancelled (either by the `COMEDI_CANCEL` ioctl or by closing
    the device file).

    This seems to be a race between the caller of `waveform_ai_cancel()`
    which on return from that function goes and tears down the running
    command, and the timer function which uses the command. In particular,
    `async->cmd.chanlist` gets freed (and the pointer set to NULL) by
    `do_become_nonbusy()` in "comedi_fops.c" but a previously scheduled
    `waveform_ai_interrupt()` timer function will dereference that pointer
    regardless, leading to the oops.

    Fix it by replacing the `del_timer()` call in `waveform_ai_cancel()`
    with `del_timer_sync()`.

    Signed-off-by: Ian Abbott
    Reported-by: Éric Piel
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Ian Abbott
     
  • The 'ni_at_a2150' module links to `cfc_write_to_buffer` in the
    'comedi_fc' module, so selecting 'COMEDI_NI_AT_A2150' in the kernel config
    needs to also select 'COMEDI_FC'.

    Signed-off-by: Ian Abbott
    Cc: stable # 3.6+
    Signed-off-by: Greg Kroah-Hartman

    Ian Abbott
     
  • When a low-level comedi driver auto-configures a device, a `struct
    comedi_dev_file_info` is allocated (as well as a `struct
    comedi_device`) by `comedi_alloc_board_minor()`. A pointer to the
    hardware `struct device` is stored as a cookie in the `struct
    comedi_dev_file_info`. When the low-level comedi driver
    auto-unconfigures the device, `comedi_auto_unconfig()` uses the cookie
    to find the `struct comedi_dev_file_info` so it can detach the comedi
    device from the driver, clean it up and free it.

    A problem arises if the user manually unconfigures and reconfigures the
    comedi device using the `COMEDI_DEVCONFIG` ioctl so that is no longer
    associated with the original hardware device. The problem is that the
    cookie is not cleared, so that a call to `comedi_auto_unconfig()` from
    the low-level driver will still find it, detach it, clean it up and free
    it.

    Stop this problem occurring by always clearing the `hardware_device`
    cookie in the `struct comedi_dev_file_info` whenever the
    `COMEDI_DEVCONFIG` ioctl call is successful.

    Signed-off-by: Ian Abbott
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Ian Abbott
     
  • The minimum period was set to 357 ns, while the divider for these boards is 50
    ns. This prevented to output at maximum speed as ni_ao_cmdtest() would return
    357 but would not accept it.

    Not sure why it was set to 357 ns (this was done before the git history,
    which starts 5 years ago). My guess is that it comes from reading the
    specification stating a 2.8 MHz rate (~ 357 ns). The latest
    specification states a 2.86 MHz rate (~ 350 ns), which makes a lot
    more sense.

    Tested on a pci-6251.

    Signed-off-by: Éric Piel
    Acked-By: Ian Abbott
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Éric Piel
     
  • This patch forbids loading vme_pio2 module without specifing "num_bus" parameter.
    Otherwise on module unloading pio2_exit() calls vme_unregister_driver() for not
    registered pio2_driver.

    Signed-off-by: Konstantin Khlebnikov
    Cc: Manohar Vanga
    Acked-by: Martyn Welch
    Signed-off-by: Greg Kroah-Hartman

    Konstantin Khlebnikov
     
  • Check that array index is in-bounds before accessing the synths[] array.

    Signed-off-by: Samuel Thibault
    Cc: stable
    Cc: Nickolai Zeldovich
    Signed-off-by: Greg Kroah-Hartman

    Samuel Thibault
     
  • Check that array index is in-bounds before accessing the synths[] array.

    Signed-off-by: Nickolai Zeldovich
    Cc: stable
    Cc: Samuel Thibault
    Signed-off-by: Greg Kroah-Hartman

    Nickolai Zeldovich
     
  • Beginning with kernel 3.8, the DMA mapping routines issue a warning
    for the first call to pci_map_single() that is not checked with a
    pci_dma_mapping_error() call.

    Signed-off-by: Larry Finger
    Signed-off-by: Greg Kroah-Hartman

    Larry Finger
     
  • Beginning with kernel 3.8, the DMA mapping routines issue a warning
    for the first call to pci_map_single() that is not checked with a
    pci_dma_mapping_error() call.

    Signed-off-by: Larry Finger
    Signed-off-by: Greg Kroah-Hartman

    Larry Finger
     
  • kfree(imx_drm_encoder) is already being called at the label
    'err_register'.

    Signed-off-by: Lothar Waßmann
    Acked-by: Sascha Hauer
    Signed-off-by: Greg Kroah-Hartman

    Lothar Waßmann
     
  • - convert bogus IS_ERR_OR_NULL() to IS_ERR()
    - fix copy/paste error
    - check return value of ipu_crtc_init()

    Signed-off-by: Lothar Waßmann
    Acked-by: Sascha Hauer
    Signed-off-by: Greg Kroah-Hartman

    Lothar Waßmann
     
  • ipu_reset() can fail with a timeout. Check the return value and act
    appropriately.

    Signed-off-by: Lothar Waßmann
    Acked-by: Sascha Hauer
    Signed-off-by: Greg Kroah-Hartman

    Lothar Waßmann
     
  • This patch fixes flags passed to dma buf exporting.

    Signed-off-by: Seung-Woo Kim
    Signed-off-by: Rob Clark
    Signed-off-by: Greg Kroah-Hartman

    Rob Clark
     
  • This patch changes the omapdrm KMS to bypass the omapdss "compat"
    layer and use the core omapdss API directly. This solves some layering
    issues that would cause unpin confusion vs GO bit status, because we
    would not know whether a particular pageflip or overlay update has hit
    the screen or not. Now instead we explicitly manage the GO bits in
    dispc and handle the vblank/framedone interrupts ourself so that we
    always know which buffers are being scanned out at any given time, and
    so on.

    As an added bonus, we no longer leave the last overlay buffer pinned
    when the display is disabled, and have been able to add the previously
    missing vblank event handling.

    v1: original
    v2: rebased on latest staging-next and omapdss patches from Tomi and
    review comments from Archit Taneja

    Signed-off-by: Rob Clark
    Reviewed-by: Archit Taneja
    Reviewed-by: Sumit Semwal
    Signed-off-by: Greg Kroah-Hartman

    Rob Clark
     
  • Pursuant to this review https://lkml.org/lkml/2012/11/12/500
    by Stefan Richter, update the TODO file.
    - Clarify purpose of TODO file
    - Remove firewire item #4. As discussed in this conversation
    https://lkml.org/lkml/2012/11/13/564 knowing the AR buffer size
    is not a hard requirement. The required rx buffer size can be
    determined experimentally.
    - Remove firewire item #5. This was a private note for further
    experimentation.
    - Change firewire item #1. Change suggested header from uapi header
    to kernel-only header.

    Signed-off-by: Peter Hurley
    Acked-by: Stefan Richter
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • Per this conversation https://lkml.org/lkml/2012/11/27/587
    limit the maximum transmission to the IEEE 1394-2008 specification
    maximum size of 4096 bytes for asynchronous packets.

    Signed-off-by: Peter Hurley
    Acked-by: Stefan Richter
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • Users should be informed upfront that this is a Linux-only affair
    currently.

    Signed-off-by: Peter Hurley
    Acked-by: Stefan Richter
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • …jic23/iio into staging-linus

    Jonathan says:

    First round of fixes for IIO post 3.8-rc1.

    A set of worthy if rather dull little fixes.

    * A whole set of incorrect error handling on regulator voltage requests.
    * An error in the probe path for max1363.
    * A couple of Kconfig issues with missing/ignored dependencies.
    * A nasty shift vs compare typo in adf4350
    * Bug fixes for a silly error that prevents at91_adc driver building.

    Greg Kroah-Hartman
     
  • The ISY IWL 1000 USB WLAN stick with USB ID 050d:11f1 is a clone of
    the Belkin F7D1101 V1 device.

    Reported-by: Thomas Hartmann
    Signed-off-by: Larry Finger
    Cc: Thomas Hartmann
    Cc: Stable
    Signed-off-by: Greg Kroah-Hartman

    Larry Finger
     
  • The commit c8442118 introduced a struct wireless_dev pointer
    as a second argument of the function pointers set_tx_power
    and get_tx_power. This patch adds the missing arguments for
    the wlan-ng driver.

    Sparse warnings:

    drivers/staging/wlan-ng/cfg80211.c:735:25: warning:
    incorrect type in initializer (incompatible argument 2
    (different base types))
    drivers/staging/wlan-ng/cfg80211.c:735:25:
    expected int ( *set_tx_power )( ... )
    drivers/staging/wlan-ng/cfg80211.c:735:25:
    got int ( extern [toplevel] * )( ... )

    drivers/staging/wlan-ng/cfg80211.c:736:25: warning:
    incorrect type in initializer (incompatible argument 2
    (different base types))
    drivers/staging/wlan-ng/cfg80211.c:736:25:
    expected int ( *get_tx_power )( ... )
    drivers/staging/wlan-ng/cfg80211.c:736:25:
    got int ( extern [toplevel] * )( ... )

    drivers/staging/wlan-ng/cfg80211.c:735:2: warning:
    initialization from incompatible pointer type [enabled by default]

    drivers/staging/wlan-ng/cfg80211.c:735:2: warning:
    (near initialization for ‘prism2_usb_cfg_ops.set_tx_power’)
    [enabled by default]

    drivers/staging/wlan-ng/cfg80211.c:736:2: warning:
    initialization from incompatible pointer type [enabled by default]

    drivers/staging/wlan-ng/cfg80211.c:736:2: warning:
    (near initialization for ‘prism2_usb_cfg_ops.get_tx_power’)
    [enabled by default]

    Signed-off-by: Emil Goode
    Signed-off-by: Greg Kroah-Hartman

    Emil Goode
     
  • Some of the drivers that the sb105x SystemBase handles are for parallel
    port cards. If PARPORT isn't configured, the build fails. Only
    initialize the parallel port cards if PARPORT is configured in.

    Reported-by: Wu Fengguang
    Signed-off-by: Steven Rostedt
    Signed-off-by: Greg Kroah-Hartman

    Steven Rostedt
     
  • The sb105x SystemBase PCI UART driver in staging has code specific for
    x86. This breaks allyesconfig builds for other archs. For now, the quick
    fix is simply to make this driver depend on x86.

    When I get time, I'll swap this card out of my main machine and put it
    into my PowerPC64 box, and get it working there. Then it may become a
    good samaritan and play nice with other archs.

    Reported-by: Stephen Rothwell
    Signed-off-by: Steven Rostedt
    Signed-off-by: Greg Kroah-Hartman

    Steven Rostedt
     

27 Dec, 2012

1 commit

  • Commit 9d5e9fdf ("staging:iio:adis16260: Use adis library") switched over the
    adis16260 driver to use the common adis library but neglected to update the
    Kconfig entry to reflect the change.

    This leads to the following compile error if no other driver selects the adis
    library:

    drivers/built-in.o: In function `adis16260_write_frequency':
    adis16260_core.c:(.text+0x5a83bf): undefined reference to `adis_write_reg_8'
    drivers/built-in.o: In function `adis16260_read_frequency':
    adis16260_core.c:(.text+0x5a8433): undefined reference to `adis_read_reg_16'
    drivers/built-in.o: In function `adis16260_write_raw':
    adis16260_core.c:(.text+0x5a8538): undefined reference to `adis_write_reg_16'
    adis16260_core.c:(.text+0x5a856b): undefined reference to `adis_write_reg_16'
    drivers/built-in.o: In function `adis16260_read_raw':
    adis16260_core.c:(.text+0x5a85d3): undefined reference to `adis_single_conversion'
    adis16260_core.c:(.text+0x5a873e): undefined reference to `adis_read_reg_16'
    adis16260_core.c:(.text+0x5a87fb): undefined reference to `adis_read_reg_16'
    drivers/built-in.o: In function `adis16260_probe':
    adis16260_core.c:(.devinit.text+0x5c6b8): undefined reference to `adis_init'
    adis16260_core.c:(.devinit.text+0x5c799): undefined reference to `adis_initial_startup'
    drivers/built-in.o: In function `adis16260_remove':
    adis16260_core.c:(.devexit.text+0x9943): undefined reference to `adis_write_reg_16'

    This patch updates the adis16260 Kconfig entry to select the adis library.

    Reported-by: Fengguang Wu
    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Jonathan Cameron

    Lars-Peter Clausen
     

18 Dec, 2012

1 commit

  • Pull user namespace changes from Eric Biederman:
    "While small this set of changes is very significant with respect to
    containers in general and user namespaces in particular. The user
    space interface is now complete.

    This set of changes adds support for unprivileged users to create user
    namespaces and as a user namespace root to create other namespaces.
    The tyranny of supporting suid root preventing unprivileged users from
    using cool new kernel features is broken.

    This set of changes completes the work on setns, adding support for
    the pid, user, mount namespaces.

    This set of changes includes a bunch of basic pid namespace
    cleanups/simplifications. Of particular significance is the rework of
    the pid namespace cleanup so it no longer requires sending out
    tendrils into all kinds of unexpected cleanup paths for operation. At
    least one case of broken error handling is fixed by this cleanup.

    The files under /proc//ns/ have been converted from regular files
    to magic symlinks which prevents incorrect caching by the VFS,
    ensuring the files always refer to the namespace the process is
    currently using and ensuring that the ptrace_mayaccess permission
    checks are always applied.

    The files under /proc//ns/ have been given stable inode numbers
    so it is now possible to see if different processes share the same
    namespaces.

    Through the David Miller's net tree are changes to relax many of the
    permission checks in the networking stack to allowing the user
    namespace root to usefully use the networking stack. Similar changes
    for the mount namespace and the pid namespace are coming through my
    tree.

    Two small changes to add user namespace support were commited here adn
    in David Miller's -net tree so that I could complete the work on the
    /proc//ns/ files in this tree.

    Work remains to make it safe to build user namespaces and 9p, afs,
    ceph, cifs, coda, gfs2, ncpfs, nfs, nfsd, ocfs2, and xfs so the
    Kconfig guard remains in place preventing that user namespaces from
    being built when any of those filesystems are enabled.

    Future design work remains to allow root users outside of the initial
    user namespace to mount more than just /proc and /sys."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (38 commits)
    proc: Usable inode numbers for the namespace file descriptors.
    proc: Fix the namespace inode permission checks.
    proc: Generalize proc inode allocation
    userns: Allow unprivilged mounts of proc and sysfs
    userns: For /proc/self/{uid,gid}_map derive the lower userns from the struct file
    procfs: Print task uids and gids in the userns that opened the proc file
    userns: Implement unshare of the user namespace
    userns: Implent proc namespace operations
    userns: Kill task_user_ns
    userns: Make create_new_namespaces take a user_ns parameter
    userns: Allow unprivileged use of setns.
    userns: Allow unprivileged users to create new namespaces
    userns: Allow setting a userns mapping to your current uid.
    userns: Allow chown and setgid preservation
    userns: Allow unprivileged users to create user namespaces.
    userns: Ignore suid and sgid on binaries if the uid or gid can not be mapped
    userns: fix return value on mntns_install() failure
    vfs: Allow unprivileged manipulation of the mount namespace.
    vfs: Only support slave subtrees across different user namespaces
    vfs: Add a user namespace reference from struct mnt_namespace
    ...

    Linus Torvalds
     

16 Dec, 2012

1 commit

  • Pull fbdev changes from Tomi Valkeinen:
    "OMAPDSS changes, including:
    - use dynanic debug prints
    - OMAP platform dependency removals
    - Creation of compat-layer, helping us to improve omapdrm
    - Misc cleanups, aiming to make omadss more in line with the upcoming
    common display framework

    Exynos DP changes for the 3.8 merge window:
    - Device Tree support for Samsung Exynos DP
    - SW Link training is cleaned up.
    - HPD interrupt is supported.

    Samsung Framebuffer changes for the 3.8 merge window:
    - The bit definitions of header file are updated.
    - Some minor typos are fixed.
    - Some minor bugs of s3c_fb_check_var() are fixed.

    FB related changes for SH Mobile, Freescale DIU

    Add support for the Solomon SSD1307 OLED Controller"

    * tag 'fbdev-for-3.8' of git://gitorious.org/linux-omap-dss2/linux: (191 commits)
    OMAPDSS: fix TV-out issue with DSI PLL
    Revert "OMAPFB: simplify locking"
    OMAPFB: remove silly loop in fb2display()
    OMAPFB: fix error handling in omapfb_find_best_mode()
    OMAPFB: use devm_kzalloc to allocate omapfb2_device
    OMAPDSS: DISPC: remove dispc fck uses
    OMAPDSS: DISPC: get dss clock rate from dss driver
    drivers/video/console/softcursor.c: remove redundant NULL check before kfree()
    drivers/video: add support for the Solomon SSD1307 OLED Controller
    OMAPDSS: use omapdss_compat_init() in other drivers
    OMAPDSS: export dispc functions
    OMAPDSS: export dss_feat functions
    OMAPDSS: export dss_mgr_ops functions
    OMAPDSS: separate compat files in the Makefile
    OMAPDSS: move display sysfs init to compat layer
    OMAPDSS: DPI: use dispc's check_timings
    OMAPDSS: DISPC: add dispc_ovl_check()
    OMAPDSS: move irq handling to dispc-compat
    OMAPDSS: move omap_dispc_wait_for_irq_interruptible_timeout to dispc-compat.c
    OMAPDSS: move blocking mgr enable/disable to compat layer
    ...

    Conflicts:
    arch/arm/mach-davinci/devices-da8xx.c
    arch/arm/plat-omap/common.c
    drivers/media/platform/omap/omap_vout.c

    Linus Torvalds
     

14 Dec, 2012

2 commits

  • Pull media updates from Mauro Carvalho Chehab:

    - Missing MAINTAINERS entries were added for several drivers

    - Adds V4L2 support for DMABUF handling, allowing zero-copy buffer
    sharing between V4L2 devices and GPU

    - Got rid of all warnings when compiling with W=1 on x86

    - Add a new driver for Exynos hardware (s3c-camif)

    - Several bug fixes, cleanups and driver improvements

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (243 commits)
    [media] omap3isp: Replace cpu_is_omap3630() with ISP revision check
    [media] omap3isp: Prepare/unprepare clocks before/after enable/disable
    [media] omap3isp: preview: Add support for 8-bit formats at the sink pad
    [media] omap3isp: Replace printk with dev_*
    [media] omap3isp: Find source pad from external entity
    [media] omap3isp: Configure CSI-2 phy based on platform data
    [media] omap3isp: Add PHY routing configuration
    [media] omap3isp: Add CSI configuration registers from control block to ISP resources
    [media] omap3isp: Remove unneeded module memory address definitions
    [media] omap3isp: Use monotonic timestamps for statistics buffers
    [media] uvcvideo: Fix control value clamping for unsigned integer controls
    [media] uvcvideo: Mark first output terminal as default video node
    [media] uvcvideo: Add VIDIOC_[GS]_PRIORITY support
    [media] uvcvideo: Return -ENOTTY for unsupported ioctls
    [media] uvcvideo: Set device_caps in VIDIOC_QUERYCAP
    [media] uvcvideo: Don't fail when an unsupported format is requested
    [media] uvcvideo: Return -EACCES when trying to access a read/write-only control
    [media] uvcvideo: Set error_idx properly for extended controls API failures
    [media] rtl28xxu: add NOXON DAB/DAB+ USB dongle rev 2
    [media] fc2580: write some registers conditionally
    ...

    Linus Torvalds
     
  • Pull trivial branch from Jiri Kosina:
    "Usual stuff -- comment/printk typo fixes, documentation updates, dead
    code elimination."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)
    HOWTO: fix double words typo
    x86 mtrr: fix comment typo in mtrr_bp_init
    propagate name change to comments in kernel source
    doc: Update the name of profiling based on sysfs
    treewide: Fix typos in various drivers
    treewide: Fix typos in various Kconfig
    wireless: mwifiex: Fix typo in wireless/mwifiex driver
    messages: i2o: Fix typo in messages/i2o
    scripts/kernel-doc: check that non-void fcts describe their return value
    Kernel-doc: Convention: Use a "Return" section to describe return values
    radeon: Fix typo and copy/paste error in comments
    doc: Remove unnecessary declarations from Documentation/accounting/getdelays.c
    various: Fix spelling of "asynchronous" in comments.
    Fix misspellings of "whether" in comments.
    eisa: Fix spelling of "asynchronous".
    various: Fix spelling of "registered" in comments.
    doc: fix quite a few typos within Documentation
    target: iscsi: fix comment typos in target/iscsi drivers
    treewide: fix typo of "suport" in various comments and Kconfig
    treewide: fix typo of "suppport" in various comments
    ...

    Linus Torvalds
     

13 Dec, 2012

4 commits

  • OMAPDSS changes for 3.8, including:
    - use dynanic debug prints
    - OMAP platform dependency removals
    - Creation of compat-layer, helping us to improve omapdrm
    - Misc cleanups, aiming to make omadss more in line with the upcoming common
    display framework

    * tag 'omapdss-for-3.8' of git://gitorious.org/linux-omap-dss2/linux: (140 commits)
    OMAPDSS: fix TV-out issue with DSI PLL
    Revert "OMAPFB: simplify locking"
    OMAPFB: remove silly loop in fb2display()
    OMAPFB: fix error handling in omapfb_find_best_mode()
    OMAPFB: use devm_kzalloc to allocate omapfb2_device
    OMAPDSS: DISPC: remove dispc fck uses
    OMAPDSS: DISPC: get dss clock rate from dss driver
    OMAPDSS: use omapdss_compat_init() in other drivers
    OMAPDSS: export dispc functions
    OMAPDSS: export dss_feat functions
    OMAPDSS: export dss_mgr_ops functions
    OMAPDSS: separate compat files in the Makefile
    OMAPDSS: move display sysfs init to compat layer
    OMAPDSS: DPI: use dispc's check_timings
    OMAPDSS: DISPC: add dispc_ovl_check()
    OMAPDSS: move irq handling to dispc-compat
    OMAPDSS: move omap_dispc_wait_for_irq_interruptible_timeout to dispc-compat.c
    OMAPDSS: move blocking mgr enable/disable to compat layer
    OMAPDSS: manage framedone irq with mgr ops
    OMAPDSS: add manager ops
    ...

    Tomi Valkeinen
     
  • Pull big execve/kernel_thread/fork unification series from Al Viro:
    "All architectures are converted to new model. Quite a bit of that
    stuff is actually shared with architecture trees; in such cases it's
    literally shared branch pulled by both, not a cherry-pick.

    A lot of ugliness and black magic is gone (-3KLoC total in this one):

    - kernel_thread()/kernel_execve()/sys_execve() redesign.

    We don't do syscalls from kernel anymore for either kernel_thread()
    or kernel_execve():

    kernel_thread() is essentially clone(2) with callback run before we
    return to userland, the callbacks either never return or do
    successful do_execve() before returning.

    kernel_execve() is a wrapper for do_execve() - it doesn't need to
    do transition to user mode anymore.

    As a result kernel_thread() and kernel_execve() are
    arch-independent now - they live in kernel/fork.c and fs/exec.c
    resp. sys_execve() is also in fs/exec.c and it's completely
    architecture-independent.

    - daemonize() is gone, along with its parts in fs/*.c

    - struct pt_regs * is no longer passed to do_fork/copy_process/
    copy_thread/do_execve/search_binary_handler/->load_binary/do_coredump.

    - sys_fork()/sys_vfork()/sys_clone() unified; some architectures
    still need wrappers (ones with callee-saved registers not saved in
    pt_regs on syscall entry), but the main part of those suckers is in
    kernel/fork.c now."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (113 commits)
    do_coredump(): get rid of pt_regs argument
    print_fatal_signal(): get rid of pt_regs argument
    ptrace_signal(): get rid of unused arguments
    get rid of ptrace_signal_deliver() arguments
    new helper: signal_pt_regs()
    unify default ptrace_signal_deliver
    flagday: kill pt_regs argument of do_fork()
    death to idle_regs()
    don't pass regs to copy_process()
    flagday: don't pass regs to copy_thread()
    bfin: switch to generic vfork, get rid of pointless wrappers
    xtensa: switch to generic clone()
    openrisc: switch to use of generic fork and clone
    unicore32: switch to generic clone(2)
    score: switch to generic fork/vfork/clone
    c6x: sanitize copy_thread(), get rid of clone(2) wrapper, switch to generic clone()
    take sys_fork/sys_vfork/sys_clone prototypes to linux/syscalls.h
    mn10300: switch to generic fork/vfork/clone
    h8300: switch to generic fork/vfork/clone
    tile: switch to generic clone()
    ...

    Conflicts:
    arch/microblaze/include/asm/Kbuild

    Linus Torvalds
     
  • Pull ARM SoC cleanups on various subarchitectures from Olof Johansson:
    "Cleanup patches for various ARM platforms and some of their associated
    drivers. There's also a branch in here that enables Freescale i.MX to
    be part of the multiplatform support -- the first "big" SoC that is
    moved over (more multiplatform work comes in a separate branch later
    during the merge window)."

    Conflicts fixed as per Olof, including a silent semantic one in
    arch/arm/mach-omap2/board-generic.c (omap_prcm_restart() was renamed to
    omap3xxx_restart(), and a new user of the old name was added).

    * tag 'cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (189 commits)
    ARM: omap: fix typo on timer cleanup
    ARM: EXYNOS: Remove unused regs-mem.h file
    ARM: EXYNOS: Remove unused non-dt support for dwmci controller
    ARM: Kirkwood: Use hw_pci.ops instead of hw_pci.scan
    ARM: OMAP3: cm-t3517: use GPTIMER for system clock
    ARM: OMAP2+: timer: remove CONFIG_OMAP_32K_TIMER
    ARM: SAMSUNG: use devm_ functions for ADC driver
    ARM: EXYNOS: no duplicate mask/unmask in eint0_15
    ARM: S3C24XX: SPI clock channel setup is fixed for S3C2443
    ARM: EXYNOS: Remove i2c0 resource information and setting of device names
    ARM: Kirkwood: checkpatch cleanups
    ARM: Kirkwood: Fix sparse warnings.
    ARM: Kirkwood: Remove unused includes
    ARM: kirkwood: cleanup lsxl board includes
    ARM: integrator: use BUG_ON where possible
    ARM: integrator: push down SC dependencies
    ARM: integrator: delete static UART1 mapping
    ARM: integrator: delete SC mapping on the CP
    ARM: integrator: remove static CP syscon mapping
    ARM: integrator: remove static AP syscon mapping
    ...

    Linus Torvalds
     
  • Pull ARM SoC Header cleanups from Olof Johansson:
    "This is a collection of header file cleanups, mostly for OMAP and
    AT91, that keeps moving the platforms in the direction of
    multiplatform by removing the need for mach-dependent header files
    used in drivers and other places."

    Fix up mostly trivial conflicts as per Olof.

    * tag 'headers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (106 commits)
    ARM: OMAP2+: Move iommu/iovmm headers to platform_data
    ARM: OMAP2+: Make some definitions local
    ARM: OMAP2+: Move iommu2 to drivers/iommu/omap-iommu2.c
    ARM: OMAP2+: Move plat/iovmm.h to include/linux/omap-iommu.h
    ARM: OMAP2+: Move iopgtable header to drivers/iommu/
    ARM: OMAP: Merge iommu2.h into iommu.h
    atmel: move ATMEL_MAX_UART to platform_data/atmel.h
    ARM: OMAP: Remove omap_init_consistent_dma_size()
    arm: at91: move at91rm9200 rtc header in drivers/rtc
    arm: at91: move reset controller header to arm/arm/mach-at91
    arm: at91: move pit define to the driver
    arm: at91: move at91_shdwc.h to arch/arm/mach-at91
    arm: at91: move board header to arch/arm/mach-at91
    arn: at91: move at91_tc.h to arch/arm/mach-at91
    arm: at91 move at91_aic.h to arch/arm/mach-at91
    arm: at91 move board.h to arch/arm/mach-at91
    arm: at91: move platfarm_data to include/linux/platform_data/atmel.h
    arm: at91: drop machine defconfig
    ARM: OMAP: Remove NEED_MACH_GPIO_H
    ARM: OMAP: Remove unnecessary mach and plat includes
    ...

    Linus Torvalds
     

12 Dec, 2012

4 commits

  • Pull thermal management update from Zhang Rui:
    "Highlights:

    - Introduction of thermal policy support, together with three new
    thermal governors, including step_wise, user_space, fire_share.

    - Introduction of ST-Ericsson db8500_thermal driver and ST-Ericsson
    db8500_cpufreq_cooling driver.

    - Thermal Kconfig file and Makefile refactor.

    - Fixes for generic thermal layer, generic cpucooling, rcar thermal
    driver and Exynos thermal driver."

    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (36 commits)
    Thermal: Fix DEFAULT_THERMAL_GOVERNOR
    Thermal: fix a NULL pointer dereference when generic thermal layer is built as a module
    thermal: rcar: add rcar_zone_to_priv() macro
    thermal: rcar: fixup the unit of temperature
    thermal: cpu cooling: allow module builds
    thermal: cpu cooling: use const parameter while registering
    Thermal: Add ST-Ericsson DB8500 thermal properties and platform data.
    Thermal: Add ST-Ericsson DB8500 thermal driver.
    drivers/thermal/Makefile refactor
    Exynos: Add missing dependency
    Refactor drivers/thermal/Kconfig
    thermal: cpu_cooling: Make 'notify_device' static
    Thermal: Remove the cooling_cpufreq_list.
    Thermal: fix bug of counting cpu frequencies.
    Thermal: add indent for code alignment.
    thermal: rcar_thermal: remove explicitly used devm_kfree/iounap()
    thermal: user_space: Add missing static storage class specifiers
    thermal: fair_share: Add missing static storage class specifiers
    thermal: step_wise: Add missing static storage class specifiers
    Thermal: Fix oops and unlocking in thermal_sys.c
    ...

    Linus Torvalds
     
  • Merge misc updates from Andrew Morton:
    "About half of most of MM. Going very early this time due to
    uncertainty over the coreautounifiednumasched things. I'll send the
    other half of most of MM tomorrow. The rest of MM awaits a slab merge
    from Pekka."

    * emailed patches from Andrew Morton: (71 commits)
    memory_hotplug: ensure every online node has NORMAL memory
    memory_hotplug: handle empty zone when online_movable/online_kernel
    mm, memory-hotplug: dynamic configure movable memory and portion memory
    drivers/base/node.c: cleanup node_state_attr[]
    bootmem: fix wrong call parameter for free_bootmem()
    avr32, kconfig: remove HAVE_ARCH_BOOTMEM
    mm: cma: remove watermark hacks
    mm: cma: skip watermarks check for already isolated blocks in split_free_page()
    mm, oom: fix race when specifying a thread as the oom origin
    mm, oom: change type of oom_score_adj to short
    mm: cleanup register_node()
    mm, mempolicy: remove duplicate code
    mm/vmscan.c: try_to_freeze() returns boolean
    mm: introduce putback_movable_pages()
    virtio_balloon: introduce migration primitives to balloon pages
    mm: introduce compaction and migration for ballooned pages
    mm: introduce a common interface for balloon pages mobility
    mm: redefine address_space.assoc_mapping
    mm: adjust address_space_operations.migratepage() return code
    arch/sparc/kernel/sys_sparc_64.c: s/COLOUR/COLOR/
    ...

    Linus Torvalds
     
  • The maximum oom_score_adj is 1000 and the minimum oom_score_adj is -1000,
    so this range can be represented by the signed short type with no
    functional change. The extra space this frees up in struct signal_struct
    will be used for per-thread oom kill flags in the next patch.

    Signed-off-by: David Rientjes
    Cc: KAMEZAWA Hiroyuki
    Cc: KOSAKI Motohiro
    Reviewed-by: Michal Hocko
    Cc: Anton Vorontsov
    Cc: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Rientjes
     
  • Pull TTY/Serial merge from Greg Kroah-Hartman:
    "Here's the big tty/serial tree set of changes for 3.8-rc1.

    Contained in here is a bunch more reworks of the tty port layer from
    Jiri and bugfixes from Alan, along with a number of other tty and
    serial driver updates by the various driver authors.

    Also, Jiri has been coerced^Wconvinced to be the co-maintainer of the
    TTY layer, which is much appreciated by me.

    All of these have been in the linux-next tree for a while.

    Signed-off-by: Greg Kroah-Hartman "

    Fixed up some trivial conflicts in the staging tree, due to the fwserial
    driver having come in both ways (but fixed up a bit in the serial tree),
    and the ioctl handling in the dgrp driver having been done slightly
    differently (staging tree got that one right, and removed both
    TIOCGSOFTCAR and TIOCSSOFTCAR).

    * tag 'tty-3.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (146 commits)
    staging: sb105x: fix potential NULL pointer dereference in mp_chars_in_buffer()
    staging/fwserial: Remove superfluous free
    staging/fwserial: Use WARN_ONCE when port table is corrupted
    staging/fwserial: Destruct embedded tty_port on teardown
    staging/fwserial: Fix build breakage when !CONFIG_BUG
    staging: fwserial: Add TTY-over-Firewire serial driver
    drivers/tty/serial/serial_core.c: clean up HIGH_BITS_OFFSET usage
    staging: dgrp: dgrp_tty.c: Audit the return values of get/put_user()
    staging: dgrp: dgrp_tty.c: Remove the TIOCSSOFTCAR ioctl handler from dgrp driver
    serial: ifx6x60: Add modem power off function in the platform reboot process
    serial: mxs-auart: unmap the scatter list before we copy the data
    serial: mxs-auart: disable the Receive Timeout Interrupt when DMA is enabled
    serial: max310x: Setup missing "can_sleep" field for GPIO
    tty/serial: fix ifx6x60.c declaration warning
    serial: samsung: add devicetree properties for non-Exynos SoCs
    serial: samsung: fix potential soft lockup during uart write
    tty: vt: Remove redundant null check before kfree.
    tty/8250 Add check for pci_ioremap_bar failure
    tty/8250 Add support for Commtech's Fastcom Async-335 and Fastcom Async-PCIe cards
    tty/8250 Add XR17D15x devices to the exar_handle_irq override
    ...

    Linus Torvalds