1. 15 Dec, 2010 11 commits
    • Tavis Ormandy's avatar
      install_special_mapping skips security_file_mmap check. · 462e635e
      Tavis Ormandy authored
      The install_special_mapping routine (used, for example, to setup the
      vdso) skips the security check before insert_vm_struct, allowing a local
      attacker to bypass the mmap_min_addr security restriction by limiting
      the available pages for special mappings.
      
      bprm_mm_init() also skips the check, and although I don't think this can
      be used to bypass any restrictions, I don't see any reason not to have
      the security check.
      
        $ uname -m
        x86_64
        $ cat /proc/sys/vm/mmap_min_addr
        65536
        $ cat install_special_mapping.s
        section .bss
            resb BSS_SIZE
        section .text
            global _start
            _start:
                mov     eax, __NR_pause
                int     0x80
        $ nasm -D__NR_pause=29 -DBSS_SIZE=0xfffed000 -f elf -o install_special_mapping.o install_special_mapping.s
        $ ld -m elf_i386 -Ttext=0x10000 -Tbss=0x11000 -o install_special_mapping install_special_mapping.o
        $ ./install_special_mapping &
        [1] 14303
        $ cat /proc/14303/maps
        0000f000-00010000 r-xp 00000000 00:00 0                                  [vdso]
        00010000-00011000 r-xp 00001000 00:19 2453665                            /home/taviso/install_special_mapping
        00011000-ffffe000 rwxp 00000000 00:00 0                                  [stack]
      
      It's worth noting that Red Hat are shipping with mmap_min_addr set to
      4096.
      Signed-off-by: default avatarTavis Ormandy <taviso@google.com>
      Acked-by: default avatarKees Cook <kees@ubuntu.com>
      Acked-by: default avatarRobert Swiecki <swiecki@google.com>
      [ Changed to not drop the error code - akpm ]
      Reviewed-by: default avatarJames Morris <jmorris@namei.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      462e635e
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 0fcdcfbb
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: It is likely that WORKER_NOT_RUNNING is true
        MAINTAINERS: Add workqueue entry
        workqueue: check the allocation of system_unbound_wq
      0fcdcfbb
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://neil.brown.name/md · 6d5e93c2
      Linus Torvalds authored
      * 'for-linus' of git://neil.brown.name/md:
        md: protect against NULL reference when waiting to start a raid10.
        md: fix bug with re-adding of partially recovered device.
        md: fix possible deadlock in handling flush requests.
        md: move code in to submit_flushes.
        md: remove handling of flush_pending in md_submit_flush_data
      6d5e93c2
    • Major Lee's avatar
      dw_spi: Fix missing final read in some polling situations · 3d0b6087
      Major Lee authored
      There is a possibility that the last word of a transaction will be lost
      if data is not ready.  Re-read in poll_transfer() to solve this issue
      when poll_mode is enabled.
      
      Verified on SPI touch screen device.
      Signed-off-by: default avatarMajor Lee <major_lee@wistron.com>
      Signed-off-by: default avatarAlan Cox <alan@linux.intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3d0b6087
    • Alan Cox's avatar
      i2c_intel_mid: Fix slash in sysfs name · 54efdfeb
      Alan Cox authored
      This gets caught by the new sanity check code. Instead of the slash use a
      different symbol. This was originally found by Major Lee who proposed a
      rather more complex patch which changed the name according to the chip
      type.
      
      On the basis that we are in a late -rc and making Linus grumpy isn't always
      a good idea (however fun) this is a simple alternative.
      Signed-off-by: default avatarAlan Cox <alan@linux.intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      54efdfeb
    • Linus Torvalds's avatar
      Merge branch 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 · dbd9fd63
      Linus Torvalds authored
      * 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:
        sh: wire up accept4 syscall (non-multiplexed path)
        sh: Enable deprecated IRQ chip APIs for MFD and GPIOLIB drivers.
      dbd9fd63
    • Linus Torvalds's avatar
      Merge branch 'omap-fixes-for-linus' of... · ec5d043f
      Linus Torvalds authored
      Merge branch 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
      
      * 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6:
        OMAP2: PRCM: fix some SHIFT macros that were actually bitmasks
        OMAP2+: PM/serial: fix console semaphore acquire during suspend
        OMAP1: SRAM: fix size for OMAP1611 SoCs
        arm: omap2: io: fix clk_get() error check
        arm: plat-omap: counter_32k: use IS_ERR() instead of NULL check
        omap: nand: remove hardware ECC as default
        omap: zoom: wl1271 slot is MMC_CAP_POWER_OFF_CARD
        omap: PM debug: fix wake-on-timer debugfs dependency
      ec5d043f
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/rmk/linux-2.6-arm · fc47e672
      Linus Torvalds authored
      * master.kernel.org:/home/rmk/linux-2.6-arm:
        ARM: 6535/1: V6 MPCore v6_dma_inv_range and v6_dma_flush_range RWFO fix
        ARM: 6534/1: Make CONFIG_FPE_NWFPE depend on !CONFIG_THUMB2_KERNEL
        ARM: 6533/1: Thumb-2: Make CONFIG_THUMB2_KERNEL depend on !CPU_V6
        Change bcmring Maintainer list.
        ARM: Update mach-types
        ARM: 6528/1: Use CTR for the I-cache line size on ARMv7
        ARM: 6527/1: Use CTR instead of CCSIDR for the D-cache line size on ARMv7
        ARM: pxa/palm: fix ifdef around gen_nand driver registration
        ARM: pxa: fix pxa2xx-flash section mismatch
        ARM: mmp2: remove not used clk_rtc
      fc47e672
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 · 478b2a34
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
        sparc: Write to prom console using indirect buffer.
        sparc: Delete prom_*getchar().
        sparc: Pass buffer pointer all the way down to prom_{get,put}char().
        sparc: Do not export prom_nb{get,put}char().
        sparc64: Delete prom_setcallback().
        sparc64: Unexport prom_service_exists().
        sparc: Kill prom devops_{32,64}.c
        sparc: Remove prom_pathtoinode()
        sparc64: Delete prom_puts() unused.
        SPARC/LEON: removed constant timer initialization as if HZ=100, now it reflects the value of HZ
      478b2a34
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 · b4fe2a03
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (75 commits)
        pppoe.c: Fix kernel panic caused by __pppoe_xmit
        WAN: Fix a TX IRQ causing BUG() in PC300 and PCI200SYN drivers.
        bnx2x: Advance a version number to 1.60.01-0
        bnx2x: Fixed a compilation warning
        bnx2x: LSO code was broken on BE platforms
        qlge: Fix deadlock when cancelling worker.
        net: fix skb_defer_rx_timestamp()
        cxgb4vf: Ingress Queue Entry Size needs to be 64 bytes
        phy: add the IC+ IP1001 driver
        atm: correct sysfs 'device' link creation and parent relationships
        MAINTAINERS: remove me from tulip
        SCTP: Fix SCTP_SET_PEER_PRIMARY_ADDR to accpet v4mapped address
        enic: Bug Fix: Pass napi reference to the isr that services receive queue
        ipv6: fix nl group when advertising a new link
        connector: add module alias
        net: Document the kernel_recvmsg() function
        r8169: Fix runtime power management
        hso: IP checksuming doesn't work on GE0301 option cards
        xfrm: Fix xfrm_state_migrate leak
        net: Convert netpoll blocking api in bonding driver to be a counter
        ...
      b4fe2a03
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 · 85cb7f12
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
        [SCSI] hpsa: fix redefinition of PCI_DEVICE_ID_CISSF
        [SCSI] qla2xxx: Update version number to 8.03.05-k0.
        [SCSI] qla2xxx: Properly set the return value in qla2xxx_eh_abort function.
        [SCSI] qla2xxx: Correct issue where NPIV-config data was not being allocated for 82xx parts.
        [SCSI] qla2xxx: Change MSI initialization from using incorrect request_irq parameter.
        [SCSI] qla2xxx: Populate Command Type 6 LUN field properly.
        [SCSI] zfcp: Issue FCP command without holding SCSI host_lock
        [SCSI] zfcp: Prevent usage w/o holding a reference
        [SCSI] zfcp: No ERP escalation on gpn_ft eval
        [SCSI] zfcp: Correct false abort data assignment.
        [SCSI] zfcp: Fix common FCP request reception
        [SCSI] Eliminate error handler overload of the SCSI serial number
        [SCSI] pmcraid: disable msix and expand device config entry
        [SCSI] bsg: correct fault if queue object removed while dev_t open
        [SCSI] osd: checking NULL instead of ERR_PTR()
      85cb7f12
  2. 14 Dec, 2010 29 commits