1. 13 5月, 2015 4 次提交
  2. 21 4月, 2015 14 次提交
  3. 06 3月, 2015 2 次提交
  4. 26 1月, 2015 1 次提交
  5. 20 10月, 2014 1 次提交
  6. 09 2月, 2014 1 次提交
    • K
      crypto: talitos: init the priv->alg_list more earlier in talitos_probe() · f3de9cb1
      Kevin Hao 提交于
      In function talitos_probe(), it will jump to err_out when getting an
      error in talitos_probe_irq(). Then the uninitialized list head
      priv->alg_list will be used in function talitos_remove(). In this case
      we would get a call trace like the following. So move up the
      initialization of priv->alg_list.
      
        Unable to handle kernel paging request for data at address 0x00000000
        Faulting instruction address: 0xc0459ff4
        Oops: Kernel access of bad area, sig: 11 [#1]
        SMP NR_CPUS=8 P1020 RDB
        Modules linked in:
        CPU: 1 PID: 1 Comm: swapper/0 Tainted: G        W    3.13.0-08789-g54c0a4b4 #33
        task: cf050000 ti: cf04c000 task.ti: cf04c000
        NIP: c0459ff4 LR: c0459fd4 CTR: c02f2438
        REGS: cf04dcb0 TRAP: 0300   Tainted: G        W     (3.13.0-08789-g54c0a4b4)
        MSR: 00029000 <CE,EE,ME>  CR: 82000028  XER: 20000000
        DEAR: 00000000 ESR: 00000000
        GPR00: c045ac28 cf04dd60 cf050000 cf2579c0 00021000 00000000 c02f35b0 0000014e
        GPR08: c07e702c cf104300 c07e702c 0000014e 22000024 00000000 c0002a3c 00000000
        GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 c082e4e0 000000df
        GPR24: 00000000 00100100 00200200 cf257a2c cf0efe10 cf2579c0 cf0efe10 00000000
        NIP [c0459ff4] talitos_remove+0x3c/0x1c8
        LR [c0459fd4] talitos_remove+0x1c/0x1c8
        Call Trace:
        [cf04dd60] [c07485d8] __func__.13331+0x1241c8/0x1391c0 (unreliable)
        [cf04dd90] [c045ac28] talitos_probe+0x244/0x998
        [cf04dde0] [c0306a74] platform_drv_probe+0x28/0x68
        [cf04ddf0] [c0304d38] really_probe+0x78/0x250
        [cf04de10] [c030505c] __driver_attach+0xc8/0xcc
        [cf04de30] [c0302e98] bus_for_each_dev+0x6c/0xb8
        [cf04de60] [c03043cc] bus_add_driver+0x168/0x220
        [cf04de80] [c0305798] driver_register+0x88/0x130
        [cf04de90] [c0002458] do_one_initcall+0x14c/0x198
        [cf04df00] [c079f904] kernel_init_freeable+0x138/0x1d4
        [cf04df30] [c0002a50] kernel_init+0x14/0x124
        [cf04df40] [c000ec40] ret_from_kernel_thread+0x5c/0x64
      Signed-off-by: NKevin Hao <haokexin@gmail.com>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      f3de9cb1
  7. 30 12月, 2013 1 次提交
  8. 05 12月, 2013 1 次提交
  9. 28 11月, 2013 2 次提交
    • H
      crypto: talitos - fix aead sglen for case 'dst != src' · 62293a37
      Horia Geanta 提交于
      For aead case when source and destination buffers are different,
      there is an incorrect assumption that the source length includes the ICV
      length. Fix this, since it leads to an oops when using sg_count() to
      find the number of nents in the scatterlist:
      
      Unable to handle kernel paging request for data at address 0x00000004
      Faulting instruction address: 0xf2265a28
      Oops: Kernel access of bad area, sig: 11 [#1]
      SMP NR_CPUS=8 P2020 RDB
      Modules linked in: talitos(+)
      CPU: 1 PID: 2187 Comm: cryptomgr_test Not tainted 3.11.0 #12
      task: c4e72e20 ti: ef634000 task.ti: ef634000
      NIP: f2265a28 LR: f2266ad8 CTR: c000c900
      REGS: ef635bb0 TRAP: 0300   Not tainted  (3.11.0)
      MSR: 00029000 <CE,EE,ME>  CR: 42042084  XER: 00000000
      DEAR: 00000004, ESR: 00000000
      
      GPR00: f2266e10 ef635c60 c4e72e20 00000001 00000014 ef635c69 00000001 c11f3082
      GPR08: 00000010 00000000 00000002 2f635d58 22044084 00000000 00000000 c0755c80
      GPR16: c4bf1000 ef784000 00000000 00000000 00000020 00000014 00000010 ef2f6100
      GPR24: ef2f6200 00000024 ef143210 ef2f6000 00000000 ef635d58 00000000 2f635d58
      NIP [f2265a28] sg_count+0x1c/0xb4 [talitos]
      LR [f2266ad8] talitos_edesc_alloc+0x12c/0x410 [talitos]
      Call Trace:
      [ef635c60] [c0552068] schedule_timeout+0x148/0x1ac (unreliable)
      [ef635cc0] [f2266e10] aead_edesc_alloc+0x54/0x64 [talitos]
      [ef635ce0] [f22680f0] aead_encrypt+0x24/0x70 [talitos]
      [ef635cf0] [c024b948] __test_aead+0x494/0xf68
      [ef635e20] [c024d54c] test_aead+0x64/0xcc
      [ef635e40] [c024d604] alg_test_aead+0x50/0xc4
      [ef635e60] [c024c838] alg_test+0x10c/0x2e4
      [ef635ee0] [c0249d1c] cryptomgr_test+0x4c/0x54
      [ef635ef0] [c005d598] kthread+0xa8/0xac
      [ef635f40] [c000e3bc] ret_from_kernel_thread+0x5c/0x64
      Instruction dump:
      81230024 552807fe 0f080000 5523003a 4bffff24 39000000 2c040000 99050000
      408100a0 7c691b78 38c00001 38600000 <80e90004> 38630001 8109000c 70ea0002
      ---[ end trace 4498123cd8478591 ]---
      Signed-off-by: NHoria Geanta <horia.geanta@freescale.com>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      62293a37
    • H
      crypto: talitos - corrrectly handle zero-length assoc data · 935e99a3
      Horia Geanta 提交于
      talitos does not handle well zero-length assoc data. From dmesg:
      talitos ffe30000.crypto: master data transfer error
      talitos ffe30000.crypto: gather return/length error
      
      Check whether assoc data is provided by inspecting assoclen,
      not assoc pointer.
      This is needed in order to pass testmgr tests.
      Signed-off-by: NHoria Geanta <horia.geanta@freescale.com>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      935e99a3
  10. 16 10月, 2013 1 次提交
  11. 10 10月, 2013 1 次提交
  12. 10 7月, 2013 1 次提交
  13. 21 3月, 2013 1 次提交
  14. 15 10月, 2012 1 次提交
  15. 28 8月, 2012 7 次提交
  16. 11 7月, 2012 1 次提交