linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 3/3] scsi : megaraid_{mm,mbox}: a fix on "kernel unaligned access address" issue
@ 2006-07-25 14:45 Ju, Seokmann
  2006-07-25 15:05 ` Rolf Eike Beer
  0 siblings, 1 reply; 2+ messages in thread
From: Ju, Seokmann @ 2006-07-25 14:45 UTC (permalink / raw)
  To: sakurai_hiro, James.Bottomley, akpm
  Cc: linux-scsi, linux-kernel, Patro, Sumant, Yang, Bo

[-- Attachment #1: Type: text/plain, Size: 5036 bytes --]

Hi,

This is a third patch which follows prevous two patches ([PATCH 1/3] and
[PATCH 2/3]).

There was an issue in the data structure defined by megaraid driver
casuing "kernel unaligned access.." messages to be displayed during
IOCTL on IA64 platform.

The issue has been reported/fixed by Sakurai Hiroomi
[sakurai_hiro@soft.fujitsu.com].

Thank you Sakurai for you help.

Thank you,

Seokmann

Signed-Off By: Seokmann Ju <seokmann.ju@lsil.com>
---
diff -Naur inqwithevpd/Documentation/scsi/ChangeLog.megaraid
unaligned/Documentation/scsi/ChangeLog.megaraid
--- inqwithevpd/Documentation/scsi/ChangeLog.megaraid	2006-07-24
15:35:02.000000000 -0400
+++ unaligned/Documentation/scsi/ChangeLog.megaraid	2006-07-24
15:41:49.000000000 -0400
@@ -66,6 +66,61 @@
 	Fix: MegaRAID F/W has fixed the problem and being process of
release,
 	soon. Meanwhile, driver will filter out the request.
 
+3.	One of member in the data structure of the driver leads unaligne
+	issue on 64-bit platform.
+	Customer reporeted "kernel unaligned access addrss" issue when
+	application communicates with MegaRAID HBA driver.
+	Root Cause: in uioc_t structure, one of member had misaligned
and it
+	led system to display the error message.
+	Fix: A patch submitted to community from following folk.
+
+	> -----Original Message-----
+	> From: linux-scsi-owner@vger.kernel.org 
+	> [mailto:linux-scsi-owner@vger.kernel.org] On Behalf Of Sakurai
Hiroomi
+	> Sent: Wednesday, July 12, 2006 4:20 AM
+	> To: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
+	> Subject: Re: Help: strange messages from kernel on IA64
platform
+	> 
+	> Hi,
+	> 
+	> I saw same message.
+	> 
+	> When GAM(Global Array Manager) is started, The following 
+	> message output.
+	> kernel: kernel unaligned access to 0xe0000001fe1080d4, 
+	> ip=0xa000000200053371
+	> 
+	> The uioc structure used by ioctl is defined by packed,
+	> the allignment of each member are disturbed.
+	> In a 64 bit structure, the allignment of member doesn't fit 64
bit
+	> boundary. this causes this messages.
+	> In a 32 bit structure, we don't see the message because the
allinment
+	> of member fit 32 bit boundary even if packed is specified. 
+	> 
+	> patch
+	> I Add 32 bit dummy member to fit 64 bit boundary. I tested.
+	> We confirmed this patch fix the problem by IA64 server.
+	> 
+	> **************************************************************
+	> ****************
+	> --- linux-2.6.9/drivers/scsi/megaraid/megaraid_ioctl.h.orig	
+	> 2006-04-03 17:13:03.000000000 +0900
+	> +++ linux-2.6.9/drivers/scsi/megaraid/megaraid_ioctl.h	
+	> 2006-04-03 17:14:09.000000000 +0900
+	> @@ -132,6 +132,10 @@
+	>  /* Driver Data: */
+	>          void __user *           user_data;
+	>          uint32_t                user_data_len;
+	> +
+	> +        /* 64bit alignment */
+	> +        uint32_t                pad_0xBC;
+	> +
+	>          mraid_passthru_t        __user *user_pthru;
+	>  
+	>          mraid_passthru_t        *pthru32;
+	> **************************************************************
+	> ****************
+
 Release Date	: Mon Apr 11 12:27:22 EST 2006 - Seokmann Ju
<sju@lsil.com>
 Current Version : 2.20.4.8 (scsi module), 2.20.2.6 (cmm module)
 Older Version	: 2.20.4.7 (scsi module), 2.20.2.6 (cmm module)
diff -Naur inqwithevpd/drivers/scsi/megaraid/megaraid_ioctl.h
unaligned/drivers/scsi/megaraid/megaraid_ioctl.h
--- inqwithevpd/drivers/scsi/megaraid/megaraid_ioctl.h	2006-07-24
15:32:27.000000000 -0400
+++ unaligned/drivers/scsi/megaraid/megaraid_ioctl.h	2006-07-24
16:40:56.000000000 -0400
@@ -132,6 +132,10 @@
 /* Driver Data: */
 	void __user *		user_data;
 	uint32_t		user_data_len;
+
+	/* 64bit alignment */
+	uint32_t                pad_for_64bit_align;
+
 	mraid_passthru_t	__user *user_pthru;
 
 	mraid_passthru_t	*pthru32;
diff -Naur inqwithevpd/drivers/scsi/megaraid/megaraid_mm.c
unaligned/drivers/scsi/megaraid/megaraid_mm.c
--- inqwithevpd/drivers/scsi/megaraid/megaraid_mm.c	2006-07-24
15:32:27.000000000 -0400
+++ unaligned/drivers/scsi/megaraid/megaraid_mm.c	2006-07-24
15:44:14.000000000 -0400
@@ -10,7 +10,7 @@
  *	   2 of the License, or (at your option) any later version.
  *
  * FILE		: megaraid_mm.c
- * Version	: v2.20.2.6 (Mar 7 2005)
+ * Version	: v2.20.2.7 (Jul 16 2006)
  *
  * Common management module
  */
diff -Naur inqwithevpd/drivers/scsi/megaraid/megaraid_mm.h
unaligned/drivers/scsi/megaraid/megaraid_mm.h
--- inqwithevpd/drivers/scsi/megaraid/megaraid_mm.h	2006-07-24
15:32:27.000000000 -0400
+++ unaligned/drivers/scsi/megaraid/megaraid_mm.h	2006-07-24
15:44:44.000000000 -0400
@@ -27,9 +27,9 @@
 #include "megaraid_ioctl.h"
 
 
-#define LSI_COMMON_MOD_VERSION	"2.20.2.6"
+#define LSI_COMMON_MOD_VERSION	"2.20.2.7"
 #define LSI_COMMON_MOD_EXT_VERSION	\
-		"(Release Date: Mon Mar 7 00:01:03 EST 2005)"
+		"(Release Date: Sun Jul 16 00:01:03 EST 2006)"
 
 
 #define LSI_DBGLVL			dbglevel
---

[-- Attachment #2: megaraid_unaligned.patch --]
[-- Type: application/octet-stream, Size: 4436 bytes --]

diff -Naur inqwithevpd/Documentation/scsi/ChangeLog.megaraid unaligned/Documentation/scsi/ChangeLog.megaraid
--- inqwithevpd/Documentation/scsi/ChangeLog.megaraid	2006-07-24 15:35:02.000000000 -0400
+++ unaligned/Documentation/scsi/ChangeLog.megaraid	2006-07-24 15:41:49.000000000 -0400
@@ -66,6 +66,61 @@
 	Fix: MegaRAID F/W has fixed the problem and being process of release,
 	soon. Meanwhile, driver will filter out the request.
 
+3.	One of member in the data structure of the driver leads unaligne
+	issue on 64-bit platform.
+	Customer reporeted "kernel unaligned access addrss" issue when
+	application communicates with MegaRAID HBA driver.
+	Root Cause: in uioc_t structure, one of member had misaligned and it
+	led system to display the error message.
+	Fix: A patch submitted to community from following folk.
+
+	> -----Original Message-----
+	> From: linux-scsi-owner@vger.kernel.org 
+	> [mailto:linux-scsi-owner@vger.kernel.org] On Behalf Of Sakurai Hiroomi
+	> Sent: Wednesday, July 12, 2006 4:20 AM
+	> To: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
+	> Subject: Re: Help: strange messages from kernel on IA64 platform
+	> 
+	> Hi,
+	> 
+	> I saw same message.
+	> 
+	> When GAM(Global Array Manager) is started, The following 
+	> message output.
+	> kernel: kernel unaligned access to 0xe0000001fe1080d4, 
+	> ip=0xa000000200053371
+	> 
+	> The uioc structure used by ioctl is defined by packed,
+	> the allignment of each member are disturbed.
+	> In a 64 bit structure, the allignment of member doesn't fit 64 bit
+	> boundary. this causes this messages.
+	> In a 32 bit structure, we don't see the message because the allinment
+	> of member fit 32 bit boundary even if packed is specified. 
+	> 
+	> patch
+	> I Add 32 bit dummy member to fit 64 bit boundary. I tested.
+	> We confirmed this patch fix the problem by IA64 server.
+	> 
+	> **************************************************************
+	> ****************
+	> --- linux-2.6.9/drivers/scsi/megaraid/megaraid_ioctl.h.orig	
+	> 2006-04-03 17:13:03.000000000 +0900
+	> +++ linux-2.6.9/drivers/scsi/megaraid/megaraid_ioctl.h	
+	> 2006-04-03 17:14:09.000000000 +0900
+	> @@ -132,6 +132,10 @@
+	>  /* Driver Data: */
+	>          void __user *           user_data;
+	>          uint32_t                user_data_len;
+	> +
+	> +        /* 64bit alignment */
+	> +        uint32_t                pad_0xBC;
+	> +
+	>          mraid_passthru_t        __user *user_pthru;
+	>  
+	>          mraid_passthru_t        *pthru32;
+	> **************************************************************
+	> ****************
+
 Release Date	: Mon Apr 11 12:27:22 EST 2006 - Seokmann Ju <sju@lsil.com>
 Current Version : 2.20.4.8 (scsi module), 2.20.2.6 (cmm module)
 Older Version	: 2.20.4.7 (scsi module), 2.20.2.6 (cmm module)
diff -Naur inqwithevpd/drivers/scsi/megaraid/megaraid_ioctl.h unaligned/drivers/scsi/megaraid/megaraid_ioctl.h
--- inqwithevpd/drivers/scsi/megaraid/megaraid_ioctl.h	2006-07-24 15:32:27.000000000 -0400
+++ unaligned/drivers/scsi/megaraid/megaraid_ioctl.h	2006-07-24 16:40:56.000000000 -0400
@@ -132,6 +132,10 @@
 /* Driver Data: */
 	void __user *		user_data;
 	uint32_t		user_data_len;
+
+	/* 64bit alignment */
+	uint32_t                pad_for_64bit_align;
+
 	mraid_passthru_t	__user *user_pthru;
 
 	mraid_passthru_t	*pthru32;
diff -Naur inqwithevpd/drivers/scsi/megaraid/megaraid_mm.c unaligned/drivers/scsi/megaraid/megaraid_mm.c
--- inqwithevpd/drivers/scsi/megaraid/megaraid_mm.c	2006-07-24 15:32:27.000000000 -0400
+++ unaligned/drivers/scsi/megaraid/megaraid_mm.c	2006-07-24 15:44:14.000000000 -0400
@@ -10,7 +10,7 @@
  *	   2 of the License, or (at your option) any later version.
  *
  * FILE		: megaraid_mm.c
- * Version	: v2.20.2.6 (Mar 7 2005)
+ * Version	: v2.20.2.7 (Jul 16 2006)
  *
  * Common management module
  */
diff -Naur inqwithevpd/drivers/scsi/megaraid/megaraid_mm.h unaligned/drivers/scsi/megaraid/megaraid_mm.h
--- inqwithevpd/drivers/scsi/megaraid/megaraid_mm.h	2006-07-24 15:32:27.000000000 -0400
+++ unaligned/drivers/scsi/megaraid/megaraid_mm.h	2006-07-24 15:44:44.000000000 -0400
@@ -27,9 +27,9 @@
 #include "megaraid_ioctl.h"
 
 
-#define LSI_COMMON_MOD_VERSION	"2.20.2.6"
+#define LSI_COMMON_MOD_VERSION	"2.20.2.7"
 #define LSI_COMMON_MOD_EXT_VERSION	\
-		"(Release Date: Mon Mar 7 00:01:03 EST 2005)"
+		"(Release Date: Sun Jul 16 00:01:03 EST 2006)"
 
 
 #define LSI_DBGLVL			dbglevel

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

* Re: [PATCH 3/3] scsi : megaraid_{mm,mbox}: a fix on "kernel unaligned access address" issue
  2006-07-25 14:45 [PATCH 3/3] scsi : megaraid_{mm,mbox}: a fix on "kernel unaligned access address" issue Ju, Seokmann
@ 2006-07-25 15:05 ` Rolf Eike Beer
  0 siblings, 0 replies; 2+ messages in thread
From: Rolf Eike Beer @ 2006-07-25 15:05 UTC (permalink / raw)
  To: Ju, Seokmann
  Cc: sakurai_hiro, James.Bottomley, akpm, linux-scsi, linux-kernel,
	Patro, Sumant, Yang, Bo

[-- Attachment #1: Type: text/plain, Size: 1672 bytes --]

Ju, Seokmann wrote:
> Hi,
>
> This is a third patch which follows prevous two patches ([PATCH 1/3] and
> [PATCH 2/3]).

Either use a [0/3] mail that describes the complete changeset or just send 
each patch as a reply to the previous one. This way they are grouped together 
in the mail programs. That keeps the inbox clean and the relationsship is 
clearer.

> Signed-Off By: Seokmann Ju <seokmann.ju@lsil.com>
> ---
> diff -Naur inqwithevpd/Documentation/scsi/ChangeLog.megaraid
> unaligned/Documentation/scsi/ChangeLog.megaraid
> --- inqwithevpd/Documentation/scsi/ChangeLog.megaraid	2006-07-24
> 15:35:02.000000000 -0400
> +++ unaligned/Documentation/scsi/ChangeLog.megaraid	2006-07-24
> 15:41:49.000000000 -0400
> @@ -66,6 +66,61 @@
>  	Fix: MegaRAID F/W has fixed the problem and being process of
> release,
>  	soon. Meanwhile, driver will filter out the request.
>
> +3.	One of member in the data structure of the driver leads unaligne
                                                                ^^^^^^^^
> +	issue on 64-bit platform.
> +	Customer reporeted "kernel unaligned access addrss" issue when
                                                   ^^^^^^

Typos.

> +	> -----Original Message-----
[...]

This is IMHO too much data for an in-kernel changelog. I would vote for 
including this in your commit comments, then it will be available as git 
comment and not inflate the kernel tree itself with text that's useless for 
most users. This is really only of interest if someone tries to find out 
something about the changes in this driver and then he's normally also 
interested in the diffs itself.

Eike

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

end of thread, other threads:[~2006-07-25 15:03 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-07-25 14:45 [PATCH 3/3] scsi : megaraid_{mm,mbox}: a fix on "kernel unaligned access address" issue Ju, Seokmann
2006-07-25 15:05 ` Rolf Eike Beer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).