All of lore.kernel.org
 help / color / mirror / Atom feed
* Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled
@ 2014-05-23 12:14 Vikas Sajjan
  2014-06-12  9:28 ` Vikas Sajjan
  2014-06-12 15:20 ` Doug Anderson
  0 siblings, 2 replies; 5+ messages in thread
From: Vikas Sajjan @ 2014-05-23 12:14 UTC (permalink / raw)
  To: linux-samsung-soc, Kukjin Kim, Tomasz Figa, Tomasz Figa, sunil joshi

Hi,

I notice that if CONFIG_SAMSUNG_PM_CHECK is enabled, we get a crash in
function "crc32_le(), as below.

wanted to know, if anyone of you came across this.

Tested on Arndale5250 on kgene's 'for-next' branch

19307a0b41ef10a20712827430e1f2074efab3c4 Merge branch
'v3.16-next/dt-samsung-2' into for-next
3c8977f17796f0b8816a1a283b0b80b71c83d416 ARM: dts: enable usb nodes
for exynos4412-trats2
ef14d94cdc41c0af1c2713e1ddced903d9d68768 ARM: dts: add hsotg device
node for exynos4
26bbd41fe1b3b75bb075eaddf26571c7573c4c01 ARM: dts: add exynos_usbphy
node for exynos4
7b9613aca42a5522d269f89496fef7df10934335 ARM: dts: add PMU syscon node
for exynos4
e8af308549178271bccaa7886f429a7c0b1d8514 ARM: dts: enable usb nodes
for exynos4412-trats2


<-------------------------------------------------------------------------------------------------------------->

/ $ echo mem > /sys/power/state
[    9.874440] PM: Syncing filesystems ...
[   10.518085] random: nonblocking pool is initialized
[   10.645255] done.
[   10.646561] Freezing user space processes ... (elapsed 0.000 seconds) done.
[   10.652642] Freezing remaining freezable tasks ... (elapsed 0.001
seconds) done.
[   10.713454] wake enabled for irq 187
[   10.715575] wake enabled for irq 188
[   10.719117] wake enabled for irq 189
[   10.722686] wake enabled for irq 190
[   10.726244] wake enabled for irq 191
[   10.729793] wake enabled for irq 192
[   10.745154] PM: suspend of devices complete after 83.460 msecs
[   10.751576] PM: late suspend of devices complete after 2.051 msecs
[   10.758449] PM: noirq suspend of devices complete after 2.155 msecs
[   10.763253] Disabling non-boot CPUs ...
[   10.767496] IRQ153 no longer affine to CPU1
[   10.767623] CPU1: shutdown
[   10.774637] Unable to handle kernel paging request at virtual
address f0001000
[   10.774637] pgd = edb18000
[   10.774637] [f0001000] *pgd=6e006811, *pte=00000000, *ppte=00000000
[   10.774637] Internal error: Oops: 7 [#1] PREEMPT SMP ARM
[   10.774637] Modules linked in:
[   10.774637] CPU: 0 PID: 1 Comm: sh Not tainted 3.15.0-rc4-00197-g0cb752a #43
[   10.774637] task: ee00e800 ti: ee078000 task.ti: ee078000
[   10.774637] PC is at crc32_le+0x2c/0x13c
[   10.774637] LR is at 0x1e00
[   10.774637] pc : [<c01cb3a0>]    lr : [<00001e00>]    psr: 20000093
[   10.774637] sp : ee079e6c  ip : 700de3b6  fp : efa06222
[   10.774637] r10: 840510ee  r9 : 00000000  r8 : 00002000
[   10.774637] r7 : c05086ac  r6 : 00000000  r5 : 9e16d8c3  r4 : f0000ffc
[   10.774637] r3 : c05083c0  r2 : 00000000  r1 : effffffc  r0 : 20706046
[   10.774637] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM
Segment user
[   10.774637] Control: 10c5387d  Table: 6db1806a  DAC: 00000015
[   10.774637] Process sh (pid: 1, stack limit = 0xee078240)
[   10.774637] Stack: (0xee079e6c to 0xee07a000)
[   10.774637] 9e60:                            70000000 ed9cba00
ef7fccc0 00000000 c050f036
[   10.774637] 9e80: 00000000 ee3ca60c beb7da40 c001a8c8 ef7fccc0
ed9cba00 c001a894 c001a880
[   10.774637] 9ea0: c05128a0 ed9c0000 c001a894 c001a850 c05125f0
c05439bc 00000003 c001a0ec
[   10.774637] 9ec0: c05439bc c0057044 beb7da40 c03841a4 c044e1d0
ee079eec 00000000 ee079eec
[   10.774637] 9ee0: 00000003 00000003 00000000 c038f360 00000003
ed899d40 00000004 c00572a0
[   10.774637] 9f00: 0000006d 00000003 c04465bc c00562c4 00000004
00000000 00000000 ee079f80
[   10.774637] 9f20: ed899d40 00000004 ee3ca600 c0110534 00000000
00000000 ee203900 b6f3b000
[   10.774637] 9f40: ee079f80 00000004 00000004 b6f3b000 00000000
c00b7ca0 ee00e800 c00d1570
[   10.774637] 9f60: 00000001 00000000 00000000 ee203900 ee203900
00000004 b6f3b000 c00b8284
[   10.774637] 9f80: 00000000 00000000 ee203900 00000004 b6f3b000
b6e265f8 00000004 c000e4e4
[   10.774637] 9fa0: ee078000 c000e360 00000004 b6f3b000 00000001
b6f3b000 00000004 00000000
[   10.774637] 9fc0: 00000004 b6f3b000 b6e265f8 00000004 00000004
000ad848 00000974 beb7da40
[   10.774637] 9fe0: b6f3b000 beb7d7c0 b6d6d124 b6dba43c 60000010
00000001 ffffffff ffffffff
[   10.774637] [<c01cb3a0>] (crc32_le) from [<c001a8c8>]
(s3c_pm_makecheck+0x34/0x54)
[   10.774637] [<c001a8c8>] (s3c_pm_makecheck) from [<c001a880>]
(s3c_pm_run_res+0x6c/0x80)
[   10.774637] [<c001a880>] (s3c_pm_run_res) from [<c001a850>]
(s3c_pm_run_res+0x3c/0x80)
[   10.774637] [<c001a850>] (s3c_pm_run_res) from [<c001a0ec>]
(exynos_suspend_enter+0xa8/0x144)
[   10.774637] [<c001a0ec>] (exynos_suspend_enter) from [<c0057044>]
(suspend_devices_and_enter+0x25c/0x304)
[   10.774637] [<c0057044>] (suspend_devices_and_enter) from
[<c00572a0>] (pm_suspend+0x1b4/0x214)
[   10.774637] [<c00572a0>] (pm_suspend) from [<c00562c4>]
(state_store+0x68/0xb8)
[   10.774637] [<c00562c4>] (state_store) from [<c0110534>]
(kernfs_fop_write+0xc0/0x180)
[   10.774637] [<c0110534>] (kernfs_fop_write) from [<c00b7ca0>]
(vfs_write+0xac/0x188)
[   10.774637] [<c00b7ca0>] (vfs_write) from [<c00b8284>] (SyS_write+0x40/0x94)
[   10.774637] [<c00b8284>] (SyS_write) from [<c000e360>]
(ret_fast_syscall+0x0/0x30)
[   10.774637] Code: e30833c0 e1a04001 e34c3050 e1a0e008 (e5945004)
[   10.774637] ---[ end trace 2ba1a0948b7498ef ]---
[   10.774637] ------------[ cut here ]------------
[   10.774637] WARNING: CPU: 0 PID: 0 at kernel/time/timekeeping.c:345
ktime_get+0x110/0x11c()
[   10.774637] Modules linked in:
[   10.774637] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G      D
3.15.0-rc4-00197-g0cb752a #43
[   10.774637] [<c0013fe8>] (unwind_backtrace) from [<c00112d4>]
(show_stack+0x10/0x14)
[   10.774637] [<c00112d4>] (show_stack) from [<c0386488>]
(dump_stack+0x80/0xc0)
[   10.774637] [<c0386488>] (dump_stack) from [<c001d2a0>]
(warn_slowpath_common+0x6c/0x88)
[   10.774637] [<c001d2a0>] (warn_slowpath_common) from [<c001d358>]
(warn_slowpath_null+0x1c/0x24)
[   10.774637] [<c001d358>] (warn_slowpath_null) from [<c0065ff8>]
(ktime_get+0x110/0x11c)
[   10.774637] [<c0065ff8>] (ktime_get) from [<c006f330>]
(__tick_nohz_idle_enter+0x1c/0x44c)
[   10.774637] [<c006f330>] (__tick_nohz_idle_enter) from [<c006f7a0>]
(tick_nohz_idle_enter+0x40/0x78)
[   10.774637] [<c006f7a0>] (tick_nohz_idle_enter) from [<c00500d8>]
(cpu_startup_entry+0x48/0x160)
[   10.774637] [<c00500d8>] (cpu_startup_entry) from [<c04caae4>]
(start_kernel+0x344/0x350)
[   10.774637] ---[ end trace 2ba1a0\x01


Regards
Vikas Sajjan

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled
  2014-05-23 12:14 Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled Vikas Sajjan
@ 2014-06-12  9:28 ` Vikas Sajjan
  2014-06-12  9:54   ` Tomasz Figa
  2014-06-12 15:20 ` Doug Anderson
  1 sibling, 1 reply; 5+ messages in thread
From: Vikas Sajjan @ 2014-06-12  9:28 UTC (permalink / raw)
  To: linux-samsung-soc, Kukjin Kim, Tomasz Figa, Tomasz Figa, Doug Anderson

Any thoughts on this.


On Fri, May 23, 2014 at 5:44 PM, Vikas Sajjan <vikas.sajjan@samsung.com> wrote:
> Hi,
>
> I notice that if CONFIG_SAMSUNG_PM_CHECK is enabled, we get a crash in
> function "crc32_le(), as below.
>
> wanted to know, if anyone of you came across this.
>
> Tested on Arndale5250 on kgene's 'for-next' branch
>
> 19307a0b41ef10a20712827430e1f2074efab3c4 Merge branch
> 'v3.16-next/dt-samsung-2' into for-next
> 3c8977f17796f0b8816a1a283b0b80b71c83d416 ARM: dts: enable usb nodes
> for exynos4412-trats2
> ef14d94cdc41c0af1c2713e1ddced903d9d68768 ARM: dts: add hsotg device
> node for exynos4
> 26bbd41fe1b3b75bb075eaddf26571c7573c4c01 ARM: dts: add exynos_usbphy
> node for exynos4
> 7b9613aca42a5522d269f89496fef7df10934335 ARM: dts: add PMU syscon node
> for exynos4
> e8af308549178271bccaa7886f429a7c0b1d8514 ARM: dts: enable usb nodes
> for exynos4412-trats2
>
>
> <-------------------------------------------------------------------------------------------------------------->
>
> / $ echo mem > /sys/power/state
> [    9.874440] PM: Syncing filesystems ...
> [   10.518085] random: nonblocking pool is initialized
> [   10.645255] done.
> [   10.646561] Freezing user space processes ... (elapsed 0.000 seconds) done.
> [   10.652642] Freezing remaining freezable tasks ... (elapsed 0.001
> seconds) done.
> [   10.713454] wake enabled for irq 187
> [   10.715575] wake enabled for irq 188
> [   10.719117] wake enabled for irq 189
> [   10.722686] wake enabled for irq 190
> [   10.726244] wake enabled for irq 191
> [   10.729793] wake enabled for irq 192
> [   10.745154] PM: suspend of devices complete after 83.460 msecs
> [   10.751576] PM: late suspend of devices complete after 2.051 msecs
> [   10.758449] PM: noirq suspend of devices complete after 2.155 msecs
> [   10.763253] Disabling non-boot CPUs ...
> [   10.767496] IRQ153 no longer affine to CPU1
> [   10.767623] CPU1: shutdown
> [   10.774637] Unable to handle kernel paging request at virtual
> address f0001000
> [   10.774637] pgd = edb18000
> [   10.774637] [f0001000] *pgd=6e006811, *pte=00000000, *ppte=00000000
> [   10.774637] Internal error: Oops: 7 [#1] PREEMPT SMP ARM
> [   10.774637] Modules linked in:
> [   10.774637] CPU: 0 PID: 1 Comm: sh Not tainted 3.15.0-rc4-00197-g0cb752a #43
> [   10.774637] task: ee00e800 ti: ee078000 task.ti: ee078000
> [   10.774637] PC is at crc32_le+0x2c/0x13c
> [   10.774637] LR is at 0x1e00
> [   10.774637] pc : [<c01cb3a0>]    lr : [<00001e00>]    psr: 20000093
> [   10.774637] sp : ee079e6c  ip : 700de3b6  fp : efa06222
> [   10.774637] r10: 840510ee  r9 : 00000000  r8 : 00002000
> [   10.774637] r7 : c05086ac  r6 : 00000000  r5 : 9e16d8c3  r4 : f0000ffc
> [   10.774637] r3 : c05083c0  r2 : 00000000  r1 : effffffc  r0 : 20706046
> [   10.774637] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM
> Segment user
> [   10.774637] Control: 10c5387d  Table: 6db1806a  DAC: 00000015
> [   10.774637] Process sh (pid: 1, stack limit = 0xee078240)
> [   10.774637] Stack: (0xee079e6c to 0xee07a000)
> [   10.774637] 9e60:                            70000000 ed9cba00
> ef7fccc0 00000000 c050f036
> [   10.774637] 9e80: 00000000 ee3ca60c beb7da40 c001a8c8 ef7fccc0
> ed9cba00 c001a894 c001a880
> [   10.774637] 9ea0: c05128a0 ed9c0000 c001a894 c001a850 c05125f0
> c05439bc 00000003 c001a0ec
> [   10.774637] 9ec0: c05439bc c0057044 beb7da40 c03841a4 c044e1d0
> ee079eec 00000000 ee079eec
> [   10.774637] 9ee0: 00000003 00000003 00000000 c038f360 00000003
> ed899d40 00000004 c00572a0
> [   10.774637] 9f00: 0000006d 00000003 c04465bc c00562c4 00000004
> 00000000 00000000 ee079f80
> [   10.774637] 9f20: ed899d40 00000004 ee3ca600 c0110534 00000000
> 00000000 ee203900 b6f3b000
> [   10.774637] 9f40: ee079f80 00000004 00000004 b6f3b000 00000000
> c00b7ca0 ee00e800 c00d1570
> [   10.774637] 9f60: 00000001 00000000 00000000 ee203900 ee203900
> 00000004 b6f3b000 c00b8284
> [   10.774637] 9f80: 00000000 00000000 ee203900 00000004 b6f3b000
> b6e265f8 00000004 c000e4e4
> [   10.774637] 9fa0: ee078000 c000e360 00000004 b6f3b000 00000001
> b6f3b000 00000004 00000000
> [   10.774637] 9fc0: 00000004 b6f3b000 b6e265f8 00000004 00000004
> 000ad848 00000974 beb7da40
> [   10.774637] 9fe0: b6f3b000 beb7d7c0 b6d6d124 b6dba43c 60000010
> 00000001 ffffffff ffffffff
> [   10.774637] [<c01cb3a0>] (crc32_le) from [<c001a8c8>]
> (s3c_pm_makecheck+0x34/0x54)
> [   10.774637] [<c001a8c8>] (s3c_pm_makecheck) from [<c001a880>]
> (s3c_pm_run_res+0x6c/0x80)
> [   10.774637] [<c001a880>] (s3c_pm_run_res) from [<c001a850>]
> (s3c_pm_run_res+0x3c/0x80)
> [   10.774637] [<c001a850>] (s3c_pm_run_res) from [<c001a0ec>]
> (exynos_suspend_enter+0xa8/0x144)
> [   10.774637] [<c001a0ec>] (exynos_suspend_enter) from [<c0057044>]
> (suspend_devices_and_enter+0x25c/0x304)
> [   10.774637] [<c0057044>] (suspend_devices_and_enter) from
> [<c00572a0>] (pm_suspend+0x1b4/0x214)
> [   10.774637] [<c00572a0>] (pm_suspend) from [<c00562c4>]
> (state_store+0x68/0xb8)
> [   10.774637] [<c00562c4>] (state_store) from [<c0110534>]
> (kernfs_fop_write+0xc0/0x180)
> [   10.774637] [<c0110534>] (kernfs_fop_write) from [<c00b7ca0>]
> (vfs_write+0xac/0x188)
> [   10.774637] [<c00b7ca0>] (vfs_write) from [<c00b8284>] (SyS_write+0x40/0x94)
> [   10.774637] [<c00b8284>] (SyS_write) from [<c000e360>]
> (ret_fast_syscall+0x0/0x30)
> [   10.774637] Code: e30833c0 e1a04001 e34c3050 e1a0e008 (e5945004)
> [   10.774637] ---[ end trace 2ba1a0948b7498ef ]---
> [   10.774637] ------------[ cut here ]------------
> [   10.774637] WARNING: CPU: 0 PID: 0 at kernel/time/timekeeping.c:345
> ktime_get+0x110/0x11c()
> [   10.774637] Modules linked in:
> [   10.774637] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G      D
> 3.15.0-rc4-00197-g0cb752a #43
> [   10.774637] [<c0013fe8>] (unwind_backtrace) from [<c00112d4>]
> (show_stack+0x10/0x14)
> [   10.774637] [<c00112d4>] (show_stack) from [<c0386488>]
> (dump_stack+0x80/0xc0)
> [   10.774637] [<c0386488>] (dump_stack) from [<c001d2a0>]
> (warn_slowpath_common+0x6c/0x88)
> [   10.774637] [<c001d2a0>] (warn_slowpath_common) from [<c001d358>]
> (warn_slowpath_null+0x1c/0x24)
> [   10.774637] [<c001d358>] (warn_slowpath_null) from [<c0065ff8>]
> (ktime_get+0x110/0x11c)
> [   10.774637] [<c0065ff8>] (ktime_get) from [<c006f330>]
> (__tick_nohz_idle_enter+0x1c/0x44c)
> [   10.774637] [<c006f330>] (__tick_nohz_idle_enter) from [<c006f7a0>]
> (tick_nohz_idle_enter+0x40/0x78)
> [   10.774637] [<c006f7a0>] (tick_nohz_idle_enter) from [<c00500d8>]
> (cpu_startup_entry+0x48/0x160)
> [   10.774637] [<c00500d8>] (cpu_startup_entry) from [<c04caae4>]
> (start_kernel+0x344/0x350)
> [   10.774637] ---[ end trace 2ba1a0
>
>
> Regards
> Vikas Sajjan

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled
  2014-06-12  9:28 ` Vikas Sajjan
@ 2014-06-12  9:54   ` Tomasz Figa
  2014-06-12 10:12     ` Vikas Sajjan
  0 siblings, 1 reply; 5+ messages in thread
From: Tomasz Figa @ 2014-06-12  9:54 UTC (permalink / raw)
  To: Vikas Sajjan, linux-samsung-soc, Kukjin Kim, Tomasz Figa, Doug Anderson

Hi Vikas,

To me it looks like wrong address range is used for calculating
checksums. Unfortunately I don't have time right now to investigate this.

Best regards,
Tomasz

On 12.06.2014 11:28, Vikas Sajjan wrote:
> Any thoughts on this.
> 
> 
> On Fri, May 23, 2014 at 5:44 PM, Vikas Sajjan <vikas.sajjan@samsung.com> wrote:
>> Hi,
>>
>> I notice that if CONFIG_SAMSUNG_PM_CHECK is enabled, we get a crash in
>> function "crc32_le(), as below.
>>
>> wanted to know, if anyone of you came across this.
>>
>> Tested on Arndale5250 on kgene's 'for-next' branch
>>
>> 19307a0b41ef10a20712827430e1f2074efab3c4 Merge branch
>> 'v3.16-next/dt-samsung-2' into for-next
>> 3c8977f17796f0b8816a1a283b0b80b71c83d416 ARM: dts: enable usb nodes
>> for exynos4412-trats2
>> ef14d94cdc41c0af1c2713e1ddced903d9d68768 ARM: dts: add hsotg device
>> node for exynos4
>> 26bbd41fe1b3b75bb075eaddf26571c7573c4c01 ARM: dts: add exynos_usbphy
>> node for exynos4
>> 7b9613aca42a5522d269f89496fef7df10934335 ARM: dts: add PMU syscon node
>> for exynos4
>> e8af308549178271bccaa7886f429a7c0b1d8514 ARM: dts: enable usb nodes
>> for exynos4412-trats2
>>
>>
>> <-------------------------------------------------------------------------------------------------------------->
>>
>> / $ echo mem > /sys/power/state
>> [    9.874440] PM: Syncing filesystems ...
>> [   10.518085] random: nonblocking pool is initialized
>> [   10.645255] done.
>> [   10.646561] Freezing user space processes ... (elapsed 0.000 seconds) done.
>> [   10.652642] Freezing remaining freezable tasks ... (elapsed 0.001
>> seconds) done.
>> [   10.713454] wake enabled for irq 187
>> [   10.715575] wake enabled for irq 188
>> [   10.719117] wake enabled for irq 189
>> [   10.722686] wake enabled for irq 190
>> [   10.726244] wake enabled for irq 191
>> [   10.729793] wake enabled for irq 192
>> [   10.745154] PM: suspend of devices complete after 83.460 msecs
>> [   10.751576] PM: late suspend of devices complete after 2.051 msecs
>> [   10.758449] PM: noirq suspend of devices complete after 2.155 msecs
>> [   10.763253] Disabling non-boot CPUs ...
>> [   10.767496] IRQ153 no longer affine to CPU1
>> [   10.767623] CPU1: shutdown
>> [   10.774637] Unable to handle kernel paging request at virtual
>> address f0001000
>> [   10.774637] pgd = edb18000
>> [   10.774637] [f0001000] *pgd=6e006811, *pte=00000000, *ppte=00000000
>> [   10.774637] Internal error: Oops: 7 [#1] PREEMPT SMP ARM
>> [   10.774637] Modules linked in:
>> [   10.774637] CPU: 0 PID: 1 Comm: sh Not tainted 3.15.0-rc4-00197-g0cb752a #43
>> [   10.774637] task: ee00e800 ti: ee078000 task.ti: ee078000
>> [   10.774637] PC is at crc32_le+0x2c/0x13c
>> [   10.774637] LR is at 0x1e00
>> [   10.774637] pc : [<c01cb3a0>]    lr : [<00001e00>]    psr: 20000093
>> [   10.774637] sp : ee079e6c  ip : 700de3b6  fp : efa06222
>> [   10.774637] r10: 840510ee  r9 : 00000000  r8 : 00002000
>> [   10.774637] r7 : c05086ac  r6 : 00000000  r5 : 9e16d8c3  r4 : f0000ffc
>> [   10.774637] r3 : c05083c0  r2 : 00000000  r1 : effffffc  r0 : 20706046
>> [   10.774637] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM
>> Segment user
>> [   10.774637] Control: 10c5387d  Table: 6db1806a  DAC: 00000015
>> [   10.774637] Process sh (pid: 1, stack limit = 0xee078240)
>> [   10.774637] Stack: (0xee079e6c to 0xee07a000)
>> [   10.774637] 9e60:                            70000000 ed9cba00
>> ef7fccc0 00000000 c050f036
>> [   10.774637] 9e80: 00000000 ee3ca60c beb7da40 c001a8c8 ef7fccc0
>> ed9cba00 c001a894 c001a880
>> [   10.774637] 9ea0: c05128a0 ed9c0000 c001a894 c001a850 c05125f0
>> c05439bc 00000003 c001a0ec
>> [   10.774637] 9ec0: c05439bc c0057044 beb7da40 c03841a4 c044e1d0
>> ee079eec 00000000 ee079eec
>> [   10.774637] 9ee0: 00000003 00000003 00000000 c038f360 00000003
>> ed899d40 00000004 c00572a0
>> [   10.774637] 9f00: 0000006d 00000003 c04465bc c00562c4 00000004
>> 00000000 00000000 ee079f80
>> [   10.774637] 9f20: ed899d40 00000004 ee3ca600 c0110534 00000000
>> 00000000 ee203900 b6f3b000
>> [   10.774637] 9f40: ee079f80 00000004 00000004 b6f3b000 00000000
>> c00b7ca0 ee00e800 c00d1570
>> [   10.774637] 9f60: 00000001 00000000 00000000 ee203900 ee203900
>> 00000004 b6f3b000 c00b8284
>> [   10.774637] 9f80: 00000000 00000000 ee203900 00000004 b6f3b000
>> b6e265f8 00000004 c000e4e4
>> [   10.774637] 9fa0: ee078000 c000e360 00000004 b6f3b000 00000001
>> b6f3b000 00000004 00000000
>> [   10.774637] 9fc0: 00000004 b6f3b000 b6e265f8 00000004 00000004
>> 000ad848 00000974 beb7da40
>> [   10.774637] 9fe0: b6f3b000 beb7d7c0 b6d6d124 b6dba43c 60000010
>> 00000001 ffffffff ffffffff
>> [   10.774637] [<c01cb3a0>] (crc32_le) from [<c001a8c8>]
>> (s3c_pm_makecheck+0x34/0x54)
>> [   10.774637] [<c001a8c8>] (s3c_pm_makecheck) from [<c001a880>]
>> (s3c_pm_run_res+0x6c/0x80)
>> [   10.774637] [<c001a880>] (s3c_pm_run_res) from [<c001a850>]
>> (s3c_pm_run_res+0x3c/0x80)
>> [   10.774637] [<c001a850>] (s3c_pm_run_res) from [<c001a0ec>]
>> (exynos_suspend_enter+0xa8/0x144)
>> [   10.774637] [<c001a0ec>] (exynos_suspend_enter) from [<c0057044>]
>> (suspend_devices_and_enter+0x25c/0x304)
>> [   10.774637] [<c0057044>] (suspend_devices_and_enter) from
>> [<c00572a0>] (pm_suspend+0x1b4/0x214)
>> [   10.774637] [<c00572a0>] (pm_suspend) from [<c00562c4>]
>> (state_store+0x68/0xb8)
>> [   10.774637] [<c00562c4>] (state_store) from [<c0110534>]
>> (kernfs_fop_write+0xc0/0x180)
>> [   10.774637] [<c0110534>] (kernfs_fop_write) from [<c00b7ca0>]
>> (vfs_write+0xac/0x188)
>> [   10.774637] [<c00b7ca0>] (vfs_write) from [<c00b8284>] (SyS_write+0x40/0x94)
>> [   10.774637] [<c00b8284>] (SyS_write) from [<c000e360>]
>> (ret_fast_syscall+0x0/0x30)
>> [   10.774637] Code: e30833c0 e1a04001 e34c3050 e1a0e008 (e5945004)
>> [   10.774637] ---[ end trace 2ba1a0948b7498ef ]---
>> [   10.774637] ------------[ cut here ]------------
>> [   10.774637] WARNING: CPU: 0 PID: 0 at kernel/time/timekeeping.c:345
>> ktime_get+0x110/0x11c()
>> [   10.774637] Modules linked in:
>> [   10.774637] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G      D
>> 3.15.0-rc4-00197-g0cb752a #43
>> [   10.774637] [<c0013fe8>] (unwind_backtrace) from [<c00112d4>]
>> (show_stack+0x10/0x14)
>> [   10.774637] [<c00112d4>] (show_stack) from [<c0386488>]
>> (dump_stack+0x80/0xc0)
>> [   10.774637] [<c0386488>] (dump_stack) from [<c001d2a0>]
>> (warn_slowpath_common+0x6c/0x88)
>> [   10.774637] [<c001d2a0>] (warn_slowpath_common) from [<c001d358>]
>> (warn_slowpath_null+0x1c/0x24)
>> [   10.774637] [<c001d358>] (warn_slowpath_null) from [<c0065ff8>]
>> (ktime_get+0x110/0x11c)
>> [   10.774637] [<c0065ff8>] (ktime_get) from [<c006f330>]
>> (__tick_nohz_idle_enter+0x1c/0x44c)
>> [   10.774637] [<c006f330>] (__tick_nohz_idle_enter) from [<c006f7a0>]
>> (tick_nohz_idle_enter+0x40/0x78)
>> [   10.774637] [<c006f7a0>] (tick_nohz_idle_enter) from [<c00500d8>]
>> (cpu_startup_entry+0x48/0x160)
>> [   10.774637] [<c00500d8>] (cpu_startup_entry) from [<c04caae4>]
>> (start_kernel+0x344/0x350)
>> [   10.774637] ---[ end trace 2ba1a0
>>
>>
>> Regards
>> Vikas Sajjan
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled
  2014-06-12  9:54   ` Tomasz Figa
@ 2014-06-12 10:12     ` Vikas Sajjan
  0 siblings, 0 replies; 5+ messages in thread
From: Vikas Sajjan @ 2014-06-12 10:12 UTC (permalink / raw)
  To: Tomasz Figa; +Cc: linux-samsung-soc, Kukjin Kim, Tomasz Figa, Doug Anderson

On Thu, Jun 12, 2014 at 3:24 PM, Tomasz Figa <t.figa@samsung.com> wrote:
> Hi Vikas,
>
> To me it looks like wrong address range is used for calculating
> checksums. Unfortunately I don't have time right now to investigate this.

Right, the function s3c_pm_run_res() gets the memory start and end
address based on flag IORESOURCE_MEM and the strcmp "System RAM".
Looks like wrong range is marked as "System RAM" .

what I found is, even if I access the address "0xf0001000" just after
booting using Trace32 debugger it gives error.
thats shows that during bootup itself, wrong range is marked as
"System RAM", which causes crash the during suspend.

Need to dig more.

Thanks.


>
> Best regards,
> Tomasz
>
> On 12.06.2014 11:28, Vikas Sajjan wrote:
>> Any thoughts on this.
>>
>>
>> On Fri, May 23, 2014 at 5:44 PM, Vikas Sajjan <vikas.sajjan@samsung.com> wrote:
>>> Hi,
>>>
>>> I notice that if CONFIG_SAMSUNG_PM_CHECK is enabled, we get a crash in
>>> function "crc32_le(), as below.
>>>
>>> wanted to know, if anyone of you came across this.
>>>
>>> Tested on Arndale5250 on kgene's 'for-next' branch
>>>
>>> 19307a0b41ef10a20712827430e1f2074efab3c4 Merge branch
>>> 'v3.16-next/dt-samsung-2' into for-next
>>> 3c8977f17796f0b8816a1a283b0b80b71c83d416 ARM: dts: enable usb nodes
>>> for exynos4412-trats2
>>> ef14d94cdc41c0af1c2713e1ddced903d9d68768 ARM: dts: add hsotg device
>>> node for exynos4
>>> 26bbd41fe1b3b75bb075eaddf26571c7573c4c01 ARM: dts: add exynos_usbphy
>>> node for exynos4
>>> 7b9613aca42a5522d269f89496fef7df10934335 ARM: dts: add PMU syscon node
>>> for exynos4
>>> e8af308549178271bccaa7886f429a7c0b1d8514 ARM: dts: enable usb nodes
>>> for exynos4412-trats2
>>>
>>>
>>> <-------------------------------------------------------------------------------------------------------------->
>>>
>>> / $ echo mem > /sys/power/state
>>> [    9.874440] PM: Syncing filesystems ...
>>> [   10.518085] random: nonblocking pool is initialized
>>> [   10.645255] done.
>>> [   10.646561] Freezing user space processes ... (elapsed 0.000 seconds) done.
>>> [   10.652642] Freezing remaining freezable tasks ... (elapsed 0.001
>>> seconds) done.
>>> [   10.713454] wake enabled for irq 187
>>> [   10.715575] wake enabled for irq 188
>>> [   10.719117] wake enabled for irq 189
>>> [   10.722686] wake enabled for irq 190
>>> [   10.726244] wake enabled for irq 191
>>> [   10.729793] wake enabled for irq 192
>>> [   10.745154] PM: suspend of devices complete after 83.460 msecs
>>> [   10.751576] PM: late suspend of devices complete after 2.051 msecs
>>> [   10.758449] PM: noirq suspend of devices complete after 2.155 msecs
>>> [   10.763253] Disabling non-boot CPUs ...
>>> [   10.767496] IRQ153 no longer affine to CPU1
>>> [   10.767623] CPU1: shutdown
>>> [   10.774637] Unable to handle kernel paging request at virtual
>>> address f0001000
>>> [   10.774637] pgd = edb18000
>>> [   10.774637] [f0001000] *pgd=6e006811, *pte=00000000, *ppte=00000000
>>> [   10.774637] Internal error: Oops: 7 [#1] PREEMPT SMP ARM
>>> [   10.774637] Modules linked in:
>>> [   10.774637] CPU: 0 PID: 1 Comm: sh Not tainted 3.15.0-rc4-00197-g0cb752a #43
>>> [   10.774637] task: ee00e800 ti: ee078000 task.ti: ee078000
>>> [   10.774637] PC is at crc32_le+0x2c/0x13c
>>> [   10.774637] LR is at 0x1e00
>>> [   10.774637] pc : [<c01cb3a0>]    lr : [<00001e00>]    psr: 20000093
>>> [   10.774637] sp : ee079e6c  ip : 700de3b6  fp : efa06222
>>> [   10.774637] r10: 840510ee  r9 : 00000000  r8 : 00002000
>>> [   10.774637] r7 : c05086ac  r6 : 00000000  r5 : 9e16d8c3  r4 : f0000ffc
>>> [   10.774637] r3 : c05083c0  r2 : 00000000  r1 : effffffc  r0 : 20706046
>>> [   10.774637] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM
>>> Segment user
>>> [   10.774637] Control: 10c5387d  Table: 6db1806a  DAC: 00000015
>>> [   10.774637] Process sh (pid: 1, stack limit = 0xee078240)
>>> [   10.774637] Stack: (0xee079e6c to 0xee07a000)
>>> [   10.774637] 9e60:                            70000000 ed9cba00
>>> ef7fccc0 00000000 c050f036
>>> [   10.774637] 9e80: 00000000 ee3ca60c beb7da40 c001a8c8 ef7fccc0
>>> ed9cba00 c001a894 c001a880
>>> [   10.774637] 9ea0: c05128a0 ed9c0000 c001a894 c001a850 c05125f0
>>> c05439bc 00000003 c001a0ec
>>> [   10.774637] 9ec0: c05439bc c0057044 beb7da40 c03841a4 c044e1d0
>>> ee079eec 00000000 ee079eec
>>> [   10.774637] 9ee0: 00000003 00000003 00000000 c038f360 00000003
>>> ed899d40 00000004 c00572a0
>>> [   10.774637] 9f00: 0000006d 00000003 c04465bc c00562c4 00000004
>>> 00000000 00000000 ee079f80
>>> [   10.774637] 9f20: ed899d40 00000004 ee3ca600 c0110534 00000000
>>> 00000000 ee203900 b6f3b000
>>> [   10.774637] 9f40: ee079f80 00000004 00000004 b6f3b000 00000000
>>> c00b7ca0 ee00e800 c00d1570
>>> [   10.774637] 9f60: 00000001 00000000 00000000 ee203900 ee203900
>>> 00000004 b6f3b000 c00b8284
>>> [   10.774637] 9f80: 00000000 00000000 ee203900 00000004 b6f3b000
>>> b6e265f8 00000004 c000e4e4
>>> [   10.774637] 9fa0: ee078000 c000e360 00000004 b6f3b000 00000001
>>> b6f3b000 00000004 00000000
>>> [   10.774637] 9fc0: 00000004 b6f3b000 b6e265f8 00000004 00000004
>>> 000ad848 00000974 beb7da40
>>> [   10.774637] 9fe0: b6f3b000 beb7d7c0 b6d6d124 b6dba43c 60000010
>>> 00000001 ffffffff ffffffff
>>> [   10.774637] [<c01cb3a0>] (crc32_le) from [<c001a8c8>]
>>> (s3c_pm_makecheck+0x34/0x54)
>>> [   10.774637] [<c001a8c8>] (s3c_pm_makecheck) from [<c001a880>]
>>> (s3c_pm_run_res+0x6c/0x80)
>>> [   10.774637] [<c001a880>] (s3c_pm_run_res) from [<c001a850>]
>>> (s3c_pm_run_res+0x3c/0x80)
>>> [   10.774637] [<c001a850>] (s3c_pm_run_res) from [<c001a0ec>]
>>> (exynos_suspend_enter+0xa8/0x144)
>>> [   10.774637] [<c001a0ec>] (exynos_suspend_enter) from [<c0057044>]
>>> (suspend_devices_and_enter+0x25c/0x304)
>>> [   10.774637] [<c0057044>] (suspend_devices_and_enter) from
>>> [<c00572a0>] (pm_suspend+0x1b4/0x214)
>>> [   10.774637] [<c00572a0>] (pm_suspend) from [<c00562c4>]
>>> (state_store+0x68/0xb8)
>>> [   10.774637] [<c00562c4>] (state_store) from [<c0110534>]
>>> (kernfs_fop_write+0xc0/0x180)
>>> [   10.774637] [<c0110534>] (kernfs_fop_write) from [<c00b7ca0>]
>>> (vfs_write+0xac/0x188)
>>> [   10.774637] [<c00b7ca0>] (vfs_write) from [<c00b8284>] (SyS_write+0x40/0x94)
>>> [   10.774637] [<c00b8284>] (SyS_write) from [<c000e360>]
>>> (ret_fast_syscall+0x0/0x30)
>>> [   10.774637] Code: e30833c0 e1a04001 e34c3050 e1a0e008 (e5945004)
>>> [   10.774637] ---[ end trace 2ba1a0948b7498ef ]---
>>> [   10.774637] ------------[ cut here ]------------
>>> [   10.774637] WARNING: CPU: 0 PID: 0 at kernel/time/timekeeping.c:345
>>> ktime_get+0x110/0x11c()
>>> [   10.774637] Modules linked in:
>>> [   10.774637] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G      D
>>> 3.15.0-rc4-00197-g0cb752a #43
>>> [   10.774637] [<c0013fe8>] (unwind_backtrace) from [<c00112d4>]
>>> (show_stack+0x10/0x14)
>>> [   10.774637] [<c00112d4>] (show_stack) from [<c0386488>]
>>> (dump_stack+0x80/0xc0)
>>> [   10.774637] [<c0386488>] (dump_stack) from [<c001d2a0>]
>>> (warn_slowpath_common+0x6c/0x88)
>>> [   10.774637] [<c001d2a0>] (warn_slowpath_common) from [<c001d358>]
>>> (warn_slowpath_null+0x1c/0x24)
>>> [   10.774637] [<c001d358>] (warn_slowpath_null) from [<c0065ff8>]
>>> (ktime_get+0x110/0x11c)
>>> [   10.774637] [<c0065ff8>] (ktime_get) from [<c006f330>]
>>> (__tick_nohz_idle_enter+0x1c/0x44c)
>>> [   10.774637] [<c006f330>] (__tick_nohz_idle_enter) from [<c006f7a0>]
>>> (tick_nohz_idle_enter+0x40/0x78)
>>> [   10.774637] [<c006f7a0>] (tick_nohz_idle_enter) from [<c00500d8>]
>>> (cpu_startup_entry+0x48/0x160)
>>> [   10.774637] [<c00500d8>] (cpu_startup_entry) from [<c04caae4>]
>>> (start_kernel+0x344/0x350)
>>> [   10.774637] ---[ end trace 2ba1a0
>>>
>>>
>>> Regards
>>> Vikas Sajjan
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled
  2014-05-23 12:14 Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled Vikas Sajjan
  2014-06-12  9:28 ` Vikas Sajjan
@ 2014-06-12 15:20 ` Doug Anderson
  1 sibling, 0 replies; 5+ messages in thread
From: Doug Anderson @ 2014-06-12 15:20 UTC (permalink / raw)
  To: Vikas Sajjan
  Cc: linux-samsung-soc, Kukjin Kim, Tomasz Figa, Tomasz Figa,
	sunil joshi, Olof Johansson, Abhilash Kesavan

Vikas,

On Fri, May 23, 2014 at 5:14 AM, Vikas Sajjan <vikas.sajjan@samsung.com> wrote:
> Hi,
>
> I notice that if CONFIG_SAMSUNG_PM_CHECK is enabled, we get a crash in
> function "crc32_le(), as below.

PM_CHECK is nowhere near working in upstream.  ...or at least it
wasn't when I last checked in 3.8 and I can't imagine that someone has
fixed everything needed to make it work.

My best guess (without digging in detail) as to your particular crash
would be missing kmap_atomic calls.  The old code would just assume
that all physical memory was accessible and cram though it.  On modern
systems this just isn't true.  Note that assuming you're on a 2GB
system you may be able to hack around this particular crash
temporarily by using a 1G/3G split (VMSPLIT_1G).

If you are serious about getting pm_check working upstream you should
check out the version in ChromeOS 3.8, clean it up, and land it.  A
few notes about that, though:

1. In order to get PM_CHECK working on today's modern kernels, you'll
need to introduce "suspend volatile" like we did in Chrome OS.  This
is used to mark areas of memory that shouldn't be checked (because
they change between the two calls pm check).  These markings need to
go in generic (non-samsung) code.

2. In order to have any chance of getting upstream to accept all of
the suspend volatile markings, you'll probably need to make pm_check a
generic kernel feature and not one specific to Samsung.

3. You can ignore the "bitfix" stuff in the ChromeOS tree.  There's
pretty much zero chance upstream would want this IMHO.  If they want
it it could always be tacked on later.


I'm happy to answer more questions about pm check, so just let me know.

-Doug

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-06-12 15:20 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-23 12:14 Crash during S2R on Arndale if CONFIG_SAMSUNG_PM_CHECK enabled Vikas Sajjan
2014-06-12  9:28 ` Vikas Sajjan
2014-06-12  9:54   ` Tomasz Figa
2014-06-12 10:12     ` Vikas Sajjan
2014-06-12 15:20 ` Doug Anderson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.