Skip to content
Commits on Aug 22, 2009
  1. @torvalds

    Linux 2.6.31-rc7

    torvalds committed Aug 21, 2009
  2. @torvalds

    Re-introduce page mapping check in mark_buffer_dirty()

    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>
    torvalds committed Aug 21, 2009
Commits on Aug 21, 2009
  1. @torvalds

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

    …/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.
    torvalds committed Aug 21, 2009
  2. @torvalds

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

    * 'btrfs' of git://git.kernel.dk/linux-2.6-block:
      btrfs: fix inode rbtree corruption
    torvalds committed Aug 21, 2009
  3. @torvalds

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

    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>
    torvalds committed Aug 21, 2009
  4. @torvalds

    Make bitmask 'and' operators return a result code

    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>
    torvalds committed Aug 21, 2009
  5. @torvalds

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

    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>
    torvalds committed Aug 21, 2009
  6. @theif

    drm/radeon: add GET_PARAM/INFO support for Z pipes

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

    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>
    From: Nick Piggin committed with Jens Axboe Aug 21, 2009
  8. @theif

    drm/radeon/kms: add r100/r200 OQ support.

    This adds the relocation necessary for OQ support on the r100/r200
    chipsets.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    theif committed Aug 21, 2009
  9. @thomashvmw @theif

    drm: Fix sysfs device confusion.

    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>
    thomashvmw committed with theif Aug 20, 2009
Commits on Aug 20, 2009
  1. @theif

    drm/radeon/kms: implement the bo busy ioctl properly.

    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>
    theif committed Aug 21, 2009
  2. @torvalds

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

    * '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
    torvalds committed Aug 20, 2009
  3. i2c-stu300: I2C STU300 stability updates

    - 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>
    Linus Walleij committed with Ben Dooks Aug 13, 2009
  4. i2c-omap: Enable workaround for Errata 1.153 based on

    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>
    Moiz Sonasath committed with Ben Dooks Aug 20, 2009
  5. i2c-omap: ACK pending [R/X]DR and [R/X]RDY interrupts

    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>
    Moiz Sonasath committed with Ben Dooks Aug 20, 2009
  6. @nmenon

    i2c-omap: Fix I2C status ACK

    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>
    nmenon committed with Ben Dooks Aug 20, 2009
  7. @torvalds

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

    …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
    torvalds committed Aug 20, 2009
Commits on Aug 19, 2009
  1. @tiwai

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

    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>
    tiwai committed Aug 19, 2009
  2. @torvalds

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

    …/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()
    torvalds committed Aug 19, 2009
  3. @antonblanchard @torvalds

    AFS: Documentation updates

    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>
    antonblanchard committed with torvalds Aug 19, 2009
  4. @torvalds

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

    …/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
    torvalds committed Aug 19, 2009
  5. @torvalds

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

    * '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
    torvalds committed Aug 19, 2009
  6. @torvalds

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

    …/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
    torvalds committed Aug 19, 2009
  7. @fengguang @tiwai

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

    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>
    fengguang committed with tiwai Aug 19, 2009
  8. @fengguang @tiwai

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

    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>
    fengguang committed with tiwai Aug 19, 2009
  9. @theif

    drm/kms: teardown crtc correctly when fb is destroyed.

    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>
    theif committed Aug 17, 2009
  10. @theif

    drm/kms/radeon: cleanup combios TV table like DDX.

    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>
    theif committed Aug 17, 2009
  11. @theif

    drm/radeon/kms: memset the allocated framebuffer before using it.

    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>
    theif committed Aug 17, 2009
  12. @theif

    drm/radeon/kms: although LVDS might be possible on crtc 1 don't do it.

    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>
    theif committed Aug 17, 2009
  13. @torvalds

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

    …/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.
    torvalds committed Aug 18, 2009
  14. @torvalds

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

    …/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()
    torvalds committed Aug 18, 2009
Commits on Aug 18, 2009
  1. @torvalds

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

    …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
    torvalds committed Aug 18, 2009
  2. @bo-liu @torvalds

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

    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>
    bo-liu committed with torvalds Aug 18, 2009
  3. @JoePerches @torvalds

    REPORTING-BUGS: add get_maintainer.pl blurb

    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>
    JoePerches committed with torvalds Aug 18, 2009
Something went wrong with that request. Please try again.