11 Jan, 2008

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
    [CRYPTO] padlock: Fix alignment fault in aes_crypt_copy

    Linus Torvalds
     
  • The previous patch fixed spurious read faults from occuring by copying
    the data if we happen to have a single block at the end of a page. It
    appears that gcc cannot guarantee 16-byte alignment in the kernel with
    __attribute__. The following report from Torben Viets shows a buffer
    that's only 8-byte aligned:

    > eneral protection fault: 0000 [#1]
    > Modules linked in: xt_TCPMSS xt_tcpmss iptable_mangle ipt_MASQUERADE
    > xt_tcpudp xt_mark xt_state iptable_nat nf_nat nf_conntrack_ipv4
    > iptable_filter ip_tables x_tables pppoe pppox af_packet ppp_generic slhc
    > aes_i586
    > CPU: 0
    > EIP: 0060:[] Not tainted VLI
    > EFLAGS: 00010292 (2.6.23.12 #7)
    > EIP is at aes_crypt_copy+0x28/0x40
    > eax: f7639ff0 ebx: f6c24050 ecx: 00000001 edx: f6c24030
    > esi: f7e89dc8 edi: f7639ff0 ebp: 00010000 esp: f7e89dc8

    Since the hardware must have 16-byte alignment, the following patch fixes
    this by open coding the alignment adjustment.

    Signed-off-by: Herbert Xu

    Herbert Xu
     

28 Dec, 2007

2 commits


04 Dec, 2007

1 commit

  • The previous commit ("uml: keep UML Kconfig in sync with x86") is not
    enough, unfortunately. If we go that way, we need to add dependencies
    on !UML for several options.

    Signed-off-by: Al Viro
    Signed-off-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Al Viro
     

11 Nov, 2007

1 commit

  • Currently the Geode AES module fails to encrypt or decrypt if
    the coherent bits are not set what is currently the case if the
    encryption does not occur inplace. However, the encryption works
    on my Geode machine _only_ if the coherent bits are always set.

    Signed-off-by: Sebastian Siewior
    Acked-by: Jordan Crouse
    Signed-off-by: Herbert Xu

    Sebastian Siewior
     

27 Oct, 2007

1 commit


11 Oct, 2007

4 commits

  • There are currently several SHA implementations that all define their own
    initialization vectors and size values. Since this values are idential
    move them to a header file under include/crypto.

    Signed-off-by: Jan Glauber
    Signed-off-by: Herbert Xu

    Jan Glauber
     
  • Loading the crypto algorithm by the alias instead of by module directly
    has the advantage that all possible implementations of this algorithm
    are loaded automatically and the crypto API can choose the best one
    depending on its priority.

    Additionally it ensures that the generic implementation as well as the
    HW driver (if available) is loaded in case the HW driver needs the
    generic version as fallback in corner cases.

    Also remove the probe for sha1 in padlock's init code.

    Quote from Herbert:
    The probe is actually pointless since we can always probe when
    the algorithm is actually used which does not lead to dead-locks
    like this.

    Signed-off-by: Sebastian Siewior
    Signed-off-by: Herbert Xu

    Sebastian Siewior
     
  • Loading the crypto algorithm by the alias instead of by module directly
    has the advantage that all possible implementations of this algorithm
    are loaded automatically and the crypto API can choose the best one
    depending on its priority.

    Additionally it ensures that the generic implementation as well as the
    HW driver (if available) is loaded in case the HW driver needs the
    generic version as fallback in corner cases.

    Signed-off-by: Sebastian Siewior
    Signed-off-by: Herbert Xu

    Sebastian Siewior
     
  • Hardware drivers shouldn't default to m.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Herbert Xu

    Adrian Bunk
     

19 Aug, 2007

1 commit


17 Jul, 2007

1 commit


24 May, 2007

1 commit

  • Allow in-place crypto operations. Also remove the coherent user flag
    (we use it automagically now), and by default use the user written
    key rather then the HW hidden key - this makes crypto just work without
    any special considerations, and thats OK, since its our only usage
    model.

    Signed-off-by: Jordan Crouse
    Signed-off-by: Herbert Xu

    Jordan Crouse
     

18 May, 2007

1 commit


10 May, 2007

1 commit


09 May, 2007

1 commit


02 May, 2007

1 commit

  • When this is compiled in it is run too early to do anything useful:
    [ 6.052000] padlock: No VIA PadLock drivers have been loaded.
    [ 6.052000] padlock: Using VIA PadLock ACE for AES algorithm.
    [ 6.052000] padlock: Using VIA PadLock ACE for SHA1/SHA256 algorithms.

    When it's a module it isn't doing anything special, the same functionality
    can be provided in userspace by "probeall padlock padlock-aes padlock-sha"
    in modules.conf if it is required.

    Signed-off-by: Simon Arlott
    Cc: Michal Ludvig
    Signed-off-by: Herbert Xu

    Simon Arlott
     

07 Mar, 2007

1 commit


15 Feb, 2007

1 commit

  • After Al Viro (finally) succeeded in removing the sched.h #include in module.h
    recently, it makes sense again to remove other superfluous sched.h includes.
    There are quite a lot of files which include it but don't actually need
    anything defined in there. Presumably these includes were once needed for
    macros that used to live in sched.h, but moved to other header files in the
    course of cleaning it up.

    To ease the pain, this time I did not fiddle with any header files and only
    removed #includes from .c-files, which tend to cause less trouble.

    Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
    arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
    allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
    configs in arch/arm/configs on arm. I also checked that no new warnings were
    introduced by the patch (actually, some warnings are removed that were emitted
    by unnecessarily included header files).

    Signed-off-by: Tim Schmielau
    Acked-by: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     

09 Feb, 2007

1 commit


07 Feb, 2007

1 commit


06 Feb, 2007

1 commit

  • Starting with the z9 the CPU Cryptographic Assist Facility comes with
    an integrated Pseudo Random Number Generator. The generator creates
    random numbers by an algorithm similar to the ANSI X9.17 standard.
    The pseudo-random numbers can be accessed via a character device driver
    node called /dev/prandom. Similar to /dev/urandom any amount of bytes
    can be read from the device without blocking.

    Signed-off-by: Jan Glauber
    Signed-off-by: Martin Schwidefsky

    Jan Glauber
     

11 Dec, 2006

1 commit

  • This driver seems to be for a PCI device.

    drivers/crypto/geode-aes.c:384: warning: implicit declaration of function 'pci_release_regions'
    drivers/crypto/geode-aes.c:397: warning: implicit declaration of function 'pci_request_regions'

    Signed-off-by: Randy Dunlap
    Acked-by: Jordan Crouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     

07 Dec, 2006

2 commits


21 Sep, 2006

13 commits


15 Jul, 2006

1 commit