01 Jul, 2009

5 commits

  • Signed-off-by: Andre Noll
    Acked-by: Martin K. Petersen
    Signed-off-by: Jens Axboe

    Andre Noll
     
  • * 'kmemleak' of git://linux-arm.org/linux-2.6:
    kmemleak: Inform kmemleak about pid_hash
    kmemleak: Do not warn if an unknown object is freed
    kmemleak: Do not report new leaked objects if the scanning was stopped
    kmemleak: Slightly change the policy on newly allocated objects
    kmemleak: Do not trigger a scan when reading the debug/kmemleak file
    kmemleak: Simplify the reports logged by the scanning thread
    kmemleak: Enable task stacks scanning by default
    kmemleak: Allow the early log buffer to be configurable.

    Linus Torvalds
     
  • By writing a tasks's pid to the file, a process adds that task to that
    cgroup/cpuset. But to add a cpu/mem to a cpuset, the new list of cpus
    should be written to the cpuset.mems file which would replace the old list
    of cpus. Make this clearer in the documentation.

    Signed-off-by: Nikanth Karthikesan
    Signed-off-by: Li Zefan
    Acked-by: Paul Menage
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nikanth Karthikesan
     
  • Add two new spi_device.mode bits to accomodate more protocol options, and
    pass them through to usermode drivers:

    * SPI_NO_CS ... a second 3-wire variant, where the chipselect
    line is removed instead of a data line; transfers are still
    full duplex.

    This obviously has STRONG protocol implications since the
    chipselect transitions can't be used to synchronize state
    transitions with the SPI master.

    * SPI_READY ... defines open drain signal that's pulled low
    to pause the clock. This defines a 5-wire variant (normal
    4-wire SPI plus READY) and two 4-wire variants (READY plus
    each of the 3-wire flavors).

    Such hardware flow control can be a big win. There are ADC
    converters and flash chips that expose READY signals, but not
    many host controllers support it today.

    The spi_bitbang code should be changed to use SPI_NO_CS instead of its
    current nonportable hack. That's a mode most hardware can easily support
    (unlike SPI_READY).

    Signed-off-by: David Brownell
    Cc: "Paulraj, Sandeep"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • Commonly available versions of cp and tar don't work well with special
    files created using seq_file. Mention this problem in the gcov
    documentation and update the helper script example to work around these
    problems.

    Signed-off-by: Peter Oberparleiter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Oberparleiter
     

30 Jun, 2009

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    sound: OSS: mpu401, fix deadlock
    ALSA: hda - Add missing initializations for ALC268 and ALC269
    ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug
    ALSA: hda - Line In for Acer Inspire 6530G model
    sound: oxygen: make mic volume control mono
    MAINTAINERS: Add entry for twl4030 series soc codec driver
    ALSA: lx6464es - configure ethersound io channels
    sound: Use PCI_VDEVICE for CREATIVE and ECTIVA
    sound: Use PCI_VDEVICE
    ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G
    ALSA: hda - Fix acer-aspire-6530g model quirk
    ALSA: hda - Add pin-sense trigger when needed for Realtek codecs
    ALSA: hda - Fix support for Samsung P50 with AD1986A codec
    ALSA: hda - Generalize the pin-detect quirk for Lenovo N100
    ALSA: hda - Simplify AD1986A mixer definitions

    Linus Torvalds
     
  • * fix/hda-samsung-p50:
    ALSA: hda - Fix support for Samsung P50 with AD1986A codec
    ALSA: hda - Generalize the pin-detect quirk for Lenovo N100
    ALSA: hda - Simplify AD1986A mixer definitions

    Takashi Iwai
     

29 Jun, 2009

3 commits

  • …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, delay: tsc based udelay should have rdtsc_barrier
    x86, setup: correct include file in <asm/boot.h>
    x86, setup: Fix typo "CONFIG_x86_64" in <asm/boot.h>
    x86, mce: percpu mcheck_timer should be pinned
    x86: Add sysctl to allow panic on IOCK NMI error
    x86: Fix uv bau sending buffer initialization
    x86, mce: Fix mce resume on 32bit
    x86: Move init_gbpages() to setup_arch()
    x86: ensure percpu lpage doesn't consume too much vmalloc space
    x86: implement percpu_alloc kernel parameter
    x86: fix pageattr handling for lpage percpu allocator and re-enable it
    x86: reorganize cpa_process_alias()
    x86: prepare setup_pcpu_lpage() for pageattr fix
    x86: rename remap percpu first chunk allocator to lpage
    x86: fix duplicate free in setup_pcpu_remap() failure path
    percpu: fix too lazy vunmap cache flushing
    x86: Set cpu_llc_id on AMD CPUs

    Linus Torvalds
     
  • …nel/git/tip/linux-2.6-tip

    * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    ftrace: Fix the output of profile
    ring-buffer: Make it generally available
    ftrace: Remove duplicate newline
    tracing: Fix trace_buf_size boot option
    ftrace: Fix t_hash_start()
    ftrace: Don't manipulate @pos in t_start()
    ftrace: Don't increment @pos in g_start()
    tracing: Reset iterator in t_start()
    trace_stat: Don't increment @pos in seq start()
    tracing_bprintk: Don't increment @pos in t_start()
    tracing/events: Don't increment @pos in s_start()

    Linus Torvalds
     
  • * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
    leds: Futher document blink_set
    leds: Add options to have GPIO LEDs start on or keep their state
    leds: LED driver for National Semiconductor LP3944 Funlight Chip
    leds: pca9532 - Indent using tabs, not spaces.
    leds: Remove an orphan Kconfig entry
    leds: Further document parameters for blink_set()
    leds: alix-leds2 fixed for Award BIOS
    leds: leds-gpio - fix a section mismatch
    leds: add the sysfs interface into the leds-bd2802 driver for changing wave pattern and led current.
    leds: change the license information
    leds: fix led-bd2802 errors while resuming

    Linus Torvalds
     

27 Jun, 2009

3 commits


26 Jun, 2009

1 commit


25 Jun, 2009

4 commits

  • (feature suggested by Sergey Senozhatsky)

    Kmemleak needs to track all the memory allocations but some of these
    happen before kmemleak is initialised. These are stored in an internal
    buffer which may be exceeded in some kernel configurations. This patch
    adds a configuration option with a default value of 400 and also removes
    the stack dump when the early log buffer is exceeded.

    Signed-off-by: Catalin Marinas
    Acked-by: Sergey Senozhatsky

    Catalin Marinas
     
  • This reverts commit 9e9f46c44e487af0a82eb61b624553e2f7118f5b.

    Quoting from the commit message:

    "At this point, it seems to solve more problems than it causes, so let's
    try using it by default. It's an easy revert if it ends up causing
    trouble."

    And guess what? The _CRS code causes trouble.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (48 commits)
    dm mpath: change to be request based
    dm: disable interrupt when taking map_lock
    dm: do not set QUEUE_ORDERED_DRAIN if request based
    dm: enable request based option
    dm: prepare for request based option
    dm raid1: add userspace log
    dm: calculate queue limits during resume not load
    dm log: fix create_log_context to use logical_block_size of log device
    dm target:s introduce iterate devices fn
    dm table: establish queue limits by copying table limits
    dm table: replace struct io_restrictions with struct queue_limits
    dm table: validate device logical_block_size
    dm table: ensure targets are aligned to logical_block_size
    dm ioctl: support cookies for udev
    dm: sysfs add suspended attribute
    dm table: improve warning message when devices not freed before destruction
    dm mpath: add service time load balancer
    dm mpath: add queue length load balancer
    dm mpath: add start_io and nr_bytes to path selectors
    dm snapshot: use barrier when writing exception store
    ...

    Linus Torvalds
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (72 commits)
    asus-laptop: remove EXPERIMENTAL dependency
    asus-laptop: use pr_fmt and pr_
    eeepc-laptop: cpufv updates
    eeepc-laptop: sync eeepc-laptop with asus_acpi
    asus_acpi: Deprecate in favor of asus-laptop
    acpi4asus: update MAINTAINER and KConfig links
    asus-laptop: platform dev as parent for led and backlight
    eeepc-laptop: enable camera by default
    ACPI: Rename ACPI processor device bus ID
    acerhdf: Acer Aspire One fan control
    ACPI: video: DMI workaround broken Acer 7720 BIOS enabling display brightness
    ACPI: run ACPI device hot removal in kacpi_hotplug_wq
    ACPI: Add the reference count to avoid unloading ACPI video bus twice
    ACPI: DMI to disable Vista compatibility on some Sony laptops
    ACPI: fix a deadlock in hotplug case
    Show the physical device node of backlight class device.
    ACPI: pdc init related memory leak with physical CPU hotplug
    ACPI: pci_root: remove unused dev/fn information
    ACPI: pci_root: simplify list traversals
    ACPI: pci_root: use driver data rather than list lookup
    ...

    Linus Torvalds
     

24 Jun, 2009

7 commits

  • The rules for locking in many superblock operations has changed
    significantly, so update the documentation for it. Also correct some
    older updates and ommissions.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Al Viro

    Christoph Hellwig
     
  • Samsung P50 requires the HP auto-muting unlike other Samsung models.
    Added a new model=samsung-p50 to support this.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • We should be able to specify [KMG] when setting trace_buf_size
    boot option, as documented in kernel-parameters.txt

    Signed-off-by: Li Zefan
    Cc: Steven Rostedt
    Cc: Frederic Weisbecker
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Li Zefan
     
  • …bugzilla-13121', 'bugzilla-13396', 'bugzilla-13533', 'bugzilla-13612', 'c3_lock', 'hid-cleanups', 'misc-2.6.31', 'pdc-leak-fix', 'pnpacpi', 'power_nocheck', 'thinkpad_acpi', 'video' and 'wmi' into release

    Len Brown
     
  • There already is a "default-on" trigger but there are problems with it.

    For one, it's a inefficient way to do it and requires led trigger support
    to be compiled in.

    But the real reason is that is produces a glitch on the LED. The GPIO is
    allocate with the LED *off*, then *later* when the trigger runs it is
    turned back on. If the LED was already on via the GPIO's reset default or
    action of the firmware, this produces a glitch where the LED goes from on
    to off to on. While normally this is fast enough that it wouldn't be
    noticeable to a human observer, there are still serious problems.

    One is that there may be something else on the GPIO line, like a hardware
    alarm or watchdog, that is fast enough to notice the glitch.

    Another is that the kernel may panic before the LED is turned back on, thus
    hanging with the LED in the wrong state. This is not just speculation, but
    actually happened to me with an embedded system that has an LED which
    should turn off when the kernel finishes booting, which was left in the
    incorrect state due to a bug in the OF LED binding code.

    We also let GPIO LEDs get their initial value from whatever the current
    state of the GPIO line is. On some systems the LEDs are put into some
    state by the firmware or hardware before Linux boots, and it is desired to
    have them keep this state which is otherwise unknown to Linux.

    This requires that the underlying GPIO driver support reading the value of
    output GPIOs. Some drivers support this and some do not.

    The platform device binding gains a field in the platform data
    "default_state" that controls this. There are three constants defined to
    select from on, off, or keeping the current state. The OpenFirmware
    binding uses a property named "default-state" that can be set to "on",
    "off", or "keep". The default if the property isn't present is off.

    Signed-off-by: Trent Piepho
    Acked-by: Grant Likely
    Acked-by: Wolfram Sang
    Acked-by: Sean MacLennan
    Signed-off-by: Richard Purdie

    Trent Piepho
     
  • LEDs driver for National Semiconductor LP3944 Funlight Chip
    http://www.national.com/pf/LP/LP3944.html

    This helper chip can drive up to 8 leds, with two programmable DIM
    modes; it could even be used as a gpio expander but this driver assumes
    it is used as a led controller.

    The DIM modes are used to set _blink_ patterns for leds, the pattern is
    specified supplying two parameters:
    - period: from 0s to 1.6s
    - duty cycle: percentage of the period the led is on, from 0 to 100

    LP3944 can be found on Motorola A910 smartphone, where it drives the rgb
    leds, the camera flash light and the displays backlights.

    Signed-off-by: Antonio Ospite
    Signed-off-by: Richard Purdie

    Antonio Ospite
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
    [WATCHDOG] wdt_pci.c: remove #ifdef CONFIG_WDT_501_PCI
    [WATCHDOG] hpwdt: Add NMI priority option
    [WATCHDOG] OMAP fixes: enable clock in probe, trigger timer reload
    [WATCHDOG] add bcm47xx watchdog driver
    [WATCHDOG] Freescale STMP: watchdog driver
    [WATCHDOG] twl4030 watchdog driver
    [WATCHDOG] U300 COH 901 327 watchdog driver
    [WATCHDOG] Add pnx833x_wdt

    Linus Torvalds
     

23 Jun, 2009

11 commits

  • Split device tree binding out of booting-without-of.txt and put them
    into their own files per binding.

    Signed-off-by: Kumar Gala

    Kumar Gala
     
  • Add a priority option so that the user can choose if we do the NMI
    first or last.

    Signed-off-by: Thomas Mingarelli
    Signed-off-by: Wim Van Sebroeck

    Tom Mingarelli
     
  • Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • Add support for the EVGA inDtube. Both ATSC and analog side validated as
    fully functional.

    Thanks to Jake Crimmins from EVGA for providing the correct GPIO info.
    Thanks to Alan Hagge for doing all the device testing.
    Thanks to Greg Williamson for providing hardware for testing.

    Cc: Jake Crimmins
    Cc: Alan Hagge
    Cc: Greg Williamson
    Signed-off-by: Devin Heitmueller
    Signed-off-by: Mauro Carvalho Chehab

    Devin Heitmueller
     
  • Fix Leadtek TV2000 XP Global entries and add missing PCI ID's.

    Thanks to Terry Wu for pointing us for the proper settings.

    Cc: Terry Wu
    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • * git://git.infradead.org/~dwmw2/iommu-2.6.31:
    intel-iommu: Fix one last ia64 build problem in Pass Through Support
    VT-d: support the device IOTLB
    VT-d: cleanup iommu_flush_iotlb_psi and flush_unmaps
    VT-d: add device IOTLB invalidation support
    VT-d: parse ATSR in DMA Remapping Reporting Structure
    PCI: handle Virtual Function ATS enabling
    PCI: support the ATS capability
    intel-iommu: dmar_set_interrupt return error value
    intel-iommu: Tidy up iommu->gcmd handling
    intel-iommu: Fix tiny theoretical race in write-buffer flush.
    intel-iommu: Clean up handling of "caching mode" vs. IOTLB flushing.
    intel-iommu: Clean up handling of "caching mode" vs. context flushing.
    VT-d: fix invalid domain id for KVM context flush
    Fix !CONFIG_DMAR build failure introduced by Intel IOMMU Pass Through Support
    Intel IOMMU Pass Through Support

    Fix up trivial conflicts in drivers/pci/{intel-iommu.c,intr_remapping.c}

    Linus Torvalds
     
  • * git://git.infradead.org/mtd-2.6: (63 commits)
    mtd: OneNAND: Allow setting of boundary information when built as module
    jffs2: leaking jffs2_summary in function jffs2_scan_medium
    mtd: nand: Fix memory leak on txx9ndfmc probe failure.
    mtd: orion_nand: use burst reads with double word accesses
    mtd/nand: s3c6400 support for s3c2410 driver
    [MTD] [NAND] S3C2410: Use DIV_ROUND_UP
    [MTD] [NAND] S3C2410: Deal with unaligned lengths in S3C2440 buffer read/write
    [MTD] [NAND] S3C2410: Allow the machine code to get the BBT table from NAND
    [MTD] [NAND] S3C2410: Added a kerneldoc for s3c2410_nand_set
    mtd: physmap_of: Add multiple regions and concatenation support
    mtd: nand: max_retries off by one in mxc_nand
    mtd: nand: s3c2410_nand_setrate(): use correct macros for 2412/2440
    mtd: onenand: add bbt_wait & unlock_all as replaceable for some platform
    mtd: Flex-OneNAND support
    mtd: nand: add OMAP2/OMAP3 NAND driver
    mtd: maps: Blackfin async: fix memory leaks in probe/remove funcs
    mtd: uclinux: mark local stuff static
    mtd: uclinux: do not allow to be built as a module
    mtd: uclinux: allow systems to override map addr/size
    mtd: blackfin NFC: fix hang when using NAND on BF527-EZKITs
    ...

    Linus Torvalds
     
  • * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (49 commits)
    [ARM] idle: clean up pm_idle calling, obey hlt_counter
    [ARM] S3C: Fix gpio-config off-by-one bug
    [ARM] S3C64XX: add to_irq() support for EINT() GPIO
    [ARM] S3C64XX: clock.c: fix typo in usb-host clock ctrlbit
    [ARM] S3C64XX: fix HCLK gate defines
    [ARM] Update mach-types
    [ARM] wire up rt_tgsigqueueinfo and perf_counter_open
    OMAP2 clock/powerdomain: off by 1 error in loop timeout comparisons
    OMAP3 SDRC: set FIXEDDELAY when disabling SDRC DLL
    OMAP3: Add support for DPLL3 divisor values higher than 2
    OMAP3 SRAM: convert SRAM code to use macros rather than magic numbers
    OMAP3 SRAM: add more comments on the SRAM code
    OMAP3 clock/SDRC: program SDRC_MR register during SDRC clock change
    OMAP3 clock: add a short delay when lowering CORE clk rate
    OMAP3 clock: initialize SDRC timings at kernel start
    OMAP3 clock: remove wait for DPLL3 M2 clock to stabilize
    [ARM] Add old Feroceon support to compressed/head.S
    [ARM] 5559/1: Limit the stack unwinding caused by a kthread exit
    [ARM] 5558/1: Add extra checks to ARM unwinder to avoid tracing corrupt stacks
    [ARM] 5557/1: Discard some ARM.ex*.*exit.text sections when !HOTPLUG or !HOTPLUG_CPU
    ...

    Linus Torvalds
     
  • * 'for-2.6.31' of git://fieldses.org/git/linux-nfsd: (60 commits)
    SUNRPC: Fix the TCP server's send buffer accounting
    nfsd41: Backchannel: minorversion support for the back channel
    nfsd41: Backchannel: cleanup nfs4.0 callback encode routines
    nfsd41: Remove ip address collision detection case
    nfsd: optimise the starting of zero threads when none are running.
    nfsd: don't take nfsd_mutex twice when setting number of threads.
    nfsd41: sanity check client drc maxreqs
    nfsd41: move channel attributes from nfsd4_session to a nfsd4_channel_attr struct
    NFS: kill off complicated macro 'PROC'
    sunrpc: potential memory leak in function rdma_read_xdr
    nfsd: minor nfsd_vfs_write cleanup
    nfsd: Pull write-gathering code out of nfsd_vfs_write
    nfsd: track last inode only in use_wgather case
    sunrpc: align cache_clean work's timer
    nfsd: Use write gathering only with NFSv2
    NFSv4: kill off complicated macro 'PROC'
    NFSv4: do exact check about attribute specified
    knfsd: remove unreported filehandle stats counters
    knfsd: fix reply cache memory corruption
    knfsd: reply cache cleanups
    ...

    Linus Torvalds
     
  • * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (74 commits)
    PCI: make msi_free_irqs() to use msix_mask_irq() instead of open coded write
    PCI: Fix the NIU MSI-X problem in a better way
    PCI ASPM: remove get_root_port_link
    PCI ASPM: cleanup pcie_aspm_sanity_check
    PCI ASPM: remove has_switch field
    PCI ASPM: cleanup calc_Lx_latency
    PCI ASPM: cleanup pcie_aspm_get_cap_device
    PCI ASPM: cleanup clkpm checks
    PCI ASPM: cleanup __pcie_aspm_check_state_one
    PCI ASPM: cleanup initialization
    PCI ASPM: cleanup change input argument of aspm functions
    PCI ASPM: cleanup misc in struct pcie_link_state
    PCI ASPM: cleanup clkpm state in struct pcie_link_state
    PCI ASPM: cleanup latency field in struct pcie_link_state
    PCI ASPM: cleanup aspm state field in struct pcie_link_state
    PCI ASPM: fix typo in struct pcie_link_state
    PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS
    PCI: remove redundant __msi_set_enable()
    PCI PM: consistently use type bool for wake enable variable
    x86/ACPI: Correct maximum allowed _CRS returned resources and warn if exceeded
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (43 commits)
    via-velocity: Fix velocity driver unmapping incorrect size.
    mlx4_en: Remove redundant refill code on RX
    mlx4_en: Removed redundant check on lso header size
    mlx4_en: Cancel port_up check in transmit function
    mlx4_en: using stop/start_all_queues
    mlx4_en: Removed redundant skb->len check
    mlx4_en: Counting all the dropped packets on the TX side
    usbnet cdc_subset: fix issues talking to PXA gadgets
    Net: qla3xxx, remove sleeping in atomic
    ipv4: fix NULL pointer + success return in route lookup path
    isdn: clean up documentation index
    cfg80211: validate station settings
    cfg80211: allow setting station parameters in mesh
    cfg80211: allow adding/deleting stations on mesh
    ath5k: fix beacon_int handling
    MAINTAINERS: Fix Atheros pattern paths
    ath9k: restore PS mode, before we put the chip into FULL SLEEP state.
    ath9k: wait for beacon frame along with CAB
    acer-wmi: fix rfkill conversion
    ath5k: avoid PCI FATAL interrupts by restoring RETRY_TIMEOUT disabling
    ...

    Linus Torvalds
     

22 Jun, 2009

4 commits

  • This patch contains a device-mapper mirror log module that forwards
    requests to userspace for processing.

    The structures used for communication between kernel and userspace are
    located in include/linux/dm-log-userspace.h. Due to the frequency,
    diversity, and 2-way communication nature of the exchanges between
    kernel and userspace, 'connector' was chosen as the interface for
    communication.

    The first log implementations written in userspace - "clustered-disk"
    and "clustered-core" - support clustered shared storage. A userspace
    daemon (in the LVM2 source code repository) uses openAIS/corosync to
    process requests in an ordered fashion with the rest of the nodes in the
    cluster so as to prevent log state corruption. Other implementations
    with no association to LVM or openAIS/corosync, are certainly possible.

    (Imagine if two machines are writing to the same region of a mirror.
    They would both mark the region dirty, but you need a cluster-aware
    entity that can handle properly marking the region clean when they are
    done. Otherwise, you might clear the region when the first machine is
    done, not the second.)

    Signed-off-by: Jonathan Brassow
    Cc: Evgeniy Polyakov
    Signed-off-by: Alasdair G Kergon

    Jonthan Brassow
     
  • This patch adds a service time oriented dynamic load balancer,
    dm-service-time, which selects the path with the shortest estimated
    service time for the incoming I/O.
    The service time is estimated by dividing the in-flight I/O size
    by a performance value of each path.

    The performance value can be given as a table argument at the table
    loading time. If no performance value is given, all paths are
    considered equal.

    Signed-off-by: Kiyoshi Ueda
    Signed-off-by: Jun'ichi Nomura
    Signed-off-by: Alasdair G Kergon

    Kiyoshi Ueda
     
  • This patch adds a dynamic load balancer, dm-queue-length, which
    balances the number of in-flight I/Os across the paths.

    The code is based on the patch posted by Stefan Bader:
    https://www.redhat.com/archives/dm-devel/2005-October/msg00050.html

    Signed-off-by: Stefan Bader
    Signed-off-by: Kiyoshi Ueda
    Signed-off-by: Jun'ichi Nomura
    Signed-off-by: Alasdair G Kergon

    Kiyoshi Ueda
     
  • According to Andi, it isn't clear whether lpage allocator is worth the
    trouble as there are many processors where PMD TLB is far scarcer than
    PTE TLB. The advantage or disadvantage probably depends on the actual
    size of percpu area and specific processor. As performance
    degradation due to TLB pressure tends to be highly workload specific
    and subtle, it is difficult to decide which way to go without more
    data.

    This patch implements percpu_alloc kernel parameter to allow selecting
    which first chunk allocator to use to ease debugging and testing.

    While at it, make sure all the failure paths report why something
    failed to help determining why certain allocator isn't working. Also,
    kill the "Great future plan" comment which had already been realized
    quite some time ago.

    [ Impact: allow explicit percpu first chunk allocator selection ]

    Signed-off-by: Tejun Heo
    Reported-by: Jan Beulich
    Cc: Andi Kleen
    Cc: Ingo Molnar

    Tejun Heo