19 Jan, 2009

8 commits

  • Remove the last of the macros-defined-to-static-functions.

    Signed-off-by: Eric Sandeen
    Reviewed-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Eric Sandeen
     
  • Recently we have quite a few kerneloops reports about dereferencing a NULL
    if_data in the attribute fork. From looking over the code this can only
    happen if we pass a 0 size argument to xfs_iformat_local. This implies some
    sort of corruption and in fact the only mailinglist report about this from
    earlier this year was after a powerfail presumably on a system with write
    cache and without barriers.

    Add a quick sanity check for the attr fork size in xfs_iformat to catch
    these early and without an oops.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     
  • Currently the bad_features2 fixup and the alignment updates in the superblock
    are skipped if we mount a filesystem read-only. But for the root filesystem
    the typical case is to mount read-only first and only later remount writeable
    so we'll never perform this update at all. It's not a big problem but means
    the logs of people needing the fixup get spammed at every boot because they
    never happen on disk.

    Reported-by: Arkadiusz Miskiewicz
    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     
  • We can have both a user and a group/project dquot locked at the same time,
    as long as the user dquot is locked first. Tell lockdep about that fact
    by making the group/project dquots a different lock class.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     
  • xfs_dqlock2 locks two xfs_dquots, which is fine as it always locks the
    dquot with the lower id first. Use mutex_lock_nested to tell lockdep
    about this fact.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     
  • We can have both a a quota hash chain and the per-mount list locked at
    the same time. But given that both use the same struct dqhash as list
    head we have to tell lockdep that they are different lock classes.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     
  • The compat version of the attrmulti ioctl needs to ask for and then
    later release write access to the mount just like the native version,
    otherwise we could potentially write to read-only mounts.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     
  • Open by handle just grabs an inode by handle and then creates itself
    a dentry for it. While this works for regular files it is horribly
    broken for directories, where the VFS locking relies on the fact that
    there is only just one single dentry for a given inode, and that
    these are always connected to the root of the filesystem so that
    it's locking algorithms work (see Documentations/filesystems/Locking)

    Remove all the existing open by handle code and replace it with a small
    wrapper around the exportfs code which deals with all these issues.
    At the same time we also make the checks for a valid handle strict
    enough to reject all not perfectly well formed handles - given that
    we never hand out others that's okay and simplifies the code.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Dave Chinner

    Christoph Hellwig
     

18 Jan, 2009

4 commits


17 Jan, 2009

28 commits

  • A pointer to wm8400_regulator_probe is passed to the core via
    platform_driver_register and so the function must not disappear when the
    .init sections are discarded. Otherwise (if also having HOTPLUG=y)
    unbinding and binding a device to the driver via sysfs will result in an
    oops as does a device being registered late.

    An alternative to this patch is using platform_driver_probe instead of
    platform_driver_register plus removing the pointer to the probe function
    from the struct platform_driver.

    Signed-off-by: Uwe Kleine-König
    Signed-off-by: Liam Girdwood

    Uwe Kleine-König
     
  • Roland Dreier
     
  • ehca_plpar_hcall9() takes an unsigned long array, so make all callers
    pass that in. This fixes warnings introduced by commit fe333321
    ("powerpc: Change u64/s64 to a long long integer type"), which changed
    u64 from unsigned long to unsigned long long.

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Roland Dreier

    Stephen Rothwell
     
  • Commit fe333321 ("powerpc: Change u64/s64 to a long long integer
    type") changed u64 from unsigned long to unsigned long long, which
    means that printk formats for printing u64 values should use "ll"
    instead of "l" to avoid warnings. Fix all the places affected by this
    in ehca.

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Roland Dreier

    Stephen Rothwell
     
  • When IPoIB tries to join a multicast group, and the SA module's SM
    address handle is NULL (because of an SM change, etc), the join
    returns with -EAGAIN status. In that case, don't print an error
    message unless multicast debugging is enabled.

    Signed-off-by: Yossi Etigin
    Signed-off-by: Roland Dreier

    Yossi Etigin
     
  • The current work request posting code writes the LSO segment before
    writing any data segments. This leaves a window where the LSO segment
    overwrites the stamping in one cacheline that the HCA prefetches
    before the rest of the cacheline is filled with the correct data
    segments. When the HCA processes this work request, a local
    protection error may result.

    Fix this by saving the LSO header size field off and writing it only
    after all data segments are written. This fix is a cleaned-up version
    of a patch from Jack Morgenstein .

    This fixes .

    Reported-by: Jack Morgenstein
    Signed-off-by: Roland Dreier

    Roland Dreier
     
  • Linus Torvalds
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (23 commits)
    ACPI PCI hotplug: harden against panic regression
    ACPI: rename main.c to sleep.c
    dell-laptop: move to drivers/platform/x86/ from drivers/misc/
    eeepc-laptop: enable Bluetooth ACPI details
    ACPI: fix ACPI_FADT_S4_RTC_WAKE comment
    kprobes: check CONFIG_FREEZER instead of CONFIG_PM
    PM: Fix freezer compilation if PM_SLEEP is unset
    thermal fixup for broken BIOS which has invalid trip points.
    ACPI: EC: Don't trust ECDT tables from ASUS
    ACPI: EC: Limit workaround for ASUS notebooks even more
    ACPI: thinkpad-acpi: bump up version to 0.22
    ACPI: thinkpad-acpi: handle HKEY event 6030
    ACPI: thinkpad-acpi: clean-up fan subdriver quirk
    ACPI: thinkpad-acpi: start the event hunt season
    ACPI: thinkpad-acpi: handle HKEY thermal and battery alarms
    ACPI: thinkpad-acpi: clean up hotkey_notify()
    ACPI: thinkpad-acpi: use killable instead of interruptible mutexes
    ACPI: thinkpad-acpi: add UWB radio support
    ACPI: thinkpad-acpi: preserve radio state across shutdown
    ACPI: thinkpad-acpi: resume with radios disabled
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    netxen: include ipv6.h (fixes build failure)
    netxen: avoid invalid iounmap

    Linus Torvalds
     
  • ACPI hotplug panic with current git head
    http://lkml.org/lkml/2009/1/10/136

    Rather than reverting the entire commit that causes the crash:
    e8c331e963c58b83db24b7d0e39e8c07f687dbc6
    "PCI hotplug: introduce functions for ACPI slot detection"

    simply harden against it while the changes to
    the hotplug code on this particularl machine are understood.

    Signed-off-by: James Bottomley
    Acked-by: Jesse Barnes
    Signed-off-by: Len Brown

    James Bottomley
     
  • Len Brown
     
  • Len Brown
     
  • Len Brown
     
  • Signed-off-by: Len Brown

    Len Brown
     
  • Signed-off-by: Len Brown

    Len Brown
     
  • Although rfkill support for the EEE bluetooth device has been added to
    2.6.28-rc the appropriate ACPI accessor definitions were not added, so
    the support was non functional. The patch below adds the get and set
    accessors and has been verified to work on an EEE 901.

    Signed-off-by: Jonathan McDowell
    Acked-by: Matthew Garrett
    Acked-by: Corentin Chary
    Signed-off-by: Len Brown

    Jonathan McDowell
     
  • Make the comment for ACPI_FADT_S4_RTC_WAKE match the ACPI spec;
    that bit has nothing to do with status bits.

    Signed-off-by: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Len Brown

    David Brownell
     
  • Check CONFIG_FREEZER instead of CONFIG_PM because kprobe booster
    depends on freeze_processes() and thaw_processes() when CONFIG_PREEMPT=y.

    This fixes a linkage error which occurs when CONFIG_PREEMPT=y, CONFIG_PM=y
    and CONFIG_FREEZER=n.

    Reported-by: Cheng Renquan
    Signed-off-by: Masami Hiramatsu
    Signed-off-by: Rafael J. Wysocki
    Acked-by: Ingo Molnar
    Signed-off-by: Len Brown

    Masami Hiramatsu
     
  • Freezer fails to compile if with the following configuration
    settings:

    CONFIG_CGROUPS=y
    CONFIG_CGROUP_FREEZER=y
    CONFIG_MODULES=y
    CONFIG_FREEZER=y
    CONFIG_PM=y
    CONFIG_PM_SLEEP=n

    Fix this by making process.o compilation depend on CONFIG_FREEZER.

    Reported-by: Cheng Renquan
    Signed-off-by: Rafael J. Wysocki
    Acked-by: Pavel Machek
    Signed-off-by: Len Brown

    Rafael J. Wysocki
     
  • ACPI thermal driver only re-evaluate VALID trip points.

    For the broken BIOS show in
    http://bugzilla.kernel.org/show_bug.cgi?id=8544
    the active[0] is set to invalid at boot time
    and it will not be re-evaluated again.
    We can still get a single warning message at boot time.

    http://marc.info/?l=linux-kernel&m=120496222629983&w=2

    http://bugzilla.kernel.org/show_bug.cgi?id=12203

    Signed-off-by: Zhang Rui
    Tested-by: Márton Németh
    Signed-off-by: Len Brown

    Zhang Rui
     
  • Fixes a build error in absence of CONFIG_IPV6:

    drivers/net/netxen/netxen_nic_main.c:1189: error: implicit declaration of function 'ipv6_hdr'
    drivers/net/netxen/netxen_nic_main.c:1189: error: invalid type argument of '->'

    Reported-by: Ingo Molnar

    Signed-off-by: Dhananjay Phadke
    Signed-off-by: David S. Miller

    Dhananjay Phadke
     
  • http://bugzilla.kernel.org/show_bug.cgi?id=9399
    http://bugzilla.kernel.org/show_bug.cgi?id=11880

    Signed-off-by: Alexey Starikovskiy
    Signed-off-by: Len Brown

    Alexey Starikovskiy
     
  • For NX3031 only one I/O range is mapped, so unmapping other
    two which are used by older chips, causes this warning on
    ppc64.

    "Attempt to iounmap early bolted mapping at 0x0000000000000000"

    Signed-off-by: Dhananjay Phadke
    Signed-off-by: David S. Miller

    Dhananjay Phadke
     
  • References: http://bugzilla.kernel.org/show_bug.cgi?id=11884

    Signed-off-by: Alexey Starikovskiy
    Signed-off-by: Len Brown

    Alexey Starikovskiy
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:
    Btrfs: fix ioctl arg size (userland incompatible change!)
    Btrfs: Clear the device->running_pending flag before bailing on congestion

    Linus Torvalds
     
  • The structure used to send device in btrfs ioctl calls was not
    properly aligned, and so 32 bit ioctls would not work properly on
    64 bit kernels.

    We could fix this with compat ioctls, but we're just one byte away
    and it doesn't make sense at this stage to carry about the compat ioctls
    forever at this stage in the project.

    This patch brings the ioctl arg up to an evenly aligned 4k.

    Signed-off-by: Chris Mason

    Chris Mason
     
  • Btrfs maintains a queue of async bio submissions so the checksumming
    threads don't have to wait on get_request_wait. In order to avoid
    extra wakeups, this code has a running_pending flag that is used
    to tell new submissions they don't need to wake the thread.

    When the threads notice congestion on a single device, they
    may decide to requeue the job and move on to other devices. This
    makes sure the running_pending flag is cleared before the
    job is requeued.

    It should help avoid IO stalls by making sure the task is woken up
    when new submissions come in.

    Signed-off-by: Chris Mason

    Chris Mason
     
  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    serial: Add 16850 uart type support to OF uart driver
    hvc_console: Remove tty->low_latency
    powerpc: Get the number of SLBs from "slb-size" property
    powerpc: is_hugepage_only_range() must account for both 4kB and 64kB slices
    powerpc/ps3: printing fixups for l64 to ll64 conversion drivers/video
    powerpc/ps3: Printing fixups for l64 to ll64 conversion drivers/scsi
    powerpc/ps3: Printing fixups for l64 to ll64 conversion drivers/ps3
    powerpc/ps3: Printing fixups for l64 to ll64 conversion sound/ppc
    powerpc/ps3: Printing fixups for l64 to ll64 conversion drivers/char
    powerpc/ps3: Printing fixups for l64 to ll64 conversion drivers/block
    powerpc/ps3: Printing fixups for l64 to ll64 conversion arch/powerpc
    powerpc/ps3: ps3_repository_read_mm_info() takes u64 * arguments
    powerpc/ps3: clear_bit()/set_bit() operate on unsigned longs
    powerpc/ps3: The lv1_ routines have u64 parameters
    powerpc/ps3: Use dma_addr_t down through the stack
    powerpc/ps3: set_dabr() takes an unsigned long
    powerpc: Cleanup from l64 to ll64 change drivers/scsi

    Linus Torvalds