15 Jun, 2009

2 commits


09 Jun, 2009

5 commits


08 Jun, 2009

5 commits


07 Jun, 2009

3 commits


06 Jun, 2009

1 commit

  • The current code to set up the GART as an IOMMU enables GART
    translations before it removes the aperture from the kernel memory
    map, sets the GART PTEs to UC, sets up the guard and scratch
    pages, or does a wbinvd(). This leaves the possibility of cache
    aliasing open and can cause system crashes.

    Re-order the code so as to enable the GART translations only
    after all safeguards are in place and the tlb has been flushed.

    AMD has tested this patch on both Istanbul systems and 1st
    generation Opteron systems with APG enabled and seen no adverse
    effects. Istanbul systems with HT Assist enabled sometimes
    see MCE errors due to cache artifacts with the unmodified
    code.

    Signed-off-by: Mark Langsdorf
    Cc:
    Cc: Joerg Roedel
    Cc: akpm@linux-foundation.org
    Cc: jbarnes@virtuousgeek.org
    Signed-off-by: Ingo Molnar

    Mark Langsdorf
     

05 Jun, 2009

4 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:
    drm/i915: Remove a bad BUG_ON in the fence management code.

    Linus Torvalds
     
  • * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
    drm: ignore EDID with really tiny modes.
    drm: don't associate _DRM_DRIVER maps with a master
    drm/i915: intel_lvds.c fix section mismatch
    drm: Hook up DPMS property handling in drm_crtc.c. Add drm_helper_connector_dpms.
    drm: set permissions on edid file to 0444
    drm: add newlines to text sysfs files
    drm/radeon: fix ring free alignment calculations
    drm: fix irq naming for kms drivers.

    Linus Torvalds
     
  • While running 20 parallel instances of dd as follows:

    #!/bin/bash
    for i in `seq 1 20`; do
    dd if=/dev/zero of=/export/hda3/dd_$i bs=1073741824 count=1 &
    done
    wait

    on a 16G machine, we noticed that rather than just killing the processes,
    the entire kernel went down. Stracing dd reveals that it first does an
    mmap2, which makes 1GB worth of zero page mappings. Then it performs a
    read on those pages from /dev/zero, and finally it performs a write.

    The machine died during the reads. Looking at the code, it was noticed
    that /dev/zero's read operation had been changed by
    557ed1fa2620dc119adb86b34c614e152a629a80 ("remove ZERO_PAGE") from giving
    zero page mappings to actually zeroing the page.

    The zeroing of the pages causes physical pages to be allocated to the
    process. But, when the process exhausts all the memory that it can, the
    kernel cannot kill it, as it is still in the kernel mode allocating more
    memory. Consequently, the kernel eventually crashes.

    To fix this, I propose that when a fatal signal is pending during
    /dev/zero read operation, we simply return and let the user process die.

    Signed-off-by: Salman Qazi
    Cc: Nick Piggin
    Signed-off-by: Andrew Morton
    [ Modified error return and comment trivially. - Linus]
    Signed-off-by: Linus Torvalds

    Salman Qazi
     
  • We don't set up the canary; let's disable stack protector on boot.c so
    we can get into lguest_init, then set it up. As a side effect,
    switch_to_new_gdt() sets up %fs for us properly too.

    Signed-off-by: Rusty Russell
    Acked-by: Tejun Heo
    Signed-off-by: Linus Torvalds

    Rusty Russell
     

04 Jun, 2009

9 commits

  • This could be triggered by a gtt mapping fault on 965 that decides to
    remove the fence from another object that happens to be active currently.
    Since the other object doesn't rely on the fence reg for its execution, we
    don't wait for it to finish. We'll soon be not waiting on 915 most of the
    time as well, so just drop the BUG_ON.

    Signed-off-by: Eric Anholt

    Eric Anholt
     
  • Some EDIDs lie and report tiny modes that aren't possible. Ignore
    these modes.

    Signed-off-by: Adam Jackson
    Signed-off-by: Dave Airlie

    Adam Jackson
     
  • A driver will use the _DRM_DRIVER map flag to indicate that it wants
    to be responsible for removing the map itself, bypassing the DRM's
    automagic cleanup code.

    Since the multi-master changes this has been broken, resulting in some
    drivers having their registers unmapped before it's finished with them.

    Signed-off-by: Ben Skeggs
    Signed-off-by: Dave Airlie

    Ben Skeggs
     
  • intel_no_lvds[] does not require __initdata as it is used only by

    void intel_lvds_init(struct drm_device *dev).

    Signed-off-by: Jaswinder Singh Rajput
    Signed-off-by: Dave Airlie

    Jaswinder Singh Rajput
     
  • 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
     
  • Without initializing the sysfs attributes for the edid file,
    it was created with mode 0, making it difficult for applications to use.

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

    Keith Packard
     
  • The contents of various simple text files in sysfs should end with
    a newline to make them easier to read from the console.

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

    Keith Packard
     
  • fd.o bz#21849

    We were aligning to +16 dwords, instead of to the next 16dword
    boundary in the ring. Fix the calculation to go to the next 16dword
    boundary when space checking.

    Signed-off-by: Dave Airlie

    Dave Airlie
     
  • allocating devname in the i915 driver was a hack originally and I
    forgot to figure out how to do this properly back then.

    So this is the cleaner version that just picks devname or driver name
    in the irq code.

    It removes the devname allocs from the i915 driver.

    Signed-off-by: Dave Airlie

    Dave Airlie
     

03 Jun, 2009

7 commits


02 Jun, 2009

4 commits