10 Jun, 2009

1 commit

  • - add .init.rodata to INIT_DATA, and group all initconst flavors
    together
    - move strings generated from __setup_param() into .init.rodata
    - add .*init.rodata to modpost's sets of init sections
    - make modpost warn about references between meminit and cpuinit
    as well as memexit and cpuexit sections (as CPU and memory
    hotplug are independently selectable features)

    Signed-off-by: Jan Beulich
    Signed-off-by: Sam Ravnborg

    Jan Beulich
     

08 Jun, 2009

1 commit

  • * master.kernel.org:/home/rmk/linux-2.6-arm:
    [ARM] 5543/1: arm: serial amba: add missing declaration in serial.h
    [ARM] pxa: fix pxa27x_udc default pullup GPIO
    [ARM] pxa/imote2: fix UCAM sensor board ADC model number
    mx[23]: don't put clock lookups in __initdata
    fix oops when using console=ttymxcN with N > 0
    [ARM] ARMv7 errata: only apply fixes when running on applicable CPU
    [ARM] 5534/1: kmalloc must return a cache line aligned buffer

    Linus Torvalds
     

07 Jun, 2009

1 commit


05 Jun, 2009

1 commit

  • The "trace || CLONE_PTRACE" check in tracehook_report_clone() is not right,

    - If the untraced task does clone(CLONE_PTRACE) the new child is not traced,
    we must not queue SIGSTOP.

    - If we forked the traced task, but the tracer exits and untraces both the
    forking task and the new child (after copy_process() drops tasklist_lock),
    we should not queue SIGSTOP too.

    Change the code to check task_ptrace() != 0 instead. This is still racy, but
    the race is harmless.

    We can race with another tracer attaching to this child, or the tracer can
    exit and detach in parallel. But giwen that we didn't do wake_up_new_task()
    yet, the child must have the pending SIGSTOP anyway.

    Signed-off-by: Oleg Nesterov
    Acked-by: Roland McGrath
    Cc: Christoph Hellwig
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     

04 Jun, 2009

1 commit

  • Making the drm_crtc.c code recognize the DPMS property and invoke the
    connector->dpms function doesn't remove any capability from the driver while
    reducing code duplication.

    That just highlighted the problem with the existing DPMS functions which
    could turn off the connector, but failed to turn off any relevant crtcs. The
    new drm_helper_connector_dpms function manages all of that, using the
    drm_helper-specific crtc and encoder dpms functions, automatically computing
    the appropriate DPMS level for each object in the system.

    This fixes the current troubles in the i915 driver which left PLLs, pipes
    and planes running while in DPMS_OFF mode or even while they were unused.

    Signed-off-by: Keith Packard
    Signed-off-by: Dave Airlie

    Keith Packard
     

03 Jun, 2009

1 commit

  • Ideally we should have a directory of drivers and a link to the 'active'
    driver. For now just show the first device which is effectively the existing
    semantics without a warning.

    This is an update on the original buggy patch that I then forgot to
    resubmit. Confusingly it was proposed by Red Hat, written by Etched Pixels
    fixed and submitted by Intel ...

    Resolves-Bug: http://bugzilla.kernel.org/show_bug.cgi?id=9749
    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     

01 Jun, 2009

4 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    3c509: Add missing EISA IDs
    MAINTAINERS: take maintainership of the cpmac Ethernet driver
    net/firmare: Ignore .cis files
    ath1e: add new device id for asus hardware
    mlx4_en: Fix a kernel panic when waking tx queue
    rtl8187: add USB ID for Linksys WUSB54GC-EU v2 USB wifi dongle
    at76c50x-usb: avoid mutex deadlock in at76_dwork_hw_scan
    mac8390: fix build with NET_POLL_CONTROLLER
    cxgb3: link fault fixes
    cxgb3: fix dma mapping regression
    netfilter: nfnetlink_log: fix wrong skbuff size calculation
    netfilter: xt_hashlimit does a wrong SEQ_SKIP
    bfin_mac: fix build error due to net_device_ops convert
    atlx: move modinfo data from atlx.h to atl1.c
    gianfar: fix babbling rx error event bug
    cls_cgroup: read classid atomically in classifier
    netfilter: nf_ct_dccp: add missing DCCP protocol changes in event cache
    netfilter: nf_ct_tcp: fix accepting invalid RST segments

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/jaswinder/headers-check-2.6:
    headers_check fix: linux/net_dropmon.h
    headers_check fix: linux/auto_fs.h

    Linus Torvalds
     
  • fix the following 'make headers_check' warnings:

    usr/include/linux/net_dropmon.h:7: found __[us]{8,16,32,64} type without #include

    Signed-off-by: Jaswinder Singh Rajput

    Jaswinder Singh Rajput
     
  • fix the following 'make headers_check' warnings:

    usr/include/linux/auto_fs.h:17: include of is preferred over

    Signed-off-by: Jaswinder Singh Rajput

    Jaswinder Singh Rajput
     

30 May, 2009

1 commit


29 May, 2009

4 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: libps2 - better handle bad scheduler decisions
    Input: usb1400_ts - fix access to "device data" in resume function
    Input: multitouch - augment event semantics documentation
    Input: multitouch - add tracking ID to the protocol

    Linus Torvalds
     
  • mapping->tree_lock can be acquired from interrupt context. Then,
    following dead lock can occur.

    Assume "A" as a page.

    CPU0:
    lock_page_cgroup(A)
    interrupted
    -> take mapping->tree_lock.
    CPU1:
    take mapping->tree_lock
    -> lock_page_cgroup(A)

    This patch tries to fix above deadlock by moving memcg's hook to out of
    mapping->tree_lock. charge/uncharge of pagecache/swapcache is protected
    by page lock, not tree_lock.

    After this patch, lock_page_cgroup() is not called under mapping->tree_lock.

    Signed-off-by: KAMEZAWA Hiroyuki
    Signed-off-by: Daisuke Nishimura
    Cc: Balbir Singh
    Cc: Daisuke Nishimura
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Daisuke Nishimura
     
  • linux/cred.h can't be included as first header (alphabetical order)
    because it uses __init which is enough to break compilation on some archs.

    Signed-off-by: Alexey Dobriyan
    Acked-by: James Morris
    Acked-by: David Howells
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Testing the i7300_idle driver on i5000-series hardware required
    an edit to i7300_idle.h to "#define SUPPORT_I5000 1" and a re-build
    of both i7300_idle and ioat_dma.

    Replace that build-time scheme with a load-time module parameter:
    "7300_idle.forceload=1" to make it easier to test the driver
    on hardware that while not officially validated, works fine
    and is much more commonly available.

    By default (no modparam) the driver will continue to load
    only on the i7300.

    Note that ioat_dma runs a copy of i7300_idle's probe routine
    to know to reserve an IOAT channel for i7300_idle.
    This change makes ioat_dma do that always on the i5000,
    just like it does on the i7300.

    Signed-off-by: Len Brown
    Acked-by: Andrew Henroid

    Len Brown
     

28 May, 2009

1 commit


27 May, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:
    drm/i915: Add support for VGA load detection (pre-945).
    drm/i915: Use an I2C algo to do the flip to SDVO DDC bus.
    drm/i915: Determine type before initialising connector
    drm/i915: Return SDVO LVDS VBT mode if no EDID modes are detected.
    drm/i915: Fetch SDVO LVDS mode lines from VBT, then reserve them
    i915: support 8xx desktop cursors
    drm/i915: allocate large pointer arrays with vmalloc

    Linus Torvalds
     

25 May, 2009

1 commit

  • Robert L Mathews discovered that some clients send evil TCP RST segments,
    which are accepted by netfilter conntrack but discarded by the
    destination. Thus the conntrack entry is destroyed but the destination
    retransmits data until timeout.

    The same technique, i.e. sending properly crafted RST segments, can easily
    be used to bypass connlimit/connbytes based restrictions (the sample
    script written by Robert can be found in the netfilter mailing list
    archives).

    The patch below adds a new flag and new field to struct ip_ct_tcp_state so
    that checking RST segments can be made more strict and thus TCP conntrack
    can catch the invalid ones: the RST segment is accepted only if its
    sequence number higher than or equal to the highest ack we seen from the
    other direction. (The last_ack field cannot be reused because it is used
    to catch resent packets.)

    Signed-off-by: Jozsef Kadlecsik
    Signed-off-by: Patrick McHardy

    Jozsef Kadlecsik
     

24 May, 2009

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
    [SCSI] mpt2sas: fix driver version inconsistency
    [SCSI] 3w-xxxx: scsi_dma_unmap fix
    [SCSI] 3w-9xxx: scsi_dma_unmap fix
    [SCSI] ses: fix problems caused by empty SES provided name
    [SCSI] fc-transport: Close state transition-window during rport deletion.
    [SCSI] initialize max_target_blocked in scsi_alloc_target
    [SCSI] fnic: Add new Cisco PCI-Express FCoE HBA

    Linus Torvalds
     
  • There are a few multi-touch devices that support finger tracking
    well in hardware, Stantum being the prime example. By exposing the
    tracking ID in the MT protocol, evdev bandwidth and cpu usage in
    user space can be reduced.

    This patch adds the ABS_MT_TRACKING_ID to the MT protocol.

    Signed-off-by: Henrik Rydberg
    Tested-by: Stéphane Chatty
    Signed-off-by: Dmitry Torokhov

    Henrik Rydberg
     

22 May, 2009

3 commits


21 May, 2009

2 commits

  • * master.kernel.org:/home/rmk/linux-2.6-arm: (25 commits)
    [ARM] 5519/1: amba probe: pass "struct amba_id *" instead of void *
    [ARM] 5517/1: integrator: don't put clock lookups in __initdata
    [ARM] 5518/1: versatile: don't put clock lookups in __initdata
    [ARM] mach-l7200: fix spelling of SYS_CLOCK_OFF
    [ARM] Double check memmap is actually valid with a memmap has unexpected holes V2
    [ARM] realview: fix broadcast tick support
    [ARM] realview: remove useless smp_cross_call_done()
    [ARM] smp: fix cpumask usage in ARM SMP code
    [ARM] 5513/1: Eurotech VIPER SBC: fix compilation error
    [ARM] 5509/1: ep93xx: clkdev enable UARTS
    ARM: OMAP2/3: Change omapfb to use clkdev for dispc and rfbi, v2
    ARM: OMAP3: Fix HW SAVEANDRESTORE shift define
    ARM: OMAP3: Fix number of GPIO lines for 34xx
    [ARM] S3C: Do not set clk->owner field if unset
    [ARM] S3C2410: mach-bast.c registering i2c data too early
    [ARM] S3C24XX: Fix unused code warning in arch/arm/plat-s3c24xx/dma.c
    [ARM] S3C64XX: fix GPIO debug
    [ARM] S3C64XX: GPIO include cleanup
    [ARM] nwfpe: fix 'floatx80_is_nan' sparse warning
    [ARM] nwfpe: Add decleration for ExtendedCPDO
    ...

    Linus Torvalds
     
  • The second argument of the probe method points to the amba_id
    structure, so it's better passed with the correct type. None of the
    current in-tree drivers uses the pointer, so they have only been
    checked for a clean compile.

    Change suggested by Russell King.

    Signed-off-by: Alessandro Rubini
    Signed-off-by: Russell King

    Alessandro Rubini
     

20 May, 2009

1 commit

  • For awhile now, many of the GEM code paths have allocated page or
    object arrays with the slab allocator. This is nice and fast, but
    won't work well if memory is fragmented, since the slab allocator works
    with physically contiguous memory (i.e. order > 2 allocations are
    likely to fail fairly early after booting and doing some work).

    This patch works around the issue by falling back to vmalloc for
    >PAGE_SIZE allocations. This is ugly, but much less work than chaining
    a bunch of pages together by hand (suprisingly there's not a bunch of
    generic kernel helpers for this yet afaik). vmalloc space is somewhat
    precious on 32 bit kernels, but our allocations shouldn't be big enough
    to cause problems, though they're routinely more than a page.

    Note that this patch doesn't address the unchecked
    alloc-based-on-ioctl-args in GEM; that needs to be fixed in a separate
    patch.

    Also, I've deliberately ignored the DRM's "area" junk. I don't think
    anyone actually uses it anymore and I'm hoping it gets ripped out soon.

    [Updated: removed size arg to new free function. We could unify the
    free functions as well once the DRM mem tracking is ripped out.]

    fd.o bug #20152 (part 1/3)

    Signed-off-by: Jesse Barnes
    Signed-off-by: Eric Anholt

    Jesse Barnes
     

18 May, 2009

3 commits

  • `local_add_unless(x, y, z)' will be expanded to `(&(x)->y, (y), (x))', but
    `&(x)->y' should be `&(x)->a'

    Signed-off-by: Roel Kluin
    Cc: Mathieu Desnoyers
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roel Kluin
     
  • pfn_valid() is meant to be able to tell if a given PFN has valid memmap
    associated with it or not. In FLATMEM, it is expected that holes always
    have valid memmap as long as there is valid PFNs either side of the hole.
    In SPARSEMEM, it is assumed that a valid section has a memmap for the
    entire section.

    However, ARM and maybe other embedded architectures in the future free
    memmap backing holes to save memory on the assumption the memmap is never
    used. The page_zone linkages are then broken even though pfn_valid()
    returns true. A walker of the full memmap must then do this additional
    check to ensure the memmap they are looking at is sane by making sure the
    zone and PFN linkages are still valid. This is expensive, but walkers of
    the full memmap are extremely rare.

    This was caught before for FLATMEM and hacked around but it hits again for
    SPARSEMEM because the page_zone linkages can look ok where the PFN linkages
    are totally screwed. This looks like a hatchet job but the reality is that
    any clean solution would end up consumning all the memory saved by punching
    these unexpected holes in the memmap. For example, we tried marking the
    memmap within the section invalid but the section size exceeds the size of
    the hole in most cases so pfn_valid() starts returning false where valid
    memmap exists. Shrinking the size of the section would increase memory
    consumption offsetting the gains.

    This patch identifies when an architecture is punching unexpected holes
    in the memmap that the memory model cannot automatically detect and sets
    ARCH_HAS_HOLES_MEMORYMODEL. At the moment, this is restricted to EP93xx
    which is the model sub-architecture this has been reported on but may expand
    later. When set, walkers of the full memmap must call memmap_valid_within()
    for each PFN and passing in what it expects the page and zone to be for
    that PFN. If it finds the linkages to be broken, it assumes the memmap is
    invalid for that PFN.

    Signed-off-by: Mel Gorman
    Signed-off-by: Russell King

    Mel Gorman
     
  • This adds CONFIG_REISERFS_FS_XATTR protection from reiserfs_permission.

    This is needed to avoid warnings during file deletions and chowns with
    xattrs disabled.

    Signed-off-by: Jeff Mahoney
    Signed-off-by: Linus Torvalds

    Jeff Mahoney
     

16 May, 2009

3 commits

  • * 'drm-intel-next' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:
    drm/i915: Add new GET_PIPE_FROM_CRTC_ID ioctl.
    drm/i915: Set HDMI hot plug interrupt enable for only the output in question.
    drm/i915: Include 965GME pci ID in IS_I965GM(dev) to match UMS.
    drm/i915: Use the GM45 VGA hotplug workaround on G45 as well.
    drm/i915: ignore LVDS on intel graphics systems that lie about having it
    drm/i915: sanity check IER at wait_request time
    drm/i915: workaround IGD i2c bus issue in kernel side (v2)
    drm/i915: Don't allow binding objects into the last page of the aperture.
    drm/i915: save/restore fence registers across suspend/resume
    drm/i915: x86 always has writeq. Add I915_READ64 for symmetry.

    Linus Torvalds
     
  • This patch provides new heuristics for parsing both the form factor and
    media rotation rate ATA IDENFITY words.

    The reported ATA version must be 7 or greater and the device must return
    values defined as valid in the standard. Only then are the
    characteristics reported to SCSI via the VPD B1 page.

    This seems like a reasonable compromise to me considering that we have
    been shipping several kernel releases that key off the rotation rate bit
    without any version checking whatsoever. With no complaints so far.

    Signed-off-by: Martin K. Petersen
    Signed-off-by: Jeff Garzik

    Martin K. Petersen
     
  • Andrew Vasquez wrote:
    > fc-transport: Close state transition-window during rport deletion.
    >
    > After an rport's state has transitioned to FC_PORTSTATE_BLOCKED,
    > but, prior to making the upcall to 'block' the scsi-target
    > associated with an rport, queued commands can recycle and
    > ultimately run out of retries causing failures to propagate to
    > upper-level drivers. Close this transition-window by returning
    > the non-'retries' modifying DID_IMM_RETRY status for submitted
    > I/Os.

    The same can happen for iscsi when transitioning from logged in
    to failed and blocking the sdevs.

    This patch converts iscsi and fc's transitions back to use DID_IMM_RETRY
    instead of DID_TRANSPORT_DISRUPTED which has a limited number of retries
    that we do not want to use for handling this race.

    Signed-off-by: Andrew Vasquez
    [Addition of iscsi and fc port online devloss case conversion by Mike Christie]
    Signed-off-by: Mike Christie
    Signed-off-by: James Bottomley

    Andrew Vasquez
     

15 May, 2009

3 commits

  • * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
    Revert "mm: add /proc controls for pdflush threads"
    viocd: needs to depend on BLOCK
    block: fix the bio_vec array index out-of-bounds test

    Linus Torvalds
     
  • This reverts commit fafd688e4c0c34da0f3de909881117d374e4c7af.

    Work is progressing to switch away from pdflush as the process backing
    for flushing out dirty data. So it seems pointless to add more knobs
    to control pdflush threads. The original author of the patch did not
    have any specific use cases for adding the knobs, so we can easily
    revert this before 2.6.30 to avoid having to maintain this API
    forever.

    Signed-off-by: Jens Axboe

    Jens Axboe
     
  • This allows userlevel code to discover the pipe number corresponding
    to a given CRTC ID. This is necessary for doing pipe-specific
    operations such as waiting for vblank on a given CRTC. Failure to use
    the right pipe mapping can result in GPU hangs, or at least failure
    to actually sync to vblank.

    Signed-off-by: Carl Worth
    [anholt: Style touchups from review]
    Signed-off-by: Eric Anholt

    Carl Worth
     

13 May, 2009

3 commits

  • * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:
    dma: fix ipu_idmac.c to not discard the last queued buffer
    ioatdma: fix "ioatdma frees DMA memory with wrong function"
    ipu_idmac: Use disable_irq_nosync() from within irq handlers.
    dmatest: fix max channels handling

    Linus Torvalds
     
  • as reported by Alexander Beregalov

    ioatdma 0000:00:08.0: DMA-API: device driver frees DMA memory with
    wrong function [device address=0x000000007f76f800] [size=2000 bytes]
    [map
    ped as single] [unmapped as page]

    The ioatdma driver was unmapping all regions
    (either allocated as page or single) using unmap_page.
    This patch lets dma driver recognize if unmap_single or unmap_page should be used.
    It introduces two new dma control flags:
    DMA_COMPL_SRC_UNMAP_SINGLE and DMA_COMPL_DEST_UNMAP_SINGLE.
    They should be set to indicate dma driver to do dma-unmapping as single
    (first one for the source, tha latter for the destination).
    If respective flag is not set, the driver assumes dma-unmapping as page.

    Signed-off-by: Maciej Sosnowski
    Reported-by: Alexander Beregalov
    Tested-by: Alexander Beregalov
    Signed-off-by: Dan Williams

    Maciej Sosnowski
     
  • In order to build the generic syscall table, we need a declaration for
    every system call. sys_pipe2 was added without a proper declaration, so
    add this to syscalls.h now.

    Signed-off-by: Arnd Bergmann
    Cc: Ulrich Drepper
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arnd Bergmann
     

11 May, 2009

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:
    Revert driver core: move platform_data into platform_device
    Revert driver core: fix passing platform_data
    Remove old PRINTK_DEBUG config item
    Doc/sysfs-rules: Swap the order of the words so the sentence makes more sense
    Driver core: platform: fix kernel-doc warnings

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (22 commits)
    Fix the race between capifs remount and node creation
    Fix races around the access to ->s_options
    switch ufs directories to ufs_sync_file()
    Switch open_exec() and sys_uselib() to do_open_filp()
    Make open_exec() and sys_uselib() use may_open(), instead of duplicating its parts
    Reduce path_lookup() abuses
    Make checkpatch.pl shut up on fs/inode.c
    NULL noise in fs/super.c:kill_bdev_super()
    romfs: cleanup romfs_fs.h
    ROMFS: romfs_dev_read() error ignored
    fs: dcache fix LRU ordering
    ocfs2: Use nd_set_link().
    Fix deadlock in ipathfs ->get_sb()
    Fix a leak in failure exit in 9p ->get_sb()
    Convert obvious places to deactivate_locked_super()
    New helper: deactivate_locked_super()
    reiserfs: remove privroot hiding in lookup
    reiserfs: dont associate security.* with xattr files
    reiserfs: fixup xattr_root caching
    Always lookup priv_root on reiserfs mount and keep it
    ...

    Linus Torvalds