2012-08-21 23:04:49

by Kim Phillips

[permalink] [raw]
Subject: [PATCH] crypto: caam - static constify error lookup tables

checkstack reports report_deco_status(), report_ccb_status() as
particularly excessive stack users. Move error lookup tables
off the stack and put them in .rodata.

Signed-off-by: Kim Phillips <[email protected]>
---
drivers/crypto/caam/error.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/crypto/caam/error.c b/drivers/crypto/caam/error.c
index 9955ed9..497c1c2 100644
--- a/drivers/crypto/caam/error.c
+++ b/drivers/crypto/caam/error.c
@@ -36,7 +36,7 @@ static void report_jump_idx(u32 status, char *outstr)

static void report_ccb_status(u32 status, char *outstr)
{
- char *cha_id_list[] = {
+ static const char *cha_id_list[] = {
"",
"AES",
"DES",
@@ -51,7 +51,7 @@ static void report_ccb_status(u32 status, char *outstr)
"ZUCE",
"ZUCA",
};
- char *err_id_list[] = {
+ static const char *err_id_list[] = {
"No error.",
"Mode error.",
"Data size error.",
@@ -69,7 +69,7 @@ static void report_ccb_status(u32 status, char *outstr)
"Invalid CHA combination was selected",
"Invalid CHA selected.",
};
- char *rng_err_id_list[] = {
+ static const char *rng_err_id_list[] = {
"",
"",
"",
@@ -119,7 +119,7 @@ static void report_jump_status(u32 status, char *outstr)

static void report_deco_status(u32 status, char *outstr)
{
- const struct {
+ static const struct {
u8 value;
char *error_text;
} desc_error_list[] = {
@@ -247,7 +247,7 @@ static void report_cond_code_status(u32 status, char *outstr)

char *caam_jr_strstatus(char *outstr, u32 status)
{
- struct stat_src {
+ static const struct stat_src {
void (*report_ssed)(u32 status, char *outstr);
char *error;
} status_src[] = {
--
1.7.11.4