1. 14 1月, 2011 40 次提交
    • T
      dm snapshot: persistent make metadata_wq multithreaded · 239c8dd5
      Tejun Heo 提交于
      metadata_wq serves on-stack work items from chunk_io().  Even if
      multiple chunk_io() are simultaneously in progress, each is
      independent and queued only once, so multithreaded workqueue can be
      safely used.
      
      Switch metadata_wq to multithread and flush the work item instead of
      the workqueue in chunk_io().
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      239c8dd5
    • T
      dm: use non reentrant workqueues if equivalent · 9c4376de
      Tejun Heo 提交于
      kmirrord_wq, kcopyd_work and md->wq are created per dm instance and
      serve only a single work item from the dm instance, so non-reentrant
      workqueues would provide the same ordering guarantees as ordered ones
      while allowing CPU affinity and use of the workqueues for other
      purposes.  Switch them to non-reentrant workqueues.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      9c4376de
    • T
      dm: convert workqueues to alloc_ordered · 4d4d66ab
      Tejun Heo 提交于
      Convert all create[_singlethread]_work() users to the new
      alloc[_ordered]_workqueue().  This conversion is mechanical and
      doesn't introduce any behavior change.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      4d4d66ab
    • T
      dm stripe: switch from local workqueue to system_wq · f521f074
      Tejun Heo 提交于
      kstriped only serves sc->kstriped_ws which runs dm_table_event().
      This doesn't need to be executed from an ordered workqueue w/ rescuer.
      Drop kstriped and use the system_wq instead.  While at it, rename
      kstriped_ws to trigger_event so that it's consistent with other dm
      modules.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      f521f074
    • T
      dm: dont use flush_scheduled_work · d5ffa387
      Tejun Heo 提交于
      flush_scheduled_work() is being deprecated.  Flush the used work
      directly instead.  In all dm targets, the only work which uses
      system_wq is ->trigger_event.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      d5ffa387
    • T
      dm snapshot: remove unused dm_snapshot queued_bios_work · fecec20e
      Tejun Heo 提交于
      dm_snapshot->queued_bios_work isn't used.  Remove ->queued_bios[_work]
      from dm_snapshot structure, the flush_queued_bios work function and
      ksnapd workqueue.
      
      The DM snapshot changes that were going to use the ksnapd workqueue were
      either superseded (fix for origin write races) or never completed
      (deallocation of invalid snapshot's memory via workqueue).
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      fecec20e
    • M
      dm ioctl: suppress needless warning messages · 810b4923
      Milan Broz 提交于
      The device-mapper should not send warning messages to syslog
      if a device is not found. This can be done by userspace
      according to the returned dm-ioctl error code.
      
      So move these messages to debug level and use rate limiting
      to not flood syslog.
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      810b4923
    • M
      dm crypt: add loop aes iv generator · 34745785
      Milan Broz 提交于
      This patch adds a compatible implementation of the block
      chaining mode used by the Loop-AES block device encryption
      system (http://loop-aes.sourceforge.net/) designed
      by Jari Ruusu.
      
      It operates on full 512 byte sectors and uses CBC
      with an IV derived from the sector number, the data and
      optionally extra IV seed.
      
      This means that after CBC decryption the first block of sector
      must be tweaked according to decrypted data.
      
      Loop-AES can use three encryption schemes:
       version 1: is plain aes-cbc mode (already compatible)
       version 2: uses 64 multikey scheme with own IV generator
       version 3: the same as version 2 with additional IV seed
                  (it uses 65 keys, last key is used as IV seed)
      
      The IV generator is here named lmk (Loop-AES multikey)
      and for the cipher specification looks like: aes:64-cbc-lmk
      
      Version 2 and 3 is recognised according to length
      of provided multi-key string (which is just hexa encoded
      "raw key" used in original Loop-AES ioctl).
      
      Configuration of the device and decoding key string will
      be done in userspace (cryptsetup).
      (Loop-AES stores keys in gpg encrypted file, raw keys are
      output of simple hashing of lines in this file).
      
      Based on an implementation by Max Vozeler:
        http://article.gmane.org/gmane.linux.kernel.cryptoapi/3752/Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      CC: Max Vozeler <max@hinterhof.net>
      34745785
    • M
      dm crypt: add multi key capability · d1f96423
      Milan Broz 提交于
      This patch adds generic multikey handling to be used
      in following patch for Loop-AES mode compatibility.
      
      This patch extends mapping table to optional keycount and
      implements generic multi-key capability.
      
      With more keys defined the <key> string is divided into
      several <keycount> sections and these are used for tfms.
      
      The tfm is used according to sector offset
      (sector 0->tfm[0], sector 1->tfm[1], sector N->tfm[N modulo keycount])
      (only power of two values supported for keycount here).
      
      Because of tfms per-cpu allocation, this mode can be take
      a lot of memory on large smp systems.
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      Cc: Max Vozeler <max@hinterhof.net>
      d1f96423
    • M
      dm crypt: add post iv call to iv generator · 2dc5327d
      Milan Broz 提交于
      IV (initialisation vector) can in principle depend not only
      on sector but also on plaintext data (or other attributes).
      
      Change IV generator interface to work directly with dmreq
      structure to allow such dependence in generator.
      
      Also add post() function which is called after the crypto
      operation.
      
      This allows tricky modification of decrypted data or IV
      internals.
      
      In asynchronous mode the post() can be called after
      ctx->sector count was increased so it is needed
      to add iv_sector copy directly to dmreq structure.
      (N.B. dmreq always include only one sector in scatterlists)
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      2dc5327d
    • M
      dm crypt: use io thread for reads only if mempool exhausted · 20c82538
      Milan Broz 提交于
      If there is enough memory, code can directly submit bio
      instead queing this operation in separate thread.
      
      Try to alloc bio clone with GFP_NOWAIT and only if it
      fails use separate queue (map function cannot block here).
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      20c82538
    • A
      dm crypt: scale to multiple cpus · c0297721
      Andi Kleen 提交于
      Currently dm-crypt does all the encryption work for a single dm-crypt
      mapping in a single workqueue. This does not scale well when multiple
      CPUs are submitting IO at a high rate. The single CPU running the single
      thread cannot keep up with the encryption and encrypted IO performance
      tanks.
      
      This patch changes the crypto workqueue to be per CPU. This means
      that as long as the IO submitter (or the interrupt target CPUs
      for reads) runs on different CPUs the encryption work will be also
      parallel.
      
      To avoid a bottleneck on the IO worker I also changed those to be
      per-CPU threads.
      
      There is still some shared data, so I suspect some bouncing
      cache lines. But I haven't done a detailed study on that yet.
      Signed-off-by: NAndi Kleen <ak@linux.intel.com>
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      c0297721
    • M
      dm crypt: simplify compatible table output · 7dbcd137
      Milan Broz 提交于
      Rename cc->cipher_mode to cc->cipher_string and store the whole of the cipher
      information so it can easily be printed when processing the DM_DEV_STATUS ioctl.
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      7dbcd137
    • J
      dm log userspace: add version number to comms · 86a54a48
      Jonathan Brassow 提交于
      This patch adds a 'version' field to the 'dm_ulog_request'
      structure.
      
      The 'version' field is taken from a portion of the unused
      'padding' field in the 'dm_ulog_request' structure.  This
      was done to avoid changing the size of the structure and
      possibly disrupting backwards compatibility.
      
      The version number will help notify user-space daemons
      when a change has been made to the kernel/userspace
      log API.
      Signed-off-by: NJonathan Brassow <jbrassow@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      86a54a48
    • J
      dm log userspace: group clear and mark requests · 085ae065
      Jonathan Brassow 提交于
      Allow the device-mapper log's 'mark' and 'clear' requests to be
      grouped and processed in a batch.  This can significantly reduce the
      amount of traffic going between the kernel and userspace (where the
      processing daemon resides).
      Signed-off-by: NJonathan Brassow <jbrassow@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      085ae065
    • J
      dm log userspace: split flush queue · 909cc4fb
      Jonathan Brassow 提交于
      Split the 'flush_list', which contained a mix of both 'mark' and 'clear'
      requests, into two distinct lists ('mark_list' and 'clear_list').
      
      The device mapper log implementations (used by various DM targets) are
      allowed to cache 'mark' and 'clear' requests until a 'flush' is
      received.  Until now, these cached requests were kept in the same list.
      They will now be put into distinct lists to facilitate group processing
      of these requests (in the next patch).
      Signed-off-by: NJonathan Brassow <jbrassow@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      909cc4fb
    • M
      dm kcopyd: delay unplugging · 8d35d3e3
      Mikulas Patocka 提交于
      Make kcopyd merge more I/O requests by using device unplugging.
      
      Without this patch, each I/O request is dispatched separately to the device.
      If the device supports tagged queuing, there are many small requests sent
      to the device. To improve performance, this patch will batch as many requests
      as possible, allowing the queue to merge consecutive requests, and send them
      to the device at once.
      
      In my tests (15k SCSI disk), this patch improves sequential write throughput:
      
        Sequential write throughput (chunksize of 4k, 32k, 512k)
        unpatched: 15.2, 18.5, 17.5 MB/s
        patched:   14.4, 22.6, 23.0 MB/s
      
      In most common uses (snapshot or two-way mirror), kcopyd is only used for
      two devices, one for reading and the other for writing, thus this optimization
      is implemented only for two devices. The optimization may be extended to n-way
      mirrors with some code complexity increase.
      
      We keep track of two block devices to unplug (one for read and the
      other for write) and unplug them when exiting "do_work" thread.  If
      there are more devices used (in theory it could happen, in practice it
      is rare), we unplug immediately.
      Signed-off-by: NMikulas Patocka <mpatocka@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      8d35d3e3
    • J
      dm log userspace: trap all failed log construction errors · 4a038677
      Jonathan Brassow 提交于
      When constructing a mirror log, it is possible for the initial request
      to fail for other reasons besides -ESRCH.  These must be handled too.
      Signed-off-by: NJonathan Brassow <jbrassow@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      4a038677
    • M
      dm crypt: set key size early · 69a8cfcd
      Milan Broz 提交于
      Simplify key size verification (hexadecimal string) and
      set key size early in constructor.
      
      (Patch required by later changes.)
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      69a8cfcd
    • M
      dm: remove dm_mutex after bkl conversion · 4a1aeb98
      Milan Broz 提交于
      This patch replaces dm_mutex with _minor_lock in dm_blk_close()
      and then removes it.
      
      During the BKL conversion, commit 6e9624b8
      (block: push down BKL into .open and .release) pushed lock_kernel()
      down into dm_blk_open/close calls.
      Commit 2a48fc0a
      (block: autoconvert trivial BKL users to private mutex) converted it to a
      local mutex, but _minor_lock is sufficient.
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      4a1aeb98
    • M
      dm raid1: support discard · 5fc2ffea
      Mike Snitzer 提交于
      Enable discard support in the DM mirror target.
      Also change an existing use of 'bvec' to 'addr' in the union.
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      5fc2ffea
    • P
      dm ioctl: allow rename to fill empty uuid · 84c89557
      Peter Jones 提交于
      Allow the uuid of a mapped device to be set after device creation.
      Previously the uuid (which is optional) could only be set by
      DM_DEV_CREATE.  If no uuid was supplied it could not be set later.
      
      Sometimes it's necessary to create the device before the uuid is known,
      and in such cases the uuid must be filled in after the creation.
      
      This patch extends DM_DEV_RENAME to accept a uuid accompanied by
      a new flag DM_UUID_FLAG.  This can only be done once and if no
      uuid was previously supplied.  It cannot be used to change an
      existing uuid.
      
      DM_VERSION_MINOR is also bumped to 19 to indicate this interface
      extension is available.
      Signed-off-by: NPeter Jones <pjones@redhat.com>
      Signed-off-by: NJonathan Brassow <jbrassow@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      84c89557
    • M
      dm io: remove BIO_RW_SYNCIO flag from kcopyd · d9bf0b50
      Mikulas Patocka 提交于
      Remove the REQ_SYNC flag to improve write throughput when writing
      to the origin with a snapshot on the same device (using the CFQ I/O
      scheduler).
      
      Sequential write throughput (chunksize of 4k, 32k, 512k)
        unpatched:  8.5,  8.6,  9.3 MB/s
        patched:   15.2, 18.5, 17.5 MB/s
      
      Snapshot exception reallocations are triggered by writes that are
      usually async, so mark the associated dm_io_request as async as well.
      This helps when using the CFQ I/O scheduler because it has separate
      queues for sync and async I/O.  Async is optimized for throughput; sync
      for latency.  With this change we're consciously favoring throughput over
      latency.
      Signed-off-by: NMikulas Patocka <mpatocka@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      d9bf0b50
    • M
      dm mpath: disable blk_abort_queue · 09c9d4c9
      Mike Snitzer 提交于
      Revert commit 224cb3e9
        dm: Call blk_abort_queue on failed paths
      
      Multipath began to use blk_abort_queue() to allow for
      lower latency path deactivation.  This was found to
      cause list corruption:
      
         the cmd gets blk_abort_queued/timedout run on it and the scsi eh
         somehow is able to complete and run scsi_queue_insert while
         scsi_request_fn is still trying to process the request.
      
         https://www.redhat.com/archives/dm-devel/2010-November/msg00085.htmlSigned-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      Cc: Mike Anderson <andmike@linux.vnet.ibm.com>
      Cc: Mike Christie <michaelc@cs.wisc.edu>
      Cc: stable@kernel.org
      09c9d4c9
    • M
      dm: dont take i_mutex to change device size · c217649b
      Mike Snitzer 提交于
      No longer needlessly hold md->bdev->bd_inode->i_mutex when changing the
      size of a DM device.  This additional locking is unnecessary because
      i_size_write() is already protected by the existing critical section in
      dm_swap_table().  DM already has a reference on md->bdev so the
      associated bd_inode may be changed without lifetime concerns.
      
      A negative side-effect of having held md->bdev->bd_inode->i_mutex was
      that a concurrent DM device resize and flush (via fsync) would deadlock.
      Dropping md->bdev->bd_inode->i_mutex eliminates this potential for
      deadlock.  The following reproducer no longer deadlocks:
        https://www.redhat.com/archives/dm-devel/2009-July/msg00284.htmlSigned-off-by: NMike Snitzer <snitzer@redhat.com>
      Signed-off-by: NMikulas Patocka <mpatocka@redhat.com>
      Signed-off-by: NAlasdair G Kergon <agk@redhat.com>
      Cc: stable@kernel.org
      c217649b
    • L
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 · 581548db
      Linus Torvalds 提交于
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
        [IA64] Fix format warning in arch/ia64/kernel/acpi.c
      581548db
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 · 03a4491f
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
        firewire: ohci: fix compilation on arches without PAGE_KERNEL_RO
      03a4491f
    • L
      Merge branch 'for-2.6.38/drivers' of git://git.kernel.dk/linux-2.6-block · 7b0cb1bd
      Linus Torvalds 提交于
      * 'for-2.6.38/drivers' of git://git.kernel.dk/linux-2.6-block:
        cciss: reinstate proper FIFO order of command queue list
        floppy: replace NO_GEOM macro with a function
      7b0cb1bd
    • L
      Merge branch 'for-2.6.38/core' of git://git.kernel.dk/linux-2.6-block · 275220f0
      Linus Torvalds 提交于
      * 'for-2.6.38/core' of git://git.kernel.dk/linux-2.6-block: (43 commits)
        block: ensure that completion error gets properly traced
        blktrace: add missing probe argument to block_bio_complete
        block cfq: don't use atomic_t for cfq_group
        block cfq: don't use atomic_t for cfq_queue
        block: trace event block fix unassigned field
        block: add internal hd part table references
        block: fix accounting bug on cross partition merges
        kref: add kref_test_and_get
        bio-integrity: mark kintegrityd_wq highpri and CPU intensive
        block: make kblockd_workqueue smarter
        Revert "sd: implement sd_check_events()"
        block: Clean up exit_io_context() source code.
        Fix compile warnings due to missing removal of a 'ret' variable
        fs/block: type signature of major_to_index(int) to major_to_index(unsigned)
        block: convert !IS_ERR(p) && p to !IS_ERR_NOR_NULL(p)
        cfq-iosched: don't check cfqg in choose_service_tree()
        fs/splice: Pull buf->ops->confirm() from splice_from_pipe actors
        cdrom: export cdrom_check_events()
        sd: implement sd_check_events()
        sr: implement sr_check_events()
        ...
      275220f0
    • L
      Merge branch 'for-linus/i2c-2638' of git://git.fluff.org/bjdooks/linux · fe3c560b
      Linus Torvalds 提交于
      * 'for-linus/i2c-2638' of git://git.fluff.org/bjdooks/linux:
        i2c-bfin-twi: move setup to the earlier subsys initcall
        i2c-bfin-twi: handle faulty slave devices better
        i2c-mv64xxx: send repeated START between messages in xfer
        i2c-nomadik: fix regression on adapter name
        i2c-omap: Set latency requirements only once for several messages
        i2c-eg20t: add driver for Intel EG20T
        i2c-ocores: add some device tree documentation
        i2c-ocores: Use devres for resource allocation
        i2c-ocores: Adapt for device tree
        i2c-iop3xx: add iomem annotation
      fe3c560b
    • L
      Merge branch 'rmobile-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 · d2005603
      Linus Torvalds 提交于
      * 'rmobile-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:
        ARM: mach-shmobile: Kill off unused !gpio_is_valid() case
        ARM: mach-shmobile: sh7372 Enable SDIO IRQs for Mackerel
        ARM: mach-shmobile: sh7377 Enable SDIO IRQs
        ARM: mach-shmobile: sh7367 Enable SDIO IRQs
        ARM: mach-shmobile: sh7372 Enable SDIO IRQs
        ARM: mach-shmobile: mackerel: Add touchscreen ST1232 support
        ARM: mach-shmobile: ap4eb: SCIF port for earlyprintk when using zboot
        ARM: mach-shmobile: mackerel: SCIF port for earlyprintk when using zboot
        ARM: mach-shmobile: mackerel: Add support get_cd in CN23
      d2005603
    • L
      Merge branch 'sh-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 · 86f6f9b6
      Linus Torvalds 提交于
      * 'sh-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (31 commits)
        sh: Add support for AP-SH4AD-0A board.
        sh: Add support for AP-SH4A-3A board.
        sh: Add a new mach type for alpha project boards.
        serial: sh-sci: build fixes.
        sh: sh7372 SH4AL-DSP probe support
        sh: sh7366 Enable SDIO IRQs
        sh: sh7343 Enable SDIO IRQs
        sh: mach-ecovec24: enable runtime PM for SDHI
        sh: sh7723 / ap325rxa enable SDIO IRQs
        sh: sh7722 Enable SDIO IRQs
        sh: sh7724 Enable SDIO IRQs
        sh: Fix up legacy PTEA space attribute mapping.
        sh: Stub out legacy PCC pgprot encoding for X2 TLBs.
        sh: constify prefetch pointers.
        sh: Add a machvec callback for early memblock reservations.
        sh: update sh7757lcr_defconfig
        sh: add PVR probing for SH7757 3rd cut
        sh: Use device_initcall() instead of __initcall()
        sh: intc - convert board specific landisk code
        sh: Move init_landisk_IRQ to header file
        ...
      86f6f9b6
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6 · d33a6291
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6: (29 commits)
        video: move SH_MIPI_DSI/SH_LCD_MIPI_DSI to the top of menu
        fbdev: Implement simple blanking in pseudocolor modes for vt8500lcdfb
        video: imx: Update the manufacturer's name
        nuc900fb: don't treat NULL clk as an error
        s3c2410fb: don't treat NULL clk as an error
        video: tidy up modedb formatting.
        video: matroxfb: Correct video option in comments and kernel config help.
        fbdev: sh_mobile_hdmi: simplify pointer handling
        fbdev: sh_mobile_hdmi: framebuffer notifiers have to be registered
        fbdev: sh_mobile_hdmi: add command line option to use the preferred EDID mode
        OMAP: DSS2: Introduce omap_channel as an omap_dss_device parameter, add new overlay manager.
        OMAP: DSS2: Use dss_features to handle DISPC bits removed on OMAP4
        OMAP: DSS2: LCD2 Channel Changes for DISPC
        OMAP: DSS2: Change remaining DISPC functions for new omap_channel argument
        OMAP: DSS2: Introduce omap_channel argument to DISPC functions used by interface drivers
        OMAP: DSS2: Represent DISPC register defines with channel as parameter
        OMAP: DSS2: Add dss_features for omap4 and overlay manager related features
        OMAP: DSS2: Clean up DISPC color mode validation checks
        OMAP: DSS2: Add back authors of panel-generic.c based drivers
        OMAP: DSS2: remove generic DPI panel driver duplicated panel drivers
        ...
      d33a6291
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · 66dc918d
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (348 commits)
        ALSA: hda - Fix NULL-derefence with a single mic in STAC auto-mic detection
        ALSA: hda - Add missing NID 0x19 fixup for Sony VAIO
        ALSA: hda - Fix ALC275 enable hardware EQ for SONY VAIO
        ALSA: oxygen: fix Xonar DG input
        ALSA: hda - Fix EAPD on Lenovo NB ALC269 to low
        ALSA: hda - Fix missing EAPD for Acer 4930G
        ALSA: hda: Disable 4/6 channels on some NVIDIA GPUs.
        ALSA: hda - Add static_hdmi_pcm option to HDMI codec parser
        ALSA: hda - Don't refer ELD when unplugged
        ASoC: tpa6130a2: Fix compiler warning
        ASoC: tlv320dac33: Add DAPM selection for LOM invert
        ASoC: DMIC codec: Adding a generic DMIC codec
        ALSA: snd-usb-us122l: Fix missing NULL checks
        ALSA: snd-usb-us122l: Fix MIDI output
        ASoC: soc-cache: Fix invalid memory access during snd_soc_lzo_cache_sync()
        ASoC: Fix section mismatch in wm8995.c
        ALSA: oxygen: add S/PDIF source selection for Claro cards
        ALSA: oxygen: fix CD/MIDI for X-Meridian (2G)
        ASoC: fix migor audio build
        ALSA: include delay.h for msleep in Xonar DG support
        ...
      66dc918d
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 · b2034d47
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (41 commits)
        fs: add documentation on fallocate hole punching
        Gfs2: fail if we try to use hole punch
        Btrfs: fail if we try to use hole punch
        Ext4: fail if we try to use hole punch
        Ocfs2: handle hole punching via fallocate properly
        XFS: handle hole punching via fallocate properly
        fs: add hole punching to fallocate
        vfs: pass struct file to do_truncate on O_TRUNC opens (try #2)
        fix signedness mess in rw_verify_area() on 64bit architectures
        fs: fix kernel-doc for dcache::prepend_path
        fs: fix kernel-doc for dcache::d_validate
        sanitize ecryptfs ->mount()
        switch afs
        move internal-only parts of ncpfs headers to fs/ncpfs
        switch ncpfs
        switch 9p
        pass default dentry_operations to mount_pseudo()
        switch hostfs
        switch affs
        switch configfs
        ...
      b2034d47
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 27d189c0
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (46 commits)
        hwrng: via_rng - Fix memory scribbling on some CPUs
        crypto: padlock - Move padlock.h into include/crypto
        hwrng: via_rng - Fix asm constraints
        crypto: n2 - use __devexit not __exit in n2_unregister_algs
        crypto: mark crypto workqueues CPU_INTENSIVE
        crypto: mv_cesa - dont return PTR_ERR() of wrong pointer
        crypto: ripemd - Set module author and update email address
        crypto: omap-sham - backlog handling fix
        crypto: gf128mul - Remove experimental tag
        crypto: af_alg - fix af_alg memory_allocated data type
        crypto: aesni-intel - Fixed build with binutils 2.16
        crypto: af_alg - Make sure sk_security is initialized on accept()ed sockets
        net: Add missing lockdep class names for af_alg
        include: Install linux/if_alg.h for user-space crypto API
        crypto: omap-aes - checkpatch --file warning fixes
        crypto: omap-aes - initialize aes module once per request
        crypto: omap-aes - unnecessary code removed
        crypto: omap-aes - error handling implementation improved
        crypto: omap-aes - redundant locking is removed
        crypto: omap-aes - DMA initialization fixes for OMAP off mode
        ...
      27d189c0
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · a1703154
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        rbd: fix cleanup when trying to mount inexistent image
        net/ceph: make ceph_msgr_wq non-reentrant
        ceph: fsc->*_wq's aren't used in memory reclaim path
        ceph: Always free allocated memory in osdmap_decode()
        ceph: Makefile: Remove unnessary code
        ceph: associate requests with opening sessions
        ceph: drop redundant r_mds field
        ceph: implement DIRLAYOUTHASH feature to get dir layout from MDS
        ceph: add dir_layout to inode
      a1703154
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog · 67b5ad9a
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
        watchdog: Add MCF548x watchdog driver.
        watchdog: add driver for the Atheros AR71XX/AR724X/AR913X SoCs
        watchdog: Add TCO support for nVidia chipsets
        watchdog: Add support for sp5100 chipset TCO
        watchdog: f71808e_wdt: add F71862FG, F71869 to Kconfig
        watchdog: iTCO_wdt: TCO Watchdog patch for Intel DH89xxCC PCH
        watchdog: iTCO_wdt: TCO Watchdog patch for Intel NM10 DeviceIDs
        watchdog: ks8695_wdt: include mach/hardware.h instead of mach/timex.h.
        watchdog: Propagate Book E WDT period changes to all cores
        watchdog: add CONFIG_WATCHDOG_NOWAYOUT support to PowerPC Book-E watchdog driver
        watchdog: alim7101_wdt: fix compiler warning on alim7101_pci_tbl
        watchdog: alim1535_wdt: fix compiler warning on ali_pci_tbl
        watchdog: Fix reboot on W83627ehf chipset.
        watchdog: Add watchdog support for W83627DHG chip
        watchdog: f71808e_wdt: Add Fintek F71869 watchdog
        watchdog: add f71862fg support
        watchdog: clean-up f71808e_wdt.c
      67b5ad9a
    • L
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 174a86df
      Linus Torvalds 提交于
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        hwmon: (dme1737) Minor cleanups
        hwmon: (dme1737) Add support for in7 for SCH5127
        hwmon: (emc1403) Add EMC1423 support
        hwmon: (w83627hf) Document W83627THF voltage pin mapping
        hwmon: (w83793) Drop useless mutex
        hwmon: (fschmd) Drop useless mutex
        hwmon: (w83781d) Use pr_fmt and pr_<level>
        hwmon: (pc87427) Use pr_fmt and pr_<level>
        hwmon: (pc87360) Use pr_fmt and pr_<level>
        hwmon: (lm78) Use pr_fmt and pr_<level>
        hwmon: (it87) Use pr_fmt and pr_<level>
        hwmon: Schedule the removal of the old intrusion detection interfaces
        hwmon: (w83793) Implement the standard intrusion detection interface
        hwmon: (w83792d) Implement the standard intrusion detection interface
        hwmon: (adm9240) Implement the standard intrusion detection interface
        hwmon: (via686a) Initialize fan_div values
        hwmon: (w83795) Silent false warning from gcc
        hwmon: (ads7828) Update email contact details
      174a86df
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 · 1896a134
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: (45 commits)
        regulator: missing index in PTR_ERR() in isl6271a_probe()
        regulator: Assign return value of mc13xxx_reg_rmw to ret
        regulator: Add initial per-regulator debugfs support
        regulator: Make regulator_has_full_constraints a bool
        regulator: Clean up logging a bit
        regulator: Optimise out noop voltage changes
        regulator: Add API to re-apply voltage to hardware
        regulator: Staticise non-exported functions in mc13892
        regulator: Only notify voltage changes when they succeed
        regulator: Provide a selector based set_voltage_sel() operation
        regulator: Factor out voltage set operation into a separate function
        regulator: Convert WM8994 to use get_voltage_sel()
        regulator: Convert WM835x to use get_voltage_sel()
        regulator: Allow modular build of mc13xxx-core
        regulator: support PMIC mc13892
        make mc13783 regulator code generic
        Change the register name definitions for mc13783
        mach-ux500: Updated and connected ab8500 regulator board configuration
        regulators: Removed macros for initialization of ab8500 regulators
        regulators: Added verbose debug messages to ab8500 regulators
        ...
      1896a134