From: Heiko Carstens Date: Mon, 25 Oct 2010 14:10:21 +0000 (+0200) Subject: [S390] cmm: fix crash on case conversion X-Git-Tag: v2.6.37-rc1~125^2~33 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a20852d2b7ca3c6e7b232eecf09631b66dde2a46;p=platform%2Fkernel%2Flinux-stable.git [S390] cmm: fix crash on case conversion When the cmm module is compiled into the kernel it will crash when writing to the R/O data section. Reason is the lower to upper case conversion of the "sender" module parameter which ignored the fact that the pointer is preinitialized. Introduced with 41b42876 "cmm, smsgiucv_app: convert sender to uppercase" Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/mm/cmm.c b/arch/s390/mm/cmm.c index a9550dc..c66ffd8 100644 --- a/arch/s390/mm/cmm.c +++ b/arch/s390/mm/cmm.c @@ -23,7 +23,10 @@ #include #include -static char *sender = "VMRMSVM"; +#ifdef CONFIG_CMM_IUCV +static char *cmm_default_sender = "VMRMSVM"; +#endif +static char *sender; module_param(sender, charp, 0400); MODULE_PARM_DESC(sender, "Guest name that may send SMSG messages (default VMRMSVM)"); @@ -440,6 +443,8 @@ static int __init cmm_init(void) int len = strlen(sender); while (len--) sender[len] = toupper(sender[len]); + } else { + sender = cmm_default_sender; } rc = smsg_register_callback(SMSG_PREFIX, cmm_smsg_target);