提交 663a8304 编写于 作者: B Ben Dooks

[ARM] S3C: Avoid checking the task stackpage in pm-check

When doing the CRC check of the memory, avoid checking
the page that our stack is residing in as this changes
during the execution of the suspend and resume.
Signed-off-by: NBen Dooks <ben-linux@fluff.org>
上级 67c2addc
...@@ -152,7 +152,7 @@ static inline int in_region(void *ptr, int size, void *what, size_t whatsz) ...@@ -152,7 +152,7 @@ static inline int in_region(void *ptr, int size, void *what, size_t whatsz)
} }
/** /**
* s3c_pm_runcheck*() - helper to check a resource on restore. * s3c_pm_runcheck() - helper to check a resource on restore.
* @res: The resource to check * @res: The resource to check
* @vak: Pointer to list of CRC32 values to check. * @vak: Pointer to list of CRC32 values to check.
* *
...@@ -166,9 +166,12 @@ static u32 *s3c_pm_runcheck(struct resource *res, u32 *val) ...@@ -166,9 +166,12 @@ static u32 *s3c_pm_runcheck(struct resource *res, u32 *val)
void *save_at = phys_to_virt(s3c_sleep_save_phys); void *save_at = phys_to_virt(s3c_sleep_save_phys);
unsigned long addr; unsigned long addr;
unsigned long left; unsigned long left;
void *stkpage;
void *ptr; void *ptr;
u32 calc; u32 calc;
stkpage = (void *)((u32)&calc & ~PAGE_MASK);
for (addr = res->start; addr < res->end; for (addr = res->start; addr < res->end;
addr += CHECK_CHUNKSIZE) { addr += CHECK_CHUNKSIZE) {
left = res->end - addr; left = res->end - addr;
...@@ -178,6 +181,11 @@ static u32 *s3c_pm_runcheck(struct resource *res, u32 *val) ...@@ -178,6 +181,11 @@ static u32 *s3c_pm_runcheck(struct resource *res, u32 *val)
ptr = phys_to_virt(addr); ptr = phys_to_virt(addr);
if (in_region(ptr, left, stkpage, 4096)) {
S3C_PMDBG("skipping %08lx, has stack in\n", addr);
goto skip_check;
}
if (in_region(ptr, left, crcs, crc_size)) { if (in_region(ptr, left, crcs, crc_size)) {
S3C_PMDBG("skipping %08lx, has crc block in\n", addr); S3C_PMDBG("skipping %08lx, has crc block in\n", addr);
goto skip_check; goto skip_check;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册