Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Jan 8, 2013
  1. crypto: serpent - add AVX2/x86_64 assembler implementation of serpent…

    authored
    … cipher
    
    TODO: benchmarks on real hardware.
    
    Performance tests using Intel Architecture Code Analyzer Version - 2.0.1:
    
    Estimate assume that latencies and throughput of 256-bit AVX2 instructions
    are same as of 128-bit AVX instructions on Ivy Bridge.
    
    serpent-16way, cycles/byte: 4.84
    
    Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
  2. crypto: twofish - add AVX2/x86_64 assembler implementation of twofish…

    authored
    … cipher
    
    TODO: benchmarks on real hardware.
    
    Performance tests using Intel Architecture Code Analyzer Version - 2.0.1:
    
    Estimates assume that latencies and throughput of 256-bit AVX2 instructions
    are same as of 128-bit AVX instructions, except vpgatherdd that is estimated as
    following:
     *1: Dispatches 8 load uops, that can be dispatched to two load ports, and 2
         helper uops for merging loads. This also is nearly same as estimating
         case where there is only one load port with gather hardware with 4 cycles
         latency.
     *2: Dedicated gather hardware on two load ports, 1 uop with latency of 8
         cycles (can fetch parallel on two ports) + 2 helper uops.
     *3: Dedicated gather hardware on two load port, 1 uop with latency of 4
         cycles (can fetch parallel on two ports) + 2 helper uops.
    
    twofish-16way, cycles/byte:
     *1:    5.40
     *2:    5.80
     *3:    3.87
    
    Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
  3. crypto: blowfish - add AVX2/x86_64 implementation of blowfish cipher

    authored
    TODO: test performance on real hardware.
    
    Performance tests using Intel Architecture Code Analyzer Version - 2.0.1:
    
    Estimates assume that latencies and throughput of 256-bit AVX2 instructions
    are same as of 128-bit AVX instructions, except vpgatherdd that is estimated as
    following:
     *1: Dispatches 8 load uops, that can be dispatched to two load ports, and 2
         helper uops for merging loads. This also is nearly same as estimating
         case where there is only one load port with gather hardware with 4 cycles
         latency.
     *2: Dedicated gather hardware on two load ports, 1 uop with latency of 8
         cycles (can fetch parallel on two ports) + 2 helper uops.
     *3: Dedicated gather hardware on two load port, 1 uop with latency of 4
         cycles (can fetch parallel on two ports) + 2 helper uops.
    
    blowfish-32way, cycles/byte:
     *1:	4.22
     *2:	3.76
     *3:	2.62
    
    Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
  4. crypto: tcrypt - randomize speed test memory

    authored
    Running speed tests on uniform memory can give better performance results than on random/real-world data. Therefore randomize memory
    to be used by speed tests.
    
    Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
  5. crypto: tcrypt - add async cipher speed tests for blowfish and camellia

    authored
    Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
Commits on Jan 5, 2013
  1. @mgreeraz @herbertx

    crypto: omap-sham - Add SHA224 and SHA256 Support

    mgreeraz authored herbertx committed
    The OMAP4/AM33xx version of the SHAM crypto module
    supports SHA224 and SHA256 in addition to MD5 and
    SHA1 that the OMAP2 version of the module supports.
    
    To add this support, use the platform_data introduced
    in an ealier commit to hold the list of algorithms
    supported by the current module.  The probe routine
    will use that list to register the correct algorithms.
    
    Note: The code being integrated is from the TI AM33xx SDK
    and was written by Greg Turner <gkmturner@gmail.com> and
    Herman Schuurman (current email unknown) while at TI.
    
    CC: Greg Turner <gkmturner@gmail.com>
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  2. @mgreeraz @herbertx

    crypto: omap-sham - Add OMAP4/AM33XX SHAM Support

    mgreeraz authored herbertx committed
    Add support for the OMAP4 version of the SHAM module
    that is present on OMAP4 and AM33xx SoCs.
    
    The modules have several differences including register
    offsets, hardware XORing, and how DMA is triggered.
    To handle these differences, a platform_data structure
    is defined and contains routine pointers, register offsets,
    bit shifts within registers, and flags to indicate whether
    the hardware supports XORing and provides SHA1 results in
    big or little endian.  OMAP2/OMAP3-specific routines are
    suffixed with '_omap2' and OMAP4/AM33xx routines are suffixed
    with '_omap4'.
    
    Note: The code being integrated is from the TI AM33xx SDK
    and was written by Greg Turner <gkmturner@gmail.com> and
    Herman Schuurman (current email unknown) while at TI.
    
    CC: Greg Turner <gkmturner@gmail.com>
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  3. @mgreeraz @herbertx

    crypto: omap-sham - Convert to dma_request_slave_channel_compat()

    mgreeraz authored herbertx committed
    Use the dma_request_slave_channel_compat() call instead of
    the dma_request_channel() call to request a DMA channel.
    This allows the omap-sham driver use different DMA engines.
    
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  4. @mgreeraz @herbertx

    crypto: omap-sham - Add Device Tree Support

    mgreeraz authored herbertx committed
    Add Device Tree suport to the omap-sham crypto
    driver.  Currently, only support for OMAP2 and
    OMAP3 is being added but support for OMAP4 will
    be added in a subsequent patch.
    
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  5. @mgreeraz @herbertx

    crypto: omap-sham - Remove usage of private DMA API

    mgreeraz authored herbertx committed
    Remove usage of the private OMAP DMA API.
    The dmaengine API will be used instead.
    
    CC: Russell King <rmk+kernel@arm.linux.org.uk>
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  6. @mgreeraz @herbertx

    crypto: omap-sham - Add code to use dmaengine API

    mgreeraz authored herbertx committed
    Add code to use the new dmaengine API alongside
    the existing DMA code that uses the private
    OMAP DMA API.  The API to use is chosen by
    defining or undefining 'OMAP_SHAM_DMA_PRIVATE'.
    
    This is a transitional change and the code that uses
    the private DMA API will be removed in an upcoming
    commit.
    
    CC: Russell King <rmk+kernel@arm.linux.org.uk>
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  7. @mgreeraz @herbertx

    crypto: omap-sham - Add suspend/resume support

    mgreeraz authored herbertx committed
    Add suspend/resume support to the OMAP SHAM driver.
    
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  8. @mgreeraz @herbertx

    crypto: omap-sham - Convert to use pm_runtime API

    mgreeraz authored herbertx committed
    Convert the omap-sham crypto driver to use the
    pm_runtime API instead of the clk API.
    
    CC: Kevin Hilman <khilman@deeprootsystems.com>
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  9. @mgreeraz @herbertx

    crypto: omap-sham - Remove unnecessary pr_info noise

    mgreeraz authored herbertx committed
    Remove the unnecessary pr_info() call in omap_sham_mod_init().
    
    CC: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
    Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Commits on Dec 22, 2012
  1. @torvalds

    Linux 3.8-rc1

    torvalds authored
  2. @torvalds

    Merge git://www.linux-watchdog.org/linux-watchdog

    torvalds authored
    Pull watchdog updates from Wim Van Sebroeck:
     "This includes some fixes and code improvements (like
      clk_prepare_enable and clk_disable_unprepare), conversion from the
      omap_wdt and twl4030_wdt drivers to the watchdog framework, addition
      of the SB8x0 chipset support and the DA9055 Watchdog driver and some
      OF support for the davinci_wdt driver."
    
    * git://www.linux-watchdog.org/linux-watchdog: (22 commits)
      watchdog: mei: avoid oops in watchdog unregister code path
      watchdog: Orion: Fix possible null-deference in orion_wdt_probe
      watchdog: sp5100_tco: Add SB8x0 chipset support
      watchdog: davinci_wdt: add OF support
      watchdog: da9052: Fix invalid free of devm_ allocated data
      watchdog: twl4030_wdt: Change TWL4030_MODULE_PM_RECEIVER to TWL_MODULE_PM_RECEIVER
      watchdog: remove depends on CONFIG_EXPERIMENTAL
      watchdog: Convert dev_printk(KERN_<LEVEL> to dev_<level>(
      watchdog: DA9055 Watchdog driver
      watchdog: omap_wdt: eliminate goto
      watchdog: omap_wdt: delete redundant platform_set_drvdata() calls
      watchdog: omap_wdt: convert to devm_ functions
      watchdog: omap_wdt: convert to new watchdog core
      watchdog: WatchDog Timer Driver Core: fix comment
      watchdog: s3c2410_wdt: use clk_prepare_enable and clk_disable_unprepare
      watchdog: imx2_wdt: Select the driver via ARCH_MXC
      watchdog: cpu5wdt.c: add missing del_timer call
      watchdog: hpwdt.c: Increase version string
      watchdog: Convert twl4030_wdt to watchdog core
      davinci_wdt: preparation for switch to common clock framework
      ...
  3. @torvalds

    Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6

    torvalds authored
    Pull CIFS fixes from Steve French:
     "Misc small cifs fixes"
    
    * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
      cifs: eliminate cifsERROR variable
      cifs: don't compare uniqueids in cifs_prime_dcache unless server inode numbers are in use
      cifs: fix double-free of "string" in cifs_parse_mount_options
  4. @torvalds

    Merge tag 'dm-3.8-fixes' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds authored
    …/git/agk/linux-dm
    
    Pull dm update from Alasdair G Kergon:
     "Miscellaneous device-mapper fixes, cleanups and performance
      improvements.
    
      Of particular note:
       - Disable broken WRITE SAME support in all targets except linear and
         striped.  Use it when kcopyd is zeroing blocks.
       - Remove several mempools from targets by moving the data into the
         bio's new front_pad area(which dm calls 'per_bio_data').
       - Fix a race in thin provisioning if discards are misused.
       - Prevent userspace from interfering with the ioctl parameters and
         use kmalloc for the data buffer if it's small instead of vmalloc.
       - Throttle some annoying error messages when I/O fails."
    
    * tag 'dm-3.8-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm: (36 commits)
      dm stripe: add WRITE SAME support
      dm: remove map_info
      dm snapshot: do not use map_context
      dm thin: dont use map_context
      dm raid1: dont use map_context
      dm flakey: dont use map_context
      dm raid1: rename read_record to bio_record
      dm: move target request nr to dm_target_io
      dm snapshot: use per_bio_data
      dm verity: use per_bio_data
      dm raid1: use per_bio_data
      dm: introduce per_bio_data
      dm kcopyd: add WRITE SAME support to dm_kcopyd_zero
      dm linear: add WRITE SAME support
      dm: add WRITE SAME support
      dm: prepare to support WRITE SAME
      dm ioctl: use kmalloc if possible
      dm ioctl: remove PF_MEMALLOC
      dm persistent data: improve improve space map block alloc failure message
      dm thin: use DMERR_LIMIT for errors
      ...
  5. @torvalds

    Revert "nfsd: warn on odd reply state in nfsd_vfs_read"

    J. Bruce Fields authored torvalds committed
    This reverts commit 79f77bf.
    
    This is obviously wrong, and I have no idea how I missed seeing the
    warning in testing: I must just not have looked at the right logs.  The
    caller bumps rq_resused/rq_next_page, so it will always be hit on a
    large enough read.
    
    Reported-by: Dave Jones <davej@redhat.com>
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  6. @torvalds

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

    torvalds authored
    …el/git/roland/infiniband
    
    Pull more infiniband changes from Roland Dreier:
     "Second batch of InfiniBand/RDMA changes for 3.8:
       - cxgb4 changes to fix lookup engine hash collisions
       - mlx4 changes to make flow steering usable
       - fix to IPoIB to avoid pinning dst reference for too long"
    
    * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
      RDMA/cxgb4: Fix bug for active and passive LE hash collision path
      RDMA/cxgb4: Fix LE hash collision bug for passive open connection
      RDMA/cxgb4: Fix LE hash collision bug for active open connection
      mlx4_core: Allow choosing flow steering mode
      mlx4_core: Adjustments to Flow Steering activation logic for SR-IOV
      mlx4_core: Fix error flow in the flow steering wrapper
      mlx4_core: Add QPN enforcement for flow steering rules set by VFs
      cxgb4: Add LE hash collision bug fix path in LLD driver
      cxgb4: Add T4 filter support
      IPoIB: Call skb_dst_drop() once skb is enqueued for sending
  7. @torvalds

    Merge tag 'asm-generic' of git://git.kernel.org/pub/scm/linux/kernel/…

    torvalds authored
    …git/arnd/asm-generic
    
    Pull asm-generic cleanup from Arnd Bergmann:
     "These are a few cleanups for asm-generic:
    
       - a set of patches from Lars-Peter Clausen to generalize asm/mmu.h
         and use it in the architectures that don't need any special
         handling.
       - A patch from Will Deacon to remove the {read,write}s{b,w,l} as
         discussed during the arm64 review
       - A patch from James Hogan that helps with the meta architecture
         series."
    
    * tag 'asm-generic' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
      xtensa: Use generic asm/mmu.h for nommu
      h8300: Use generic asm/mmu.h
      c6x: Use generic asm/mmu.h
      asm-generic/mmu.h: Add support for FDPIC
      asm-generic/mmu.h: Remove unused vmlist field from mm_context_t
      asm-generic: io: remove {read,write} string functions
      asm-generic/io.h: remove asm/cacheflush.h include
  8. @kgene @torvalds

    ARM: dts: fix duplicated build target and alphabetical sort out for e…

    kgene authored torvalds committed
    …xynos
    
    Commit db5b0ae ("Merge tag 'dt' of git://git.kernel.org/.../arm-soc")
    causes a duplicated build target.  This patch fixes it and sorts out the
    build target alphabetically so that we can recognize something wrong
    easily.
    
    Cc: Olof Johansson <olof@lixom.net>
    Cc: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Commits on Dec 21, 2012
  1. @snitm

    dm stripe: add WRITE SAME support

    snitm authored Alasdair G Kergon committed
    Rename stripe_map_discard to stripe_map_range and reuse it for WRITE
    SAME bio processing.
    
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  2. dm: remove map_info

    Mikulas Patocka authored Alasdair G Kergon committed
    This patch removes map_info from bio-based device mapper targets.
    map_info is still used for request-based targets.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  3. dm snapshot: do not use map_context

    Mikulas Patocka authored Alasdair G Kergon committed
    Eliminate struct map_info from dm-snap.
    
    map_info->ptr was used in dm-snap to indicate if the bio was tracked.
    If map_info->ptr was non-NULL, the bio was linked in tracked_chunk_hash.
    
    This patch removes the use of map_info->ptr. We determine if the bio was
    tracked based on hlist_unhashed(&c->node). If hlist_unhashed is true,
    the bio is not tracked, if it is false, the bio is tracked.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  4. dm thin: dont use map_context

    Mikulas Patocka authored Alasdair G Kergon committed
    This patch removes endio_hook_pool from dm-thin and uses per-bio data instead.
    
    This patch removes any use of map_info in preparation for the next patch
    that removes map_info from bio-based device mapper.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  5. dm raid1: dont use map_context

    Mikulas Patocka authored Alasdair G Kergon committed
    Don't use map_info any more in dm-raid1.
    
    map_info was used for writes to hold the region number. For this purpose
    we add a new field dm_bio_details to dm_raid1_bio_record.
    
    map_info was used for reads to hold a pointer to dm_raid1_bio_record (if
    the pointer was non-NULL, bio details were saved; if the pointer was
    NULL, bio details were not saved). We use
    dm_raid1_bio_record.details->bi_bdev for this purpose. If bi_bdev is
    NULL, details were not saved, if bi_bdev is non-NULL, details were
    saved.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  6. dm flakey: dont use map_context

    Mikulas Patocka authored Alasdair G Kergon committed
    Replace map_info with a per-bio structure "struct per_bio_data" in dm-flakey.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  7. dm raid1: rename read_record to bio_record

    Mikulas Patocka authored Alasdair G Kergon committed
    Rename struct read_record to bio_record in dm-raid1.
    
    In the following patch, the structure will be used for both read and
    write bios, so rename it.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  8. dm: move target request nr to dm_target_io

    Mikulas Patocka authored Alasdair G Kergon committed
    This patch moves target_request_nr from map_info to dm_target_io and
    makes it accessible with dm_bio_get_target_request_nr.
    
    This patch is a preparation for the next patch that removes map_info.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  9. dm snapshot: use per_bio_data

    Mikulas Patocka authored Alasdair G Kergon committed
    Replace tracked_chunk_pool with per_bio_data in dm-snap.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  10. dm verity: use per_bio_data

    Mikulas Patocka authored Alasdair G Kergon committed
    Replace io_mempool with per_bio_data in dm-verity.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  11. dm raid1: use per_bio_data

    Mikulas Patocka authored Alasdair G Kergon committed
    Replace read_record_pool with per_bio_data in dm-raid1.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  12. dm: introduce per_bio_data

    Mikulas Patocka authored Alasdair G Kergon committed
    Introduce a field per_bio_data_size in struct dm_target.
    
    Targets can set this field in the constructor. If a target sets this
    field to a non-zero value, "per_bio_data_size" bytes of auxiliary data
    are allocated for each bio submitted to the target. These data can be
    used for any purpose by the target and help us improve performance by
    removing some per-target mempools.
    
    Per-bio data is accessed with dm_per_bio_data. The
    argument data_size must be the same as the value per_bio_data_size in
    dm_target.
    
    If the target has a pointer to per_bio_data, it can get a pointer to
    the bio with dm_bio_from_per_bio_data() function (data_size must be the
    same as the value passed to dm_per_bio_data).
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
  13. @snitm

    dm kcopyd: add WRITE SAME support to dm_kcopyd_zero

    snitm authored Alasdair G Kergon committed
    Add WRITE SAME support to dm-io and make it accessible to
    dm_kcopyd_zero().  dm_kcopyd_zero() provides an asynchronous interface
    whereas the blkdev_issue_write_same() interface is synchronous.
    
    WRITE SAME is a SCSI command that can be leveraged for more efficient
    zeroing of a specified logical extent of a device which supports it.
    Only a single zeroed logical block is transfered to the target for each
    WRITE SAME and the target then writes that same block across the
    specified extent.
    
    The dm thin target uses this.
    
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Something went wrong with that request. Please try again.