26 May, 2011

2 commits

  • Let i8k create an hwmon class device so that libsensors will expose
    the CPU temperature and fan speeds to monitoring applications.

    Signed-off-by: Jean Delvare
    Acked-by: Guenter Roeck
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Massimo Dal Zotto

    Jean Delvare
     
  • i8k uses lahf to read the flag register in 64-bit code; early x86-64
    CPUs, however, lack this instruction and we get an invalid opcode
    exception at runtime.
    Use pushf to load the flag register into the stack instead.

    Signed-off-by: Luca Tettamanti
    Reported-by: Jeff Rickman
    Tested-by: Jeff Rickman
    Tested-by: Harry G McGavran Jr
    Cc: stable@kernel.org
    Cc: Massimo Dal Zotto
    Signed-off-by: Jean Delvare

    Luca Tettamanti
     

25 May, 2011

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
    pcmcia: Make struct pcmcia_device_id const, sound drivers edition
    staging: pcmcia: Convert pcmcia_device_id declarations to const
    pcmcia: Convert pcmcia_device_id declarations to const
    pcmcia: Make declaration and uses of struct pcmcia_device_id const
    pcmcia/sa1100: put sa11x0_pcmcia_hw_init[] to .devinit.data

    Linus Torvalds
     
  • * 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (169 commits)
    drivers/gpu/drm/radeon/atom.c: fix warning
    drm/radeon/kms: bump kms version number
    drm/radeon/kms: properly set num banks for fusion asics
    drm/radeon/kms/atom: move dig phy init out of modesetting
    drm/radeon/kms/cayman: fix typo in register mask
    drm/radeon/kms: fix typo in spread spectrum code
    drm/radeon/kms: fix tile_config value reported to userspace on cayman.
    drm/radeon/kms: fix incorrect comparison in cayman setup code.
    drm/radeon/kms: add wait idle ioctl for eg->cayman
    drm/radeon/cayman: setup hdp to invalidate and flush when asked
    drm/radeon/evergreen/btc/fusion: setup hdp to invalidate and flush when asked
    agp/uninorth: Fix lockups with radeon KMS and >1x.
    drm/radeon/kms: the SS_Id field in the LCD table if for LVDS only
    drm/radeon/kms: properly set the CLK_REF bit for DCE3 devices
    drm/radeon/kms: fixup eDP connector handling
    drm/radeon/kms: bail early for eDP in hotplug callback
    drm/radeon/kms: simplify hotplug handler logic
    drm/radeon/kms: rewrite DP handling
    drm/radeon/kms/atom: add support for setting DP panel mode
    drm/radeon/kms: atombios.h updates for DP panel mode
    ...

    Linus Torvalds
     

24 May, 2011

1 commit


23 May, 2011

1 commit

  • apm_mutex is locked by a process (e.g. apm -s) at the start of apm_ioctl() and
    remains locked while pm_suspend() is called. Any subsequent process trying to
    ACK the suspend (e.g. apmd) is then blocked at the start of apm_ioctl(),
    causing the suspend to be delayed for 5 seconds in apm_suspend_notifier()
    while the ACK times out. In short, ACKs don't work.

    The driver's data structures are sufficiently protected by assorted locks. And
    pm_suspend() has its own mutex to prevent reentrancy. Consequently there is no
    obvious requirement for apm_mutex, which evolved from earlier BKL calls. So
    let's remove it.

    Signed-off-by: Paul Parsons
    Acked-by: Rafael J. Wysocki
    Signed-off-by: Jiri Kosina

    Paul Parsons
     

22 May, 2011

1 commit

  • This was based on a description by Ben Herrenschmidt:

    > I've removed that SBA reset from the normal TLB invalidation path and
    > left it only once after turning AGP on.

    About six months ago, he said:

    > I did it a bit differently, but yeah, you get the idea. I'm doing a
    > patch series so don't bother pushing things too hard yet.

    But I haven't seen anything from him about this since then, and people are
    regularly hitting these lockups, so here we are...

    Signed-off-by: Michel Dänzer
    Acked-by: Benjamin Herrenschmidt
    Signed-off-by: Dave Airlie

    Michel Dänzer
     

21 May, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (45 commits)
    crypto: caam - add support for sha512 variants of existing AEAD algorithms
    crypto: caam - remove unused authkeylen from caam_ctx
    crypto: caam - fix decryption shared vs. non-shared key setting
    crypto: caam - platform_bus_type migration
    crypto: aesni-intel - fix aesni build on i386
    crypto: aesni-intel - Merge with fpu.ko
    crypto: mv_cesa - make count_sgs() null-pointer proof
    crypto: mv_cesa - copy remaining bytes to SRAM only when needed
    crypto: mv_cesa - move digest state initialisation to a better place
    crypto: mv_cesa - fill inner/outer IV fields only in HMAC case
    crypto: mv_cesa - refactor copy_src_to_buf()
    crypto: mv_cesa - no need to save digest state after the last chunk
    crypto: mv_cesa - print a warning when registration of AES algos fail
    crypto: mv_cesa - drop this call to mv_hash_final from mv_hash_finup
    crypto: mv_cesa - the descriptor pointer register needs to be set just once
    crypto: mv_cesa - use ablkcipher_request_cast instead of the manual container_of
    crypto: caam - fix printk recursion for long error texts
    crypto: caam - remove unused keylen from session context
    hwrng: amd - enable AMD hw rnd driver for Maple PPC boards
    hwrng: amd - manage resource allocation
    ...

    Linus Torvalds
     

20 May, 2011

3 commits

  • Manual merge of arch/powerpc/kernel/smp.c and add missing scheduler_ipi()
    call to arch/powerpc/platforms/cell/interrupt.c

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     
  • …/gregkh/driver-core-2.6

    * 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (44 commits)
    debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning
    sysfs: remove "last sysfs file:" line from the oops messages
    drivers/base/memory.c: fix warning due to "memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION"
    memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION
    SYSFS: Fix erroneous comments for sysfs_update_group().
    driver core: remove the driver-model structures from the documentation
    driver core: Add the device driver-model structures to kerneldoc
    Translated Documentation/email-clients.txt
    RAW driver: Remove call to kobject_put().
    reboot: disable usermodehelper to prevent fs access
    efivars: prevent oops on unload when efi is not enabled
    Allow setting of number of raw devices as a module parameter
    Introduce CONFIG_GOOGLE_FIRMWARE
    driver: Google Memory Console
    driver: Google EFI SMI
    x86: Better comments for get_bios_ebda()
    x86: get_bios_ebda_length()
    misc: fix ti-st build issues
    params.c: Use new strtobool function to process boolean inputs
    debugfs: move to new strtobool
    ...

    Fix up trivial conflicts in fs/debugfs/file.c due to the same patch
    being applied twice, and an unrelated cleanup nearby.

    Linus Torvalds
     
  • …x/kernel/git/tip/linux-2.6-tip

    * 'timers-clocksource-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    clocksource: convert mips to generic i8253 clocksource
    clocksource: convert x86 to generic i8253 clocksource
    clocksource: convert footbridge to generic i8253 clocksource
    clocksource: add common i8253 PIT clocksource
    blackfin: convert to clocksource_register_hz
    mips: convert to clocksource_register_hz/khz
    sparc: convert to clocksource_register_hz/khz
    alpha: convert to clocksource_register_hz
    microblaze: convert to clocksource_register_hz/khz
    ia64: convert to clocksource_register_hz/khz
    x86: Convert remaining x86 clocksources to clocksource_register_hz/khz
    Make clocksource name const

    Linus Torvalds
     

19 May, 2011

2 commits

  • Benjamin Herrenschmidt
     
  • Commit b826291c, "drivercore/dt: add a match table pointer to struct
    device" added an of_match pointer to struct device to cache the
    of_match_table entry discovered at driver match time. This was unsafe
    because matching is not an atomic operation with probing a driver. If
    two or more drivers are attempted to be matched to a driver at the
    same time, then the cached matching entry pointer could get
    overwritten.

    This patch reverts the of_match cache pointer and reworks all users to
    call of_match_device() directly instead.

    Signed-off-by: Grant Likely

    Grant Likely
     

14 May, 2011

2 commits


07 May, 2011

2 commits


06 May, 2011

1 commit

  • Saves about 50KB of data.

    Old/new size of all objects:
    text data bss dec hex filename
    563015 80096 130684 773795 bcea3 (TOTALS)
    610916 32256 130632 773804 bceac (TOTALS)

    Signed-off-by: Joe Perches
    Acked-by: Kurt Van Dijck (for drivers/net/can/softing/softing_cs.c)
    Signed-off-by: Dominik Brodowski

    Joe Perches
     

04 May, 2011

3 commits


22 Apr, 2011

1 commit


21 Apr, 2011

3 commits

  • This call was disabled as hot-unplugging one virtconsole port led to
    another virtconsole port freezing.

    Upon testing it again, this now works, so enable it.

    In addition, a bug was found in qemu wherein removing a port of one type
    caused the guest output from another port to stop working. I doubt it
    was just this bug that caused it (since disabling the hvc_remove() call
    did allow other ports to continue working), but since it's all solved
    now, we're fine with hot-unplugging of virtconsole ports.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • pg_start is copied from userspace on AGPIOC_BIND and AGPIOC_UNBIND ioctl
    cmds of agp_ioctl() and passed to agpioc_bind_wrap(). As said in the
    comment, (pg_start + mem->page_count) may wrap in case of AGPIOC_BIND,
    and it is not checked at all in case of AGPIOC_UNBIND. As a result, user
    with sufficient privileges (usually "video" group) may generate either
    local DoS or privilege escalation.

    Signed-off-by: Vasiliy Kulikov
    Signed-off-by: Dave Airlie

    Vasiliy Kulikov
     
  • page_count is copied from userspace. agp_allocate_memory() tries to
    check whether this number is too big, but doesn't take into account the
    wrap case. Also agp_create_user_memory() doesn't check whether
    alloc_size is calculated from num_agp_pages variable without overflow.
    This may lead to allocation of too small buffer with following buffer
    overflow.

    Another problem in agp code is not addressed in the patch - kernel memory
    exhaustion (AGPIOC_RESERVE and AGPIOC_ALLOCATE ioctls). It is not checked
    whether requested pid is a pid of the caller (no check in agpioc_reserve_wrap()).
    Each allocation is limited to 16KB, though, there is no per-process limit.
    This might lead to OOM situation, which is not even solved in case of the
    caller death by OOM killer - the memory is allocated for another (faked) process.

    Signed-off-by: Vasiliy Kulikov
    Signed-off-by: Dave Airlie

    Vasiliy Kulikov
     

20 Apr, 2011

2 commits


31 Mar, 2011

1 commit


30 Mar, 2011

1 commit

  • This patch fixes information leakage to the userspace by initializing
    the data buffer to zero.

    Reported-by: Peter Huewe
    Signed-off-by: Peter Huewe
    Signed-off-by: Marcel Selhorst
    [ Also removed the silly "* sizeof(u8)". If that isn't 1, we have way
    deeper problems than a simple multiplication can fix. - Linus ]
    Signed-off-by: Linus Torvalds

    Peter Huewe
     

24 Mar, 2011

3 commits


21 Mar, 2011

1 commit

  • * 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (25 commits)
    video: change to new flag variable
    scsi: change to new flag variable
    rtc: change to new flag variable
    rapidio: change to new flag variable
    pps: change to new flag variable
    net: change to new flag variable
    misc: change to new flag variable
    message: change to new flag variable
    memstick: change to new flag variable
    isdn: change to new flag variable
    ieee802154: change to new flag variable
    ide: change to new flag variable
    hwmon: change to new flag variable
    dma: change to new flag variable
    char: change to new flag variable
    fs: change to new flag variable
    xtensa: change to new flag variable
    um: change to new flag variables
    s390: change to new flag variable
    mips: change to new flag variable
    ...

    Fix up trivial conflict in drivers/hwmon/Makefile

    Linus Torvalds
     

18 Mar, 2011

1 commit

  • * 'defcfg' of master.kernel.org:/home/rmk/linux-2.6-arm:
    ARM: 6647/1: add Versatile Express defconfig
    ARM: 6644/1: mach-ux500: update the U8500 defconfig

    * 'drivers' of master.kernel.org:/home/rmk/linux-2.6-arm:
    ARM: 6764/1: pl011: factor out FIFO to TTY code
    ARM: 6763/1: pl011: add optional RX DMA to PL011 v2
    ARM: 6758/1: amba: support pm ops
    ARM: amba: make amba_driver id_table const
    ARM: amba: make internal ID table handling const
    ARM: amba: make probe() functions take const id tables
    ARM: 6662/1: amba: make amba_bustype non-static
    ARM: mmci: add dmaengine-based DMA support
    ARM: mmci: no need for separate host->data_xfered
    ARM: mmci: avoid unnecessary switch to data available PIO interrupts
    ARM: mmci: no need to call flush_dcache_page() with sg_miter API
    ARM: mmci: avoid reporting too many completed bytes on fifo overrun
    ALSA: AACI: make fifo variables more explanitory
    ALSA: AACI: no need to call snd_pcm_period_elapsed() for each period
    ALSA: AACI: use snd_pcm_lib_period_bytes()
    ALSA: AACI: clean up AACI announcement printk
    ALSA: AACI: fix channel mask selection
    ALSA: AACI: fix number of channels for record
    ALSA: AACI: fix multiple IRQ claiming

    * 'cyberpro-next' of master.kernel.org:/home/rmk/linux-2.6-arm:
    VIDEO: cyberpro: remove unused cyber2000fb_get_fb_var()
    VIDEO: cyberpro: remove useless function extreg pointers
    VIDEO: cyberpro: update handling of device structures
    VIDEO: cyberpro: add support for video capture I2C
    VIDEO: cyberpro: make 'reg_b0_lock' always present
    VIDEO: cyberpro: add I2C support
    VIDEO: cyberpro: select lowest multipler/divisor for PLL

    Linus Torvalds
     

17 Mar, 2011

5 commits

  • Replace EXTRA_CFLAGS with ccflags-y.

    Signed-off-by: matt mooney
    Acked-by: WANG Cong
    Signed-off-by: Michal Marek

    matt mooney
     
  • Russell King
     
  • * 'devicetree/next' of git://git.secretlab.ca/git/linux-2.6: (21 commits)
    tty: serial: altera_jtaguart: Add device tree support
    tty: serial: altera_uart: Add devicetree support
    dt: eliminate of_platform_driver shim code
    dt: Eliminate of_platform_{,un}register_driver
    dt/serial: Eliminate users of of_platform_{,un}register_driver
    dt/usb: Eliminate users of of_platform_{,un}register_driver
    dt/video: Eliminate users of of_platform_{,un}register_driver
    dt/net: Eliminate users of of_platform_{,un}register_driver
    dt/sound: Eliminate users of of_platform_{,un}register_driver
    dt/spi: Eliminate users of of_platform_{,un}register_driver
    dt: uartlite: merge platform and of_platform driver bindings
    dt: xilinx_hwicap: merge platform and of_platform driver bindings
    ipmi: convert OF driver to platform driver
    leds/leds-gpio: merge platform_driver with of_platform_driver
    dt/sparc: Eliminate users of of_platform_{,un}register_driver
    dt/powerpc: Eliminate users of of_platform_{,un}register_driver
    dt/powerpc: move of_bus_type infrastructure to ibmebus
    drivercore/dt: add a match table pointer to struct device
    dt: Typo fix.
    altera_ps2: Add devicetree support
    ...

    Linus Torvalds
     
  • * 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (76 commits)
    pch_uart: reference clock on CM-iTC
    pch_phub: add new device ML7213
    n_gsm: fix UIH control byte : P bit should be 0
    n_gsm: add a documentation
    serial: msm_serial_hs: Add MSM high speed UART driver
    tty_audit: fix tty_audit_add_data live lock on audit disabled
    tty: move cd1865.h to drivers/staging/tty/
    Staging: tty: fix build with epca.c driver
    pcmcia: synclink_cs: fix prototype for mgslpc_ioctl()
    Staging: generic_serial: fix double locking bug
    nozomi: don't use flush_scheduled_work()
    tty/serial: Relax the device_type restriction from of_serial
    MAINTAINERS: Update HVC file patterns
    tty: phase out of ioctl file pointer for tty3270 as well
    tty: forgot to remove ipwireless from drivers/char/pcmcia/Makefile
    pch_uart: Fix DMA channel miss-setting issue.
    pch_uart: fix exclusive access issue
    pch_uart: fix auto flow control miss-setting issue
    pch_uart: fix uart clock setting issue
    pch_uart : Use dev_xxx not pr_xxx
    ...

    Fix up trivial conflicts in drivers/misc/pch_phub.c (same patch applied
    twice, then changes to the same area in one branch)

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
    crypto: tcrypt - do not attempt to write to readonly variable
    random: update interface comments to reflect reality
    crypto: picoxcell - add support for the picoxcell crypto engines
    crypto: sha1 - Add test vector to test partial block processing
    hwrng: omap - Convert release_resource to release_region/release_mem_region
    crypto: aesni-intel - Fix remaining leak in rfc4106_set_hash_key
    crypto: omap-sham - don't treat NULL clk as an error
    crypto: omap-aes - don't treat NULL clk as an error
    crypto: testmgr - mark ghash as fips_allowed
    crypto: testmgr - mark xts(aes) as fips_allowed
    crypto: skcipher - remove redundant NULL check
    hwrng: pixocell - add support for picoxcell TRNG
    crypto: aesni-intel - Don't leak memory in rfc4106_set_hash_subkey

    Linus Torvalds
     

16 Mar, 2011

1 commit

  • …l/git/tip/linux-2.6-tip

    * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (62 commits)
    posix-clocks: Check write permissions in posix syscalls
    hrtimer: Remove empty hrtimer_init_hres_timer()
    hrtimer: Update hrtimer->state documentation
    hrtimer: Update base[CLOCK_BOOTTIME].offset correctly
    timers: Export CLOCK_BOOTTIME via the posix timers interface
    timers: Add CLOCK_BOOTTIME hrtimer base
    time: Extend get_xtime_and_monotonic_offset() to also return sleep
    time: Introduce get_monotonic_boottime and ktime_get_boottime
    hrtimers: extend hrtimer base code to handle more then 2 clockids
    ntp: Remove redundant and incorrect parameter check
    mn10300: Switch do_timer() to xtimer_update()
    posix clocks: Introduce dynamic clocks
    posix-timers: Cleanup namespace
    posix-timers: Add support for fd based clocks
    x86: Add clock_adjtime for x86
    posix-timers: Introduce a syscall for clock tuning.
    time: Splitout compat timex accessors
    ntp: Add ADJ_SETOFFSET mode bit
    time: Introduce timekeeping_inject_offset
    posix-timer: Update comment
    ...

    Fix up new system-call-related conflicts in
    arch/x86/ia32/ia32entry.S
    arch/x86/include/asm/unistd_32.h
    arch/x86/include/asm/unistd_64.h
    arch/x86/kernel/syscall_table_32.S
    (name_to_handle_at()/open_by_handle_at() vs clock_adjtime()), and some
    due to movement of get_jiffies_64() in:
    kernel/time.c

    Linus Torvalds