Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Aug 22, 2009
  1. @torvalds

    Linux 2.6.31-rc7

    torvalds authored
  2. @torvalds

    Re-introduce page mapping check in mark_buffer_dirty()

    torvalds authored
    In commit a8e7d49 ("Fix race in
    create_empty_buffers() vs __set_page_dirty_buffers()"), I removed a test
    for a NULL page mapping unintentionally when some of the code inside
    __set_page_dirty() was moved to the callers.
    
    That removal generally didn't matter, since a filesystem would serialize
    truncation (which clears the page mapping) against writing (which marks
    the buffer dirty), so locking at a higher level (either per-page or an
    inode at a time) should mean that the buffer page would be stable.  And
    indeed, nothing bad seemed to happen.
    
    Except it turns out that apparently reiserfs does something odd when
    under load and writing out the journal, and we have a number of bugzilla
    entries that look similar:
    
    	http://bugzilla.kernel.org/show_bug.cgi?id=13556
    	http://bugzilla.kernel.org/show_bug.cgi?id=13756
    	http://bugzilla.kernel.org/show_bug.cgi?id=13876
    
    and it looks like reiserfs depended on that check (the common theme
    seems to be "data=journal", and a journal writeback during a truncate).
    
    I suspect reiserfs should have some additional locking, but in the
    meantime this should get us back to the pre-2.6.29 behavior.
    
    Pattern-pointed-out-by: Roland Kletzing <devzero@web.de>
    Cc: stable@kernel.org (2.6.29 and 2.6.30)
    Cc: Jeff Mahoney <jeffm@suse.com>
    Cc: Nick Piggin <npiggin@suse.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Commits on Aug 21, 2009
  1. @torvalds

    Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds authored
    …/git/airlied/drm-2.6
    
    * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
      drm/radeon: add GET_PARAM/INFO support for Z pipes
      drm/radeon/kms: add r100/r200 OQ support.
      drm: Fix sysfs device confusion.
      drm/radeon/kms: implement the bo busy ioctl properly.
  2. @torvalds

    Merge branch 'btrfs' of git://git.kernel.dk/linux-2.6-block

    torvalds authored
    * 'btrfs' of git://git.kernel.dk/linux-2.6-block:
      btrfs: fix inode rbtree corruption
  3. @torvalds

    x86: don't call '->send_IPI_mask()' with an empty mask

    torvalds authored
    As noted in 83d349f ("x86: don't send
    an IPI to the empty set of CPU's"), some APIC's will be very unhappy
    with an empty destination mask.  That commit added a WARN_ON() for that
    case, and avoided the resulting problem, but didn't fix the underlying
    reason for why those empty mask cases happened.
    
    This fixes that, by checking the result of 'cpumask_andnot()' of the
    current CPU actually has any other CPU's left in the set of CPU's to be
    sent a TLB flush, and not calling down to the IPI code if the mask is
    empty.
    
    The reason this started happening at all is that we started passing just
    the CPU mask pointers around in commit 4595f96 ("x86: change
    flush_tlb_others to take a const struct cpumask"), and when we did that,
    the cpumask was no longer thread-local.
    
    Before that commit, flush_tlb_mm() used to create it's own copy of
    'mm->cpu_vm_mask' and pass that copy down to the low-level flush
    routines after having tested that it was not empty.  But after changing
    it to just pass down the CPU mask pointer, the lower level TLB flush
    routines would now get a pointer to that 'mm->cpu_vm_mask', and that
    could still change - and become empty - after the test due to other
    CPU's having flushed their own TLB's.
    
    See
    
    	http://bugzilla.kernel.org/show_bug.cgi?id=13933
    
    for details.
    
    Tested-by: Thomas Björnell <thomas.bjornell@gmail.com>
    Cc: stable@kernel.org
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  4. @torvalds

    Make bitmask 'and' operators return a result code

    torvalds authored
    When 'and'ing two bitmasks (where 'andnot' is a variation on it), some
    cases want to know whether the result is the empty set or not.  In
    particular, the TLB IPI sending code wants to do cpumask operations and
    determine if there are any CPU's left in the final set.
    
    So this just makes the bitmask (and cpumask) functions return a boolean
    for whether the result has any bits set.
    
    Cc: stable@kernel.org (2.6.30, needed by TLB shootdown fix)
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  5. @torvalds

    x86: don't send an IPI to the empty set of CPU's

    torvalds authored
    The default_send_IPI_mask_logical() function uses the "flat" APIC mode
    to send an IPI to a set of CPU's at once, but if that set happens to be
    empty, some older local APIC's will apparently be rather unhappy.  So
    just warn if a caller gives us an empty mask, and ignore it.
    
    This fixes a regression in 2.6.30.x, due to commit 4595f96 ("x86:
    change flush_tlb_others to take a const struct cpumask"), documented
    here:
    
    	http://bugzilla.kernel.org/show_bug.cgi?id=13933
    
    which causes a silent lock-up.  It only seems to happen on PPro, P2, P3
    and Athlon XP cores.  Most developers sadly (or not so sadly, if you're
    a developer..) have more modern CPU's.  Also, on x86-64 we don't use the
    flat APIC mode, so it would never trigger there even if the APIC didn't
    like sending an empty IPI mask.
    
    Reported-by: Pavel Vilim <wylda@volny.cz>
    Reported-and-tested-by: Thomas Björnell <thomas.bjornell@gmail.com>
    Reported-and-tested-by: Martin Rogge <marogge@onlinehome.de>
    Cc: Mike Travis <travis@sgi.com>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: stable@kernel.org
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  6. drm/radeon: add GET_PARAM/INFO support for Z pipes

    Alex Deucher authored Dave Airlie committed
    Needed for occlusion queries on rv530 chips.
    
    Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  7. btrfs: fix inode rbtree corruption

    From: Nick Piggin authored Jens Axboe committed
    Node may not be inserted over existing node. This causes inode tree
    corruption and I was seeing crashes in inode_tree_del which I can not
    reproduce after this patch.
    
    The other way to fix this would be to tie inode lifetime in the rbtree
    with inode while not in freeing state. I had a look at this but it is
    not so trivial at this point. At least this patch gets things working again.
    
    Signed-off-by: Nick Piggin <npiggin@suse.de>
    Cc: Chris Mason <chris.mason@oracle.com>
    Acked-by: Yan Zheng <zheng.yan@oracle.com>
    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
  8. drm/radeon/kms: add r100/r200 OQ support.

    Dave Airlie authored
    This adds the relocation necessary for OQ support on the r100/r200
    chipsets.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  9. drm: Fix sysfs device confusion.

    Thomas Hellstrom authored Dave Airlie committed
    The drm sysfs class suspend / resume methods could not distinguish
    between different device types wich could lead to illegal type casts.
    
    Use struct device_type and make sure the class suspend / resume callbacks
    are aware of those. There is no per device-type suspend / resume. Only
    new-style PM.
    
    Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
    Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
Commits on Aug 20, 2009
  1. drm/radeon/kms: implement the bo busy ioctl properly.

    Dave Airlie authored
    The previous patch assumes the ioctl already existed, when
    it actually didn't.
    
    It also didn't return the correct error code.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  2. @torvalds

    Merge branch 'i2c-fixes-rc6' of git://aeryn.fluff.org.uk/bjdooks/linux

    torvalds authored
    * 'i2c-fixes-rc6' of git://aeryn.fluff.org.uk/bjdooks/linux:
      i2c-stu300: I2C STU300 stability updates
      i2c-omap: Enable workaround for Errata 1.153 based on
      i2c-omap: ACK pending [R/X]DR and [R/X]RDY interrupts
      i2c-omap: Fix I2C status ACK
  3. i2c-stu300: I2C STU300 stability updates

    Linus Walleij authored Ben Dooks committed
    - blk clk is enabled when an irq arrives. The clk should be enabled,
      but just to make sure.
    - All error bits are handled no matter state machine state
    - All irq's will run complete() except for irq's that wasn't an event.
    - No more looking into status registers just in case an interrupt
      has happend and the irq handle wasn't executed.
    - irq_disable/enable are now separete functions.
    - clk settings calculation changed to round upwards instead of
      downwards.
    - Number of address send attempts before giving up is increased to 12
      from 10 since it most times take 8 tries before getting through.
    
    Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  4. i2c-omap: Enable workaround for Errata 1.153 based on

    Moiz Sonasath authored Ben Dooks committed
    Silicon Errata 1.153 has been fixed on OMAP 3630|4430 with the use of a later
    version of I2C IP block.
    
    The errata impacts OMAP 2420|2430|3430, enable the workaround for these based
    on I2C IP block revision number instead of OMAP CPU type
    
    Signed-off-by: Moiz Sonasath <m-sonasath@ti.com>
    Signed-off-by: Vikram Pandita <vikram.pandita@ti.com
    Reviewed-by: Paul Walmsley <paul@pwsan.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  5. i2c-omap: ACK pending [R/X]DR and [R/X]RDY interrupts

    Moiz Sonasath authored Ben Dooks committed
    ACK any pending read/write interrupts before exiting the ISR either after
    completing the operation [ARDY interrupt] or in case of an error
    [NACK|AL interrupt]
    
    Signed-off-by: Moiz Sonasath <m-sonasath@ti.com>
    Signed-off-by: Vikram Pandita <vikram.pandita@ti.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  6. @nmenon

    i2c-omap: Fix I2C status ACK

    nmenon authored Ben Dooks committed
    I2C status ack for [RX]RDR and [RX]RDY could
    cause race conditions of clearing the event
    twice and a violation of the programing
    sequence as defined in TRM This patch fixes
    the same.
    
    Signed-off-by: Nishanth Menon <nm@ti.com>
    Signed-off-by: Moiz Sonasath <m-sonasath@ti.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  7. @torvalds

    Merge branch 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/g…

    torvalds authored
    …it/tiwai/sound-2.6
    
    * 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
      ALSA: hda - Fix probe of Toshiba laptops with ALC268 codec
      ALSA: hda: add model for Intel DG45ID/DG45FC boards
      ALSA: hda: enable speaker output for Compaq 6530s/6531s
Commits on Aug 19, 2009
  1. @tiwai

    ALSA: hda - Fix probe of Toshiba laptops with ALC268 codec

    tiwai authored
    There are many variants of Toshiba laptops with ALC268 codec, and
    it seems that a few of them don't work with model=toshiba preset
    since they have the secondary ALC268 codec just for HDMI output.
    This is a regression due to the previous clean-up work to merge all
    Toshiba quirk entries into a single check.
    
    This patch adds the identification of such laptops to apply the
    standard BIOS-probing method.  Unfortunately, Toshiba laptops have
    all the same PCI SSID, so we need to check the codec SSID to identify
    each device.
    
    Tested-by: Alexey Dobriyan <adobriyan@gmail.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
  2. @torvalds

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds authored
    …/git/ryusuke/nilfs2
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:
      nilfs2: fix oopses with doubly mounted snapshots
      nilfs2: missing a read lock for segment writer in nilfs_attach_checkpoint()
  3. @antonblanchard @torvalds

    AFS: Documentation updates

    antonblanchard authored torvalds committed
    Fix some issues with the AFS documentation, found when testing AFS on ppc64:
    
    - Update AFS features: reading/writing, local caching
    - Typo in kafs sysfs debug file
    - Use modprobe instead of insmod in example
    - Update IPs for grand.central.org
    
    Signed-off-by: Anton Blanchard <anton@samba.org>
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  4. @torvalds

    Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds authored
    …/git/airlied/drm-2.6
    
    * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
      drm/kms: teardown crtc correctly when fb is destroyed.
      drm/kms/radeon: cleanup combios TV table like DDX.
      drm/radeon/kms: memset the allocated framebuffer before using it.
      drm/radeon/kms: although LVDS might be possible on crtc 1 don't do it.
      drm/radeon/kms: implement bo busy check + current domain
      drm/radeon/kms: cut down indirects in register accesses.
      drm/radeon/kms: Fix up vertical blank interrupt support.
      drm/radeon/kms: add rv530 R300_SU_REG_DEST + reloc for ZPASS_ADDR
      drm/edid: fixup detailed timings like the X server.
      drm/radeon/kms: Add specific rs690 authorized register table
  5. @torvalds

    Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze

    torvalds authored
    * 'next' of git://git.monstr.eu/linux-2.6-microblaze:
      microblaze: Update Microblaze defconfigs
      microblaze: Use klimit instead of _end for memory init
      microblaze: Enable ppoll syscall
      microblaze: Sane handling of missing timer/intc in device tree
      microblaze: use the generic ack_bad_irq implementation
  6. @torvalds

    Merge branch 'perfcounters-fixes-for-linus-2' of git://git.kernel.org…

    torvalds authored
    …/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'perfcounters-fixes-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      perf tools: Make 'make html' work
      perf annotate: Fix segmentation fault
      perf_counter: Fix the PARISC build
      perf_counter: Check task on counter read IPI
      perf: Rename perf-examples.txt to examples.txt
      perf record: Fix typo in pid_synthesize_comm_event
  7. @tiwai

    ALSA: hda: add model for Intel DG45ID/DG45FC boards

    Wu Fengguang authored tiwai committed
    The BIOS pin configs are in fact correct and shall not be overwritten.
    
    Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
  8. @tiwai

    ALSA: hda: enable speaker output for Compaq 6530s/6531s

    Wu Fengguang authored tiwai committed
    HP Compaq 6530s and 6531s internal speaker is silence or becomes silence
    within 1 minute after fresh boot. It is found that pin 0x1c must be set to
    PIN_OUT mode to make the speaker work. This is weird - line-in pin 0x1c and
    speaker pin 0x16 seem to be unrelated.
    
    The codec differences before/after patch are:
    
    @@ Node 0x17 [Pin Complex] wcaps 0x40020b:
       Pin Default 0x41a6e130: [N/A] Mic at Ext Rear
         Conn = Digital, Color = White
         DefAssociation = 0x3, Sequence = 0x0
         Misc = NO_PRESENCE
    -  Pin-ctls: 0x24: IN
    +  Pin-ctls: 0x40: OUT
    @@ Node 0x1c [Pin Complex] wcaps 0x40018d:
       Pin Default 0x41813021: [N/A] Line In at Ext Rear
         Conn = 1/8, Color = Blue
         DefAssociation = 0x2, Sequence = 0x1
    -  Pin-ctls: 0x24: IN VREF_80
    +  Pin-ctls: 0x40: OUT VREF_HIZ
       Unsolicited: tag=00, enabled=0
       Connection: 1
          0x24
    
    Tests show that it won't impact (external) Mic recording.
    
    Reported-by: "Lin, Ming M" <ming.m.lin@intel.com>
    Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
  9. drm/kms: teardown crtc correctly when fb is destroyed.

    Dave Airlie authored
    If userspace destroys a framebuffer that is in use on a crtc,
    don't just null it out, tear down the crtc properly so the
    hw gets turned off.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  10. drm/kms/radeon: cleanup combios TV table like DDX.

    Dave Airlie authored
    The fallback case wasn't getting executed properly if there
    was no TV table, which my T42 M7 hasn't got.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  11. drm/radeon/kms: memset the allocated framebuffer before using it.

    Dave Airlie authored
    This gets rid of some ugliness, we shuold probably find a way
    for the GPU to zero this.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  12. drm/radeon/kms: although LVDS might be possible on crtc 1 don't do it.

    Dave Airlie authored
    LVDS always requests RMX_FULL, we need to fix it so that doesn't happen
    before we can enable LVDS on crtc 1.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
  13. @torvalds

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds authored
    …/git/jmorris/security-testing-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
      security: Fix prompt for LSM_MMAP_MIN_ADDR
      security: Make LSM_MMAP_MIN_ADDR default match its help text.
  14. @torvalds

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds authored
    …/git/tj/percpu
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
      percpu: use the right flag for get_vm_area()
      percpu, sparc64: fix sparse possible cpu map handling
      init: set nr_cpu_ids before setup_per_cpu_areas()
Commits on Aug 18, 2009
  1. @torvalds

    Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/li…

    torvalds authored
    …nux/kernel/git/tip/linux-2.6-tip
    
    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      x86, mce: Don't initialize MCEs on unknown CPUs
      x86, mce: don't log boot MCEs on Pentium M (model == 13) CPUs
      x86: Annotate section mismatch warnings in kernel/apic/x2apic_uv_x.c
      x86, mce: therm_throt: Don't log redundant normality
      x86: Fix UV BAU destination subnode id
  2. @bo-liu @torvalds

    mm: build_zonelists(): move clear node_load[] to __build_all_zonelists()

    bo-liu authored torvalds committed
    If node_load[] is cleared everytime build_zonelists() is
    called,node_load[] will have no help to find the next node that should
    appear in the given node's fallback list.
    
    Because of the bug, zonelist's node_order is not calculated as expected.
    This bug affects on big machine, which has asynmetric node distance.
    
    [synmetric NUMA's node distance]
         0    1    2
    0   10   12   12
    1   12   10   12
    2   12   12   10
    
    [asynmetric NUMA's node distance]
         0    1    2
    0   10   12   20
    1   12   10   14
    2   20   14   10
    
    This (my bug) is very old but no one has reported this for a long time.
    Maybe because the number of asynmetric NUMA is very small and they use
    cpuset for customizing node memory allocation fallback.
    
    [akpm@linux-foundation.org: fix CONFIG_NUMA=n build]
    Signed-off-by: Bo Liu <bo-liu@hotmail.com>
    Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Cc: Mel Gorman <mel@csn.ul.ie>
    Cc: Christoph Lameter <cl@linux-foundation.org>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  3. @torvalds

    REPORTING-BUGS: add get_maintainer.pl blurb

    Joe Perches authored torvalds committed
    Signed-off-by: Joe Perches <joe@perches.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Something went wrong with that request. Please try again.