linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: 2.6.34-rc1: ACPI: BUG: key f71f0168 not in .data!
       [not found]           ` <4B9B0868.7080807@kernel.org>
@ 2010-03-13  4:46             ` James Bottomley
  2010-03-13  4:58               ` Eric W. Biederman
  0 siblings, 1 reply; 12+ messages in thread
From: James Bottomley @ 2010-03-13  4:46 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Eric W. Biederman, Alexander Beregalov, Greg KH, linux-acpi,
	Linux Kernel Mailing List, linux-scsi

On Fri, 2010-03-12 at 19:37 -0800, Yinghai Lu wrote:
> ---
>  drivers/base/attribute_container.c |    1 +
>  drivers/scsi/lpfc/lpfc_attr.c      |    3 +++
>  drivers/scsi/scsi_sysfs.c          |   15 ++++++++++++---
>  3 files changed, 16 insertions(+), 3 deletions(-)

Added linux-scsi, since this seems to be a SCSI fix.

I've no idea what actual problem this is fixing, what's the descriptive
changelog for this?

James


> Index: linux-2.6/drivers/scsi/lpfc/lpfc_attr.c
> ===================================================================
> --- linux-2.6.orig/drivers/scsi/lpfc/lpfc_attr.c
> +++ linux-2.6/drivers/scsi/lpfc/lpfc_attr.c
> @@ -3780,6 +3780,7 @@ lpfc_alloc_sysfs_attr(struct lpfc_vport
>  	struct Scsi_Host *shost = lpfc_shost_from_vport(vport);
>  	int error;
>  
> +	sysfs_bin_attr_init(&sysfs_drvr_stat_data_attr);
>  	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
>  				      &sysfs_drvr_stat_data_attr);
>  
> @@ -3787,11 +3788,13 @@ lpfc_alloc_sysfs_attr(struct lpfc_vport
>  	if (error || vport->port_type == LPFC_NPIV_PORT)
>  		goto out;
>  
> +	sysfs_bin_attr_init(&sysfs_ctlreg_attr);
>  	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
>  				      &sysfs_ctlreg_attr);
>  	if (error)
>  		goto out_remove_stat_attr;
>  
> +	sysfs_bin_attr_init(&sysfs_mbox_attr);
>  	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
>  				      &sysfs_mbox_attr);
>  	if (error)
> Index: linux-2.6/drivers/scsi/scsi_sysfs.c
> ===================================================================
> --- linux-2.6.orig/drivers/scsi/scsi_sysfs.c
> +++ linux-2.6/drivers/scsi/scsi_sysfs.c
> @@ -907,20 +907,27 @@ int scsi_sysfs_add_sdev(struct scsi_devi
>  
>  	/* create queue files, which may be writable, depending on the host */
>  	if (sdev->host->hostt->change_queue_depth) {
> +		sysfs_bin_attr_init(&sdev_attr_queue_depth_rw);
>  		error = device_create_file(&sdev->sdev_gendev,
>  					   &sdev_attr_queue_depth_rw);
> +		sysfs_bin_attr_init(&sdev_attr_queue_ramp_up_period);
>  		error = device_create_file(&sdev->sdev_gendev,
>  					   &sdev_attr_queue_ramp_up_period);
>  	}
> -	else
> +	else {
> +		sysfs_bin_attr_init(&dev_attr_queue_depth);
>  		error = device_create_file(&sdev->sdev_gendev, &dev_attr_queue_depth);
> +	}
>  	if (error)
>  		return error;
>  
> -	if (sdev->host->hostt->change_queue_type)
> +	if (sdev->host->hostt->change_queue_type)  {
> +		sysfs_bin_attr_init(&sdev_attr_queue_type_rw);
>  		error = device_create_file(&sdev->sdev_gendev, &sdev_attr_queue_type_rw);
> -	else
> +	} else {
> +		sysfs_bin_attr_init(&dev_attr_queue_type);
>  		error = device_create_file(&sdev->sdev_gendev, &dev_attr_queue_type);
> +	}
>  	if (error)
>  		return error;
>  
> @@ -935,6 +942,7 @@ int scsi_sysfs_add_sdev(struct scsi_devi
>  	/* add additional host specific attributes */
>  	if (sdev->host->hostt->sdev_attrs) {
>  		for (i = 0; sdev->host->hostt->sdev_attrs[i]; i++) {
> +			sysfs_bin_attr_init(sdev->host->hostt->sdev_attrs[i]);
>  			error = device_create_file(&sdev->sdev_gendev,
>  					sdev->host->hostt->sdev_attrs[i]);
>  			if (error)
> @@ -1060,6 +1068,7 @@ int scsi_sysfs_add_host(struct Scsi_Host
>  	/* add host specific attributes */
>  	if (shost->hostt->shost_attrs) {
>  		for (i = 0; shost->hostt->shost_attrs[i]; i++) {
> +			sysfs_bin_attr_init(shost->hostt->shost_attrs[i]);
>  			error = device_create_file(&shost->shost_dev,
>  					shost->hostt->shost_attrs[i]);
>  			if (error)
> Index: linux-2.6/drivers/base/attribute_container.c
> ===================================================================
> --- linux-2.6.orig/drivers/base/attribute_container.c
> +++ linux-2.6/drivers/base/attribute_container.c
> @@ -328,6 +328,7 @@ attribute_container_add_attrs(struct dev
>  		return sysfs_create_group(&classdev->kobj, cont->grp);
>  
>  	for (i = 0; attrs[i]; i++) {
> +		sysfs_bin_attr_init(attrs[i]);
>  		error = device_create_file(classdev, attrs[i]);
>  		if (error)
>  			return error;

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

* Re: 2.6.34-rc1: ACPI: BUG: key f71f0168 not in .data!
  2010-03-13  4:46             ` 2.6.34-rc1: ACPI: BUG: key f71f0168 not in .data! James Bottomley
@ 2010-03-13  4:58               ` Eric W. Biederman
  2010-03-13  5:13                 ` Matthew Wilcox
  0 siblings, 1 reply; 12+ messages in thread
From: Eric W. Biederman @ 2010-03-13  4:58 UTC (permalink / raw)
  To: James Bottomley
  Cc: Yinghai Lu, Alexander Beregalov, Greg KH, linux-acpi,
	Linux Kernel Mailing List, linux-scsi

James Bottomley <James.Bottomley@HansenPartnership.com> writes:

> On Fri, 2010-03-12 at 19:37 -0800, Yinghai Lu wrote:
>> ---
>>  drivers/base/attribute_container.c |    1 +
>>  drivers/scsi/lpfc/lpfc_attr.c      |    3 +++
>>  drivers/scsi/scsi_sysfs.c          |   15 ++++++++++++---
>>  3 files changed, 16 insertions(+), 3 deletions(-)
>
> Added linux-scsi, since this seems to be a SCSI fix.
>
> I've no idea what actual problem this is fixing, what's the descriptive
> changelog for this?

The root problem is that we occasionally have unrecognized deadlocks
on the sysfs attributes.

For 2.6.33 I managed to get lockdep mostly working but there the way
I did it generated a lot of false positives.

For 2.6.34 I reworked the sysfs lockdep handling to remove the false
positives by treating each sysfs attribute as it's own class.  Most
sysfs attributes are declared statically and don't need any
initialization.  Unfortunately there are a handful of dynamically
allocated sysfs attributes that do need initialization.

This patch is a fix to get one of those last handful of dynamically
allocated sysfs attributes that I missed and apparently do not
exist in my test system.

None of this has any effect (for now) when lockdep is disabled.

Eric

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

* Re: 2.6.34-rc1: ACPI: BUG: key f71f0168 not in .data!
  2010-03-13  4:58               ` Eric W. Biederman
@ 2010-03-13  5:13                 ` Matthew Wilcox
  0 siblings, 0 replies; 12+ messages in thread
From: Matthew Wilcox @ 2010-03-13  5:13 UTC (permalink / raw)
  To: Eric W. Biederman
  Cc: James Bottomley, Yinghai Lu, Alexander Beregalov, Greg KH,
	linux-acpi, Linux Kernel Mailing List, linux-scsi

On Fri, Mar 12, 2010 at 08:58:36PM -0800, Eric W. Biederman wrote:
> The root problem is that we occasionally have unrecognized deadlocks
> on the sysfs attributes.
> 
> For 2.6.33 I managed to get lockdep mostly working but there the way
> I did it generated a lot of false positives.
> 
> For 2.6.34 I reworked the sysfs lockdep handling to remove the false
> positives by treating each sysfs attribute as it's own class.  Most
> sysfs attributes are declared statically and don't need any
> initialization.  Unfortunately there are a handful of dynamically
> allocated sysfs attributes that do need initialization.
> 
> This patch is a fix to get one of those last handful of dynamically
> allocated sysfs attributes that I missed and apparently do not
> exist in my test system.

There's a few more than this showing up on my laptop.  Looking in dmesg,
the first gets a backtrace:

[    1.034471] BUG: key f6a26638 not in .data!
[    1.034600] ------------[ cut here ]------------
[    1.034736] WARNING: at kernel/lockdep.c:2706 lockdep_init_map+0xd1/0x40c()
[    1.034867] Hardware name: LifeBook P8010
[    1.034993] Modules linked in:
[    1.035170] Pid: 1, comm: swapper Not tainted 2.6.34-rc1-00005-g522dba7 #80
[    1.035300] Call Trace:
[    1.035428]  [<c102caba>] warn_slowpath_common+0x60/0x90
[    1.035561]  [<c102caf7>] warn_slowpath_null+0xd/0x10
[    1.035694]  [<c104fa6a>] lockdep_init_map+0xd1/0x40c
[    1.035827]  [<c10de32a>] ? sysfs_new_dirent+0x73/0xdb
[    1.035959]  [<c10ddc56>] sysfs_add_file_mode+0x4c/0x88
[    1.036132]  [<c10ddca0>] sysfs_add_file+0xe/0x13
[    1.036264]  [<c10ddd32>] sysfs_create_file+0x20/0x22
[    1.036394]  [<c11ee279>] device_create_file+0x13/0x15
[    1.036528]  [<c129246e>] thermal_zone_device_register+0x3d0/0x5db
[    1.036662]  [<c11b160f>] acpi_thermal_add+0x1f6/0x42d

Subsequent ones don't:

[    1.039072] BUG: key f6a26668 not in .data!
[    1.039220] BUG: key f6a2f488 not in .data!
[    1.039358] BUG: key f6a2f408 not in .data!
[    1.039571] thermal LNXTHERM:01: registered as thermal_zone0
[    1.039719] ACPI: Thermal Zone [TZ00] (27 C)
[    1.040515] BUG: key f6a18e38 not in .data!
[    1.040648] BUG: key f6a18e68 not in .data!
[    1.040800] BUG: key f6a9ef88 not in .data!
[    1.040941] BUG: key f6a9ef08 not in .data!
[    1.041185] thermal LNXTHERM:02: registered as thermal_zone1

[   25.196957] iwlagn 0000:14:00.0: firmware: requesting iwlwifi-4965-2.ucode
[   25.197163] BUG: key f663393c not in .data!
[   25.217340] iwlagn 0000:14:00.0: loaded firmware version 228.57.2.21

-- 
Matthew Wilcox				Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours.  We can't possibly take such
a retrograde step."

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

* [PATCH] scsi: fix lockdep warning
       [not found]         ` <4B99A6F0.4080203@kernel.org>
       [not found]           ` <4B9B0868.7080807@kernel.org>
@ 2010-03-20  7:17           ` Yinghai Lu
  2010-03-20  7:57             ` Wolfram Sang
                               ` (3 more replies)
  1 sibling, 4 replies; 12+ messages in thread
From: Yinghai Lu @ 2010-03-20  7:17 UTC (permalink / raw)
  To: Eric W. Biederman, James Bottomley, Greg KH
  Cc: Linux Kernel Mailing List, Linux-Scsi


with qlogic and emulex card etc.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>

---
 drivers/base/attribute_container.c |    1 +
 drivers/scsi/lpfc/lpfc_attr.c      |    3 +++
 drivers/scsi/scsi_sysfs.c          |   15 ++++++++++++---
 3 files changed, 16 insertions(+), 3 deletions(-)

Index: linux-2.6/drivers/scsi/lpfc/lpfc_attr.c
===================================================================
--- linux-2.6.orig/drivers/scsi/lpfc/lpfc_attr.c
+++ linux-2.6/drivers/scsi/lpfc/lpfc_attr.c
@@ -3780,6 +3780,7 @@ lpfc_alloc_sysfs_attr(struct lpfc_vport
 	struct Scsi_Host *shost = lpfc_shost_from_vport(vport);
 	int error;
 
+	sysfs_bin_attr_init(&sysfs_drvr_stat_data_attr);
 	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
 				      &sysfs_drvr_stat_data_attr);
 
@@ -3787,11 +3788,13 @@ lpfc_alloc_sysfs_attr(struct lpfc_vport
 	if (error || vport->port_type == LPFC_NPIV_PORT)
 		goto out;
 
+	sysfs_bin_attr_init(&sysfs_ctlreg_attr);
 	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
 				      &sysfs_ctlreg_attr);
 	if (error)
 		goto out_remove_stat_attr;
 
+	sysfs_bin_attr_init(&sysfs_mbox_attr);
 	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
 				      &sysfs_mbox_attr);
 	if (error)
Index: linux-2.6/drivers/scsi/scsi_sysfs.c
===================================================================
--- linux-2.6.orig/drivers/scsi/scsi_sysfs.c
+++ linux-2.6/drivers/scsi/scsi_sysfs.c
@@ -907,20 +907,27 @@ int scsi_sysfs_add_sdev(struct scsi_devi
 
 	/* create queue files, which may be writable, depending on the host */
 	if (sdev->host->hostt->change_queue_depth) {
+		sysfs_bin_attr_init(&sdev_attr_queue_depth_rw);
 		error = device_create_file(&sdev->sdev_gendev,
 					   &sdev_attr_queue_depth_rw);
+		sysfs_bin_attr_init(&sdev_attr_queue_ramp_up_period);
 		error = device_create_file(&sdev->sdev_gendev,
 					   &sdev_attr_queue_ramp_up_period);
 	}
-	else
+	else {
+		sysfs_bin_attr_init(&dev_attr_queue_depth);
 		error = device_create_file(&sdev->sdev_gendev, &dev_attr_queue_depth);
+	}
 	if (error)
 		return error;
 
-	if (sdev->host->hostt->change_queue_type)
+	if (sdev->host->hostt->change_queue_type)  {
+		sysfs_bin_attr_init(&sdev_attr_queue_type_rw);
 		error = device_create_file(&sdev->sdev_gendev, &sdev_attr_queue_type_rw);
-	else
+	} else {
+		sysfs_bin_attr_init(&dev_attr_queue_type);
 		error = device_create_file(&sdev->sdev_gendev, &dev_attr_queue_type);
+	}
 	if (error)
 		return error;
 
@@ -935,6 +942,7 @@ int scsi_sysfs_add_sdev(struct scsi_devi
 	/* add additional host specific attributes */
 	if (sdev->host->hostt->sdev_attrs) {
 		for (i = 0; sdev->host->hostt->sdev_attrs[i]; i++) {
+			sysfs_bin_attr_init(sdev->host->hostt->sdev_attrs[i]);
 			error = device_create_file(&sdev->sdev_gendev,
 					sdev->host->hostt->sdev_attrs[i]);
 			if (error)
@@ -1060,6 +1068,7 @@ int scsi_sysfs_add_host(struct Scsi_Host
 	/* add host specific attributes */
 	if (shost->hostt->shost_attrs) {
 		for (i = 0; shost->hostt->shost_attrs[i]; i++) {
+			sysfs_bin_attr_init(shost->hostt->shost_attrs[i]);
 			error = device_create_file(&shost->shost_dev,
 					shost->hostt->shost_attrs[i]);
 			if (error)
Index: linux-2.6/drivers/base/attribute_container.c
===================================================================
--- linux-2.6.orig/drivers/base/attribute_container.c
+++ linux-2.6/drivers/base/attribute_container.c
@@ -328,6 +328,7 @@ attribute_container_add_attrs(struct dev
 		return sysfs_create_group(&classdev->kobj, cont->grp);
 
 	for (i = 0; attrs[i]; i++) {
+		sysfs_bin_attr_init(attrs[i]);
 		error = device_create_file(classdev, attrs[i]);
 		if (error)
 			return error;

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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-20  7:17           ` [PATCH] scsi: fix lockdep warning Yinghai Lu
@ 2010-03-20  7:57             ` Wolfram Sang
  2010-03-20 12:58             ` Greg KH
                               ` (2 subsequent siblings)
  3 siblings, 0 replies; 12+ messages in thread
From: Wolfram Sang @ 2010-03-20  7:57 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Eric W. Biederman, James Bottomley, Greg KH,
	Linux Kernel Mailing List, Linux-Scsi

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

On Sat, Mar 20, 2010 at 12:17:38AM -0700, Yinghai Lu wrote:
> 
> with qlogic and emulex card etc.
> 
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
> 
> ---
>  drivers/base/attribute_container.c |    1 +
>  drivers/scsi/lpfc/lpfc_attr.c      |    3 +++
>  drivers/scsi/scsi_sysfs.c          |   15 ++++++++++++---
>  3 files changed, 16 insertions(+), 3 deletions(-)
> 
> Index: linux-2.6/drivers/scsi/lpfc/lpfc_attr.c
> ===================================================================
> --- linux-2.6.orig/drivers/scsi/lpfc/lpfc_attr.c
> +++ linux-2.6/drivers/scsi/lpfc/lpfc_attr.c
> @@ -3780,6 +3780,7 @@ lpfc_alloc_sysfs_attr(struct lpfc_vport
>  	struct Scsi_Host *shost = lpfc_shost_from_vport(vport);
>  	int error;
>  
> +	sysfs_bin_attr_init(&sysfs_drvr_stat_data_attr);
>  	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
>  				      &sysfs_drvr_stat_data_attr);
>  
> @@ -3787,11 +3788,13 @@ lpfc_alloc_sysfs_attr(struct lpfc_vport
>  	if (error || vport->port_type == LPFC_NPIV_PORT)
>  		goto out;
>  
> +	sysfs_bin_attr_init(&sysfs_ctlreg_attr);
>  	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
>  				      &sysfs_ctlreg_attr);
>  	if (error)
>  		goto out_remove_stat_attr;
>  
> +	sysfs_bin_attr_init(&sysfs_mbox_attr);
>  	error = sysfs_create_bin_file(&shost->shost_dev.kobj,
>  				      &sysfs_mbox_attr);

Huh, why is this? They are statically declared.


>  	if (error)
> Index: linux-2.6/drivers/scsi/scsi_sysfs.c
> ===================================================================
> --- linux-2.6.orig/drivers/scsi/scsi_sysfs.c
> +++ linux-2.6/drivers/scsi/scsi_sysfs.c
> @@ -907,20 +907,27 @@ int scsi_sysfs_add_sdev(struct scsi_devi
>  
>  	/* create queue files, which may be writable, depending on the host */
>  	if (sdev->host->hostt->change_queue_depth) {
> +		sysfs_bin_attr_init(&sdev_attr_queue_depth_rw);
>  		error = device_create_file(&sdev->sdev_gendev,
>  					   &sdev_attr_queue_depth_rw);
> +		sysfs_bin_attr_init(&sdev_attr_queue_ramp_up_period);
>  		error = device_create_file(&sdev->sdev_gendev,
>  					   &sdev_attr_queue_ramp_up_period);

ditto

>  	}
> -	else
> +	else {
> +		sysfs_bin_attr_init(&dev_attr_queue_depth);
>  		error = device_create_file(&sdev->sdev_gendev, &dev_attr_queue_depth);
> +	}
>  	if (error)
>  		return error;
>  
> -	if (sdev->host->hostt->change_queue_type)
> +	if (sdev->host->hostt->change_queue_type)  {
> +		sysfs_bin_attr_init(&sdev_attr_queue_type_rw);
>  		error = device_create_file(&sdev->sdev_gendev, &sdev_attr_queue_type_rw);

ditto

> -	else
> +	} else {
> +		sysfs_bin_attr_init(&dev_attr_queue_type);
>  		error = device_create_file(&sdev->sdev_gendev, &dev_attr_queue_type);
> +	}
>  	if (error)
>  		return error;
>  
> @@ -935,6 +942,7 @@ int scsi_sysfs_add_sdev(struct scsi_devi
>  	/* add additional host specific attributes */
>  	if (sdev->host->hostt->sdev_attrs) {
>  		for (i = 0; sdev->host->hostt->sdev_attrs[i]; i++) {
> +			sysfs_bin_attr_init(sdev->host->hostt->sdev_attrs[i]);
>  			error = device_create_file(&sdev->sdev_gendev,
>  					sdev->host->hostt->sdev_attrs[i]);
>  			if (error)
> @@ -1060,6 +1068,7 @@ int scsi_sysfs_add_host(struct Scsi_Host
>  	/* add host specific attributes */
>  	if (shost->hostt->shost_attrs) {
>  		for (i = 0; shost->hostt->shost_attrs[i]; i++) {
> +			sysfs_bin_attr_init(shost->hostt->shost_attrs[i]);
>  			error = device_create_file(&shost->shost_dev,
>  					shost->hostt->shost_attrs[i]);
>  			if (error)
> Index: linux-2.6/drivers/base/attribute_container.c
> ===================================================================
> --- linux-2.6.orig/drivers/base/attribute_container.c
> +++ linux-2.6/drivers/base/attribute_container.c
> @@ -328,6 +328,7 @@ attribute_container_add_attrs(struct dev
>  		return sysfs_create_group(&classdev->kobj, cont->grp);
>  
>  	for (i = 0; attrs[i]; i++) {
> +		sysfs_bin_attr_init(attrs[i]);
>  		error = device_create_file(classdev, attrs[i]);
>  		if (error)
>  			return error;
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

-- 
Pengutronix e.K.                           | Wolfram Sang                |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-20  7:17           ` [PATCH] scsi: fix lockdep warning Yinghai Lu
  2010-03-20  7:57             ` Wolfram Sang
@ 2010-03-20 12:58             ` Greg KH
  2010-03-20 15:41             ` James Bottomley
  2010-03-30 15:05             ` [PATCH] scsi: fix lockdep warning Ben Gamari
  3 siblings, 0 replies; 12+ messages in thread
From: Greg KH @ 2010-03-20 12:58 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Eric W. Biederman, James Bottomley, Linux Kernel Mailing List,
	Linux-Scsi

On Sat, Mar 20, 2010 at 12:17:38AM -0700, Yinghai Lu wrote:
> 
> with qlogic and emulex card etc.

Is this still needed with 2.6.34-rc2?

And as was pointed out, this does not look correct as you are doing it
on static attributes.

thanks,

greg k-h

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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-20  7:17           ` [PATCH] scsi: fix lockdep warning Yinghai Lu
  2010-03-20  7:57             ` Wolfram Sang
  2010-03-20 12:58             ` Greg KH
@ 2010-03-20 15:41             ` James Bottomley
  2010-03-20 19:07               ` [PATCH] driver: fix lockdep with sysfs Yinghai Lu
  2010-03-30 15:05             ` [PATCH] scsi: fix lockdep warning Ben Gamari
  3 siblings, 1 reply; 12+ messages in thread
From: James Bottomley @ 2010-03-20 15:41 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Eric W. Biederman, Greg KH, Linux Kernel Mailing List, Linux-Scsi

On Sat, 2010-03-20 at 00:17 -0700, Yinghai Lu wrote:
> Index: linux-2.6/drivers/scsi/scsi_sysfs.c
> ===================================================================
> --- linux-2.6.orig/drivers/scsi/scsi_sysfs.c
> +++ linux-2.6/drivers/scsi/scsi_sysfs.c
> @@ -907,20 +907,27 @@ int scsi_sysfs_add_sdev(struct scsi_devi
>  
>         /* create queue files, which may be writable, depending on the
> host */
>         if (sdev->host->hostt->change_queue_depth) {
> +               sysfs_bin_attr_init(&sdev_attr_queue_depth_rw);
>                 error = device_create_file(&sdev->sdev_gendev,
>                                            &sdev_attr_queue_depth_rw);
> +               sysfs_bin_attr_init(&sdev_attr_queue_ramp_up_period);
>                 error = device_create_file(&sdev->sdev_gendev,
> 
> &sdev_attr_queue_ramp_up_period);
>         }
> -       else
> +       else {
> +               sysfs_bin_attr_init(&dev_attr_queue_depth);
>                 error = device_create_file(&sdev->sdev_gendev,
> &dev_attr_queue_depth);
> +       }
>         if (error)
>                 return error;
>  
> -       if (sdev->host->hostt->change_queue_type)
> +       if (sdev->host->hostt->change_queue_type)  {
> +               sysfs_bin_attr_init(&sdev_attr_queue_type_rw);
>                 error = device_create_file(&sdev->sdev_gendev,
> &sdev_attr_queue_type_rw);
> -       else
> +       } else {
> +               sysfs_bin_attr_init(&dev_attr_queue_type);
>                 error = device_create_file(&sdev->sdev_gendev,
> &dev_attr_queue_type);
> +       }
>         if (error)
>                 return error;
>  
> @@ -935,6 +942,7 @@ int scsi_sysfs_add_sdev(struct scsi_devi
>         /* add additional host specific attributes */
>         if (sdev->host->hostt->sdev_attrs) {
>                 for (i = 0; sdev->host->hostt->sdev_attrs[i]; i++) {
> +                       sysfs_bin_attr_init(sdev->host->hostt->sdev_attrs[i]);
>                         error = device_create_file(&sdev->sdev_gendev,
>                                         sdev->host->hostt->sdev_attrs[i]);
>                         if (error)
> @@ -1060,6 +1068,7 @@ int scsi_sysfs_add_host(struct Scsi_Host
>         /* add host specific attributes */
>         if (shost->hostt->shost_attrs) {
>                 for (i = 0; shost->hostt->shost_attrs[i]; i++) {
> +                       sysfs_bin_attr_init(shost->hostt->shost_attrs[i]);
>                         error = device_create_file(&shost->shost_dev,
>                                         shost->hostt->shost_attrs[i]);
>                         if (error)


These are all clearly wrong.  The attribute in question is a device
attribute not a binary attribute.  It only actually compiles because
whoever did sysfs_bin_attr_init() has no type checking on the define and
it just so happens that struct device_attr has a member named attr as
well.

Also, none of these are dynamic attributes, so they shouldn't actually
need initialisation even for lockdep, so what went wrong?

James



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

* [PATCH] driver: fix lockdep with sysfs
  2010-03-20 15:41             ` James Bottomley
@ 2010-03-20 19:07               ` Yinghai Lu
  0 siblings, 0 replies; 12+ messages in thread
From: Yinghai Lu @ 2010-03-20 19:07 UTC (permalink / raw)
  To: James Bottomley, Greg KH
  Cc: Eric W. Biederman, Linux Kernel Mailing List, Linux-Scsi



[  135.305026] QLogic Fibre Channel HBA Driver: 8.03.02-k1
[  135.310509] qla2xxx 0000:cc:00.0: PCI INT A -> GSI 99 (level, low) -> IRQ 99
[  135.326453] qla2xxx 0000:cc:00.0: MSI-X vector count: 31
[  135.341911] qla2xxx 0000:cc:00.0: Found an ISP2532, irq 99, iobase 0xffffc9007285c000
[  135.352495]   alloc irq_desc for 146 on node 6
[  135.356272]   alloc kstat_irqs on node 6
[  135.367624] qla2xxx 0000:cc:00.0: irq 146 for MSI/MSI-X
[  135.372172]   alloc irq_desc for 147 on node 6
[  135.376164]   alloc kstat_irqs on node 6
[  135.391973] qla2xxx 0000:cc:00.0: irq 147 for MSI/MSI-X
[  135.403591] qla2xxx 0000:cc:00.0: Configuring PCI space...
[  135.413614] qla2xxx 0000:cc:00.0: setting latency timer to 64
[  135.422740] qla2xxx 0000:cc:00.0: enabling Mem-Wr-Inval
[  135.445429] qla2xxx 0000:cc:00.0: Configure NVRAM parameters...
[  135.462077] qla2xxx 0000:cc:00.0: Verifying loaded RISC code...
[  135.469113] qla2xxx 0000:cc:00.0: firmware: using built-in firmware ql2500_fw.bin
[  135.482852] qla2xxx 0000:cc:00.0: FW: Loading via request-firmware...
[  135.519818] qla2xxx 0000:cc:00.0: Allocated (64 KB) for FCE...
[  135.525475] qla2xxx 0000:cc:00.0: Allocated (64 KB) for EFT...
[  135.533345] qla2xxx 0000:cc:00.0: Allocated (1350 KB) for firmware dump...
[  135.539819] scsi0 : qla2xxx
[  135.554163] BUG: key ffff8840723fe310 not in .data!
[  135.558600] ------------[ cut here ]------------
[  135.562666] WARNING: at kernel/lockdep.c:2706 lockdep_init_map+0xf1/0x53c()
[  135.574592] Hardware name: Sun Fire x4800
[  135.576871] Modules linked in:
[  135.592605] Pid: 14368, comm: work_for_cpu Not tainted 2.6.34-rc2-tip-yh-03489-gae232d1-dirty #687
[  135.599585] Call Trace:
[  135.612279]  [<ffffffff81079c04>] warn_slowpath_common+0x7c/0x94
[  135.618090]  [<ffffffff81079c30>] warn_slowpath_null+0x14/0x16
[  135.633496]  [<ffffffff810a4715>] lockdep_init_map+0xf1/0x53c
[  135.638220]  [<ffffffff811869d0>] ? sysfs_new_dirent+0x8f/0x104
[  135.654379]  [<ffffffff81185ffc>] sysfs_add_file_mode+0x66/0xae
[  135.659672]  [<ffffffff813c7587>] ? kobject_put+0x47/0x4b
[  135.674975]  [<ffffffff81498b0f>] ? transport_add_class_device+0x0/0x39
[  135.681399]  [<ffffffff81186055>] sysfs_add_file+0x11/0x13
[  135.695045]  [<ffffffff81186114>] sysfs_create_file+0x2a/0x2c
[  135.698206]  [<ffffffff81493308>] device_create_file+0x19/0x1b
[  135.714671]  [<ffffffff81498501>] attribute_container_add_attrs+0x56/0x74
[  135.731897]  [<ffffffff81498541>] attribute_container_add_class_device+0x22/0x27
[  135.738647]  [<ffffffff81498b29>] transport_add_class_device+0x1a/0x39
[  135.754319]  [<ffffffff81498644>] attribute_container_device_trigger+0x7c/0xbc
[  135.759012]  [<ffffffff81498ab4>] transport_add_device+0x15/0x17
[  135.777621]  [<ffffffff814b169e>] scsi_sysfs_add_host+0x8c/0x9e
[  135.791587]  [<ffffffff814a79df>] scsi_add_host_with_dma+0x1c2/0x217
[  135.798047]  [<ffffffff81bb4599>] qla2x00_probe_one+0xbeb/0xe17
[  135.813384]  [<ffffffff810a5f6b>] ? trace_hardirqs_on+0xd/0xf
[  135.819473]  [<ffffffff81bfb004>] ? _raw_spin_unlock_irq+0x30/0x36
[  135.834964]  [<ffffffff81072699>] ? finish_task_switch+0x70/0xe4
[  135.839030]  [<ffffffff81bf82a4>] ? schedule+0x65f/0x72b
[  135.854065]  [<ffffffff81090c9e>] ? do_work_for_cpu+0x0/0x2a
[  135.858979]  [<ffffffff813ebaad>] local_pci_probe+0x17/0x1b
[  135.874627]  [<ffffffff81090cb6>] do_work_for_cpu+0x18/0x2a
[  135.879828]  [<ffffffff810947fc>] kthread+0x9a/0xa2
[  135.893473]  [<ffffffff810a5f33>] ? trace_hardirqs_on_caller+0x120/0x14b
[  135.897853]  [<ffffffff810349d4>] kernel_thread_helper+0x4/0x10
[  135.915221]  [<ffffffff81bfb33c>] ? restore_args+0x0/0x30
[  135.920415]  [<ffffffff81094762>] ? kthread+0x0/0xa2
[  135.934108]  [<ffffffff810349d0>] ? kernel_thread_helper+0x0/0x10
[  135.938754] ---[ end trace 0f8a5c5b26192860 ]---
[  135.955325] BUG: key ffff8840723fe348 not in .data!
[  135.957618] BUG: key ffff8840723fe380 not in .data!
[  135.972538] BUG: key ffff8840723fe3b8 not in .data!
[  135.976839] BUG: key ffff8840723fe3f0 not in .data!
[  135.992169] BUG: key ffff8840723fe428 not in .data!
[  135.995598] BUG: key ffff8840723fe460 not in .data!
[  136.001329] BUG: key ffff8840723fe498 not in .data!
[  136.015597] BUG: key ffff8840723fe4d0 not in .data!
[  136.019889] BUG: key ffff8840723fe508 not in .data!
[  136.034086] BUG: key ffff8840723fe540 not in .data!
[  136.036915] BUG: key ffff8840723fe578 not in .data!
[  136.053066] BUG: key ffff8840723fe5b0 not in .data!
[  136.058530] BUG: key ffff8840723fe5e8 not in .data!
[  136.071615] BUG: key ffff8840723fe620 not in .data!
[  136.076256] BUG: key ffff8840723fe658 not in .data!
[  136.081129] BUG: key ffff8840723fe690 not in .data!

and 

[  132.409474] Emulex LightPulse Fibre Channel SCSI driver 8.3.10
[  132.424746] Copyright(c) 2004-2009 Emulex.  All rights reserved.
[  132.430422] lpfc 0000:cd:00.0: PCI INT A -> GSI 101 (level, low) -> IRQ 101
[  132.445731] lpfc 0000:cd:00.0: setting latency timer to 64
[  132.450672] lpfc 0000:cd:00.0: enabling Mem-Wr-Inval
[  132.469272] scsi0 :  on PCI bus cd device 00 irq 101
[  132.476490] BUG: key ffff881c7b86c310 not in .data!
[  132.484102] ------------[ cut here ]------------
[  132.486701] WARNING: at kernel/lockdep.c:2706 lockdep_init_map+0xf1/0x53c()
[  132.504379] Hardware name: Sun Fire x4800
[  132.507564] Modules linked in:
[  132.509834] Pid: 7071, comm: work_for_cpu Not tainted 2.6.34-rc2-tip-yh-03489-gae232d1-dirty #687
[  132.527149] Call Trace:
[  132.541391]  [<ffffffff81079c04>] warn_slowpath_common+0x7c/0x94
[  132.544345]  [<ffffffff81079c30>] warn_slowpath_null+0x14/0x16
[  132.562047]  [<ffffffff810a4715>] lockdep_init_map+0xf1/0x53c
[  132.566212]  [<ffffffff811869d0>] ? sysfs_new_dirent+0x8f/0x104
[  132.581672]  [<ffffffff81185ffc>] sysfs_add_file_mode+0x66/0xae
[  132.585236]  [<ffffffff813c7587>] ? kobject_put+0x47/0x4b
[  132.603426]  [<ffffffff81498b0f>] ? transport_add_class_device+0x0/0x39
[  132.607886]  [<ffffffff81186055>] sysfs_add_file+0x11/0x13
[  132.623460]  [<ffffffff81186114>] sysfs_create_file+0x2a/0x2c
[  132.628466]  [<ffffffff81493308>] device_create_file+0x19/0x1b
[  132.643430]  [<ffffffff81498501>] attribute_container_add_attrs+0x56/0x74
[  132.648177]  [<ffffffff81498541>] attribute_container_add_class_device+0x22/0x27
[  132.665296]  [<ffffffff81498b29>] transport_add_class_device+0x1a/0x39
[  132.681485]  [<ffffffff81498644>] attribute_container_device_trigger+0x7c/0xbc
[  132.686590]  [<ffffffff81498ab4>] transport_add_device+0x15/0x17
[  132.702516]  [<ffffffff814b169e>] scsi_sysfs_add_host+0x8c/0x9e
[  132.708766]  [<ffffffff814a79df>] scsi_add_host_with_dma+0x1c2/0x217
[  132.724171]  [<ffffffff8158b3f0>] lpfc_create_port+0x247/0x295
[  132.740978]  [<ffffffff8158b48e>] lpfc_create_shost+0x50/0x8e
[  132.745700]  [<ffffffff81bb4fe7>] lpfc_pci_probe_one_s3+0x21f/0x48b
[  132.762194]  [<ffffffff81090c9e>] ? do_work_for_cpu+0x0/0x2a
[  132.768137]  [<ffffffff81bb5797>] lpfc_pci_probe_one+0x66/0x6d
[  132.781613]  [<ffffffff813ebaad>] local_pci_probe+0x17/0x1b
[  132.786593]  [<ffffffff81090cb6>] do_work_for_cpu+0x18/0x2a
[  132.801537]  [<ffffffff810947fc>] kthread+0x9a/0xa2
[  132.805921]  [<ffffffff810a5f33>] ? trace_hardirqs_on_caller+0x120/0x14b
[  132.822948]  [<ffffffff810349d4>] kernel_thread_helper+0x4/0x10
[  132.827937]  [<ffffffff81bfb33c>] ? restore_args+0x0/0x30
[  132.843328]  [<ffffffff81094762>] ? kthread+0x0/0xa2
[  132.845962]  [<ffffffff810349d0>] ? kernel_thread_helper+0x0/0x10
[  132.862076] ---[ end trace b22595c04061dc94 ]---
[  132.863756] BUG: key ffff881c7b86c348 not in .data!
[  132.881037] BUG: key ffff881c7b86c380 not in .data!
[  132.884181] BUG: key ffff881c7b86c3b8 not in .data!
[  132.888249] BUG: key ffff881c7b86c3f0 not in .data!
[  132.905692] BUG: key ffff881c7b86c428 not in .data!
[  132.908299] BUG: key ffff881c7b86c460 not in .data!
[  132.922920] BUG: key ffff881c7b86c498 not in .data!
[  132.928176] BUG: key ffff881c7b86c4d0 not in .data!
[  132.942182] BUG: key ffff881c7b86c508 not in .data!
[  132.946896] BUG: key ffff881c7b86c540 not in .data!
[  132.960576] BUG: key ffff881c7b86c578 not in .data!
[  132.964449] BUG: key ffff881c7b86c5b0 not in .data!
[  132.967376] BUG: key ffff881c7b86c5e8 not in .data!
[  132.983418] BUG: key ffff881c7b86c620 not in .data!

Signed-off-by: Yinghai Lu <yinghai@kernel.org>

---
 drivers/base/attribute_container.c |    1 +
 1 file changed, 1 insertion(+)

Index: linux-2.6/drivers/base/attribute_container.c
===================================================================
--- linux-2.6.orig/drivers/base/attribute_container.c
+++ linux-2.6/drivers/base/attribute_container.c
@@ -328,6 +328,7 @@ attribute_container_add_attrs(struct dev
 		return sysfs_create_group(&classdev->kobj, cont->grp);
 
 	for (i = 0; attrs[i]; i++) {
+		sysfs_attr_init(&attrs[i]->attr);
 		error = device_create_file(classdev, attrs[i]);
 		if (error)
 			return error;

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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-20  7:17           ` [PATCH] scsi: fix lockdep warning Yinghai Lu
                               ` (2 preceding siblings ...)
  2010-03-20 15:41             ` James Bottomley
@ 2010-03-30 15:05             ` Ben Gamari
  2010-03-30 17:08               ` Yinghai Lu
  2010-03-31  1:55               ` Wolfram Sang
  3 siblings, 2 replies; 12+ messages in thread
From: Ben Gamari @ 2010-03-30 15:05 UTC (permalink / raw)
  To: Yinghai Lu, Eric W. Biederman, James Bottomley, Greg KH
  Cc: Linux Kernel Mailing List, Linux-Scsi

On Sat, 20 Mar 2010 00:17:38 -0700, Yinghai Lu <yinghai@kernel.org> wrote:
> 
> with qlogic and emulex card etc.
> 
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
> 

As several others have pointed out, you appear to be call sysfs_bin_attr_init()
against statically allocated attributes. Is there an updated patchset that you've been meaning to send out?

Moreover, there are still failures in the ACPI thermal driver (at very least)
on master (9623e5a23724d09283c238960946ec6f65733afe).

- Ben


[    3.240692] BUG: key ffff88011b1a9528 not in .data!
[    3.245578] ------------[ cut here ]------------
[    3.250195] WARNING: at kernel/lockdep.c:2706 lockdep_init_map+0x125/0x140()
[    3.257229] Hardware name: Latitude D830                   
[    3.262793] Modules linked in:
[    3.265864] Pid: 1, comm: swapper Not tainted 2.6.34-rc2-ben #137
[    3.271946] Call Trace:
[    3.274397]  [<ffffffff8105a86b>] warn_slowpath_common+0x7b/0xc0
[    3.280395]  [<ffffffff8105a8c4>] warn_slowpath_null+0x14/0x20
[    3.286220]  [<ffffffff8108ea75>] lockdep_init_map+0x125/0x140
[    3.292046]  [<ffffffff811ae51f>] sysfs_add_file_mode+0x6f/0xd0
[    3.297960]  [<ffffffff8130b464>] ? snprintf+0x34/0x40
[    3.303093]  [<ffffffff811ae591>] sysfs_add_file+0x11/0x20
[    3.308570]  [<ffffffff811ae676>] sysfs_create_file+0x26/0x30
[    3.314311]  [<ffffffff813bbe99>] device_create_file+0x19/0x20
[    3.320136]  [<ffffffff8146176b>] thermal_zone_device_register+0x45b/0x860
[    3.327001]  [<ffffffff81370e45>] acpi_thermal_add+0x245/0x4e4
[    3.332827]  [<ffffffff811b0250>] ? sysfs_do_create_link+0xd0/0x170
[    3.339085]  [<ffffffff81347100>] acpi_device_probe+0x50/0x122
[    3.344909]  [<ffffffff813bee86>] driver_probe_device+0x96/0x1a0
[    3.350906]  [<ffffffff813bef90>] ? __driver_attach+0x0/0xa0
[    3.356557]  [<ffffffff813bf02b>] __driver_attach+0x9b/0xa0
[    3.362121]  [<ffffffff813bef90>] ? __driver_attach+0x0/0xa0
[    3.367773]  [<ffffffff813be2ac>] bus_for_each_dev+0x6c/0xa0
[    3.373423]  [<ffffffff813becce>] driver_attach+0x1e/0x20
[    3.378814]  [<ffffffff813be591>] bus_add_driver+0xe1/0x280
[    3.384380]  [<ffffffff813bf378>] driver_register+0x78/0x140
[    3.390031]  [<ffffffff81b2f591>] ? acpi_thermal_init+0x0/0x7b
[    3.395855]  [<ffffffff81347a70>] acpi_bus_register_driver+0x43/0x45
[    3.402199]  [<ffffffff81b2f5ea>] acpi_thermal_init+0x59/0x7b
[    3.407938]  [<ffffffff8100204c>] do_one_initcall+0x3c/0x1a0
[    3.413591]  [<ffffffff81b05757>] kernel_init+0x15a/0x1e4
[    3.418984]  [<ffffffff8100aee4>] kernel_thread_helper+0x4/0x10
[    3.424895]  [<ffffffff815bbf90>] ? restore_args+0x0/0x30
[    3.430286]  [<ffffffff81b055fd>] ? kernel_init+0x0/0x1e4
[    3.435678]  [<ffffffff8100aee0>] ? kernel_thread_helper+0x0/0x10
[    3.441765] ---[ end trace a22d306b065d4a66 ]---
[    3.446380] BUG: key ffff88011b1a9570 not in .data!


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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-30 15:05             ` [PATCH] scsi: fix lockdep warning Ben Gamari
@ 2010-03-30 17:08               ` Yinghai Lu
  2010-03-30 20:33                 ` Ben Gamari
  2010-03-31  1:55               ` Wolfram Sang
  1 sibling, 1 reply; 12+ messages in thread
From: Yinghai Lu @ 2010-03-30 17:08 UTC (permalink / raw)
  To: Ben Gamari
  Cc: Eric W. Biederman, James Bottomley, Greg KH,
	Linux Kernel Mailing List, Linux-Scsi

On 03/30/2010 08:05 AM, Ben Gamari wrote:
> On Sat, 20 Mar 2010 00:17:38 -0700, Yinghai Lu <yinghai@kernel.org> wrote:
>>
>> with qlogic and emulex card etc.
>>
>> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
>>
> 
> As several others have pointed out, you appear to be call sysfs_bin_attr_init()
> against statically allocated attributes. Is there an updated patchset that you've been meaning to send out?

not tracking it for while. it seems James had the same version in scsi-next 

> 
> Moreover, there are still failures in the ACPI thermal driver (at very least)
> on master (9623e5a23724d09283c238960946ec6f65733afe).

can you send out the trace?

Thanks

Yinghai

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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-30 17:08               ` Yinghai Lu
@ 2010-03-30 20:33                 ` Ben Gamari
  0 siblings, 0 replies; 12+ messages in thread
From: Ben Gamari @ 2010-03-30 20:33 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Eric W. Biederman, James Bottomley, Greg KH,
	Linux Kernel Mailing List, Linux-Scsi

On Tue, 30 Mar 2010 10:08:06 -0700, Yinghai Lu <yinghai@kernel.org> wrote:
> On 03/30/2010 08:05 AM, Ben Gamari wrote:
> > On Sat, 20 Mar 2010 00:17:38 -0700, Yinghai Lu <yinghai@kernel.org> wrote:
> >>
> >> with qlogic and emulex card etc.
> >>
> >> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
> >>
> > 
> > As several others have pointed out, you appear to be call sysfs_bin_attr_init()
> > against statically allocated attributes. Is there an updated patchset that you've been meaning to send out?
> 
> not tracking it for while. it seems James had the same version in scsi-next 
> 
> > 
> > Moreover, there are still failures in the ACPI thermal driver (at very least)
> > on master (9623e5a23724d09283c238960946ec6f65733afe).
> 
> can you send out the trace?
> 
I provided it at the bottom of my last message. I'll also include it below,
just in case. Thanks!

- Ben

       [    3.240692] BUG: key ffff88011b1a9528 not in .data!
       [    3.245578] ------------[ cut here ]------------
       [    3.250195] WARNING: at kernel/lockdep.c:2706 lockdep_init_map+0x125/0x140()
       [    3.257229] Hardware name: Latitude D830                   
       [    3.262793] Modules linked in:
       [    3.265864] Pid: 1, comm: swapper Not tainted 2.6.34-rc2-ben #137
       [    3.271946] Call Trace:
       [    3.274397]  [<ffffffff8105a86b>] warn_slowpath_common+0x7b/0xc0
       [    3.280395]  [<ffffffff8105a8c4>] warn_slowpath_null+0x14/0x20
       [    3.286220]  [<ffffffff8108ea75>] lockdep_init_map+0x125/0x140
       [    3.292046]  [<ffffffff811ae51f>] sysfs_add_file_mode+0x6f/0xd0
       [    3.297960]  [<ffffffff8130b464>] ? snprintf+0x34/0x40
       [    3.303093]  [<ffffffff811ae591>] sysfs_add_file+0x11/0x20
       [    3.308570]  [<ffffffff811ae676>] sysfs_create_file+0x26/0x30
       [    3.314311]  [<ffffffff813bbe99>] device_create_file+0x19/0x20
       [    3.320136]  [<ffffffff8146176b>] thermal_zone_device_register+0x45b/0x860
       [    3.327001]  [<ffffffff81370e45>] acpi_thermal_add+0x245/0x4e4
       [    3.332827]  [<ffffffff811b0250>] ? sysfs_do_create_link+0xd0/0x170
       [    3.339085]  [<ffffffff81347100>] acpi_device_probe+0x50/0x122
       [    3.344909]  [<ffffffff813bee86>] driver_probe_device+0x96/0x1a0
       [    3.350906]  [<ffffffff813bef90>] ? __driver_attach+0x0/0xa0
       [    3.356557]  [<ffffffff813bf02b>] __driver_attach+0x9b/0xa0
       [    3.362121]  [<ffffffff813bef90>] ? __driver_attach+0x0/0xa0
       [    3.367773]  [<ffffffff813be2ac>] bus_for_each_dev+0x6c/0xa0
       [    3.373423]  [<ffffffff813becce>] driver_attach+0x1e/0x20
       [    3.378814]  [<ffffffff813be591>] bus_add_driver+0xe1/0x280
       [    3.384380]  [<ffffffff813bf378>] driver_register+0x78/0x140
       [    3.390031]  [<ffffffff81b2f591>] ? acpi_thermal_init+0x0/0x7b
       [    3.395855]  [<ffffffff81347a70>] acpi_bus_register_driver+0x43/0x45
       [    3.402199]  [<ffffffff81b2f5ea>] acpi_thermal_init+0x59/0x7b
       [    3.407938]  [<ffffffff8100204c>] do_one_initcall+0x3c/0x1a0
       [    3.413591]  [<ffffffff81b05757>] kernel_init+0x15a/0x1e4
       [    3.418984]  [<ffffffff8100aee4>] kernel_thread_helper+0x4/0x10
       [    3.424895]  [<ffffffff815bbf90>] ? restore_args+0x0/0x30
       [    3.430286]  [<ffffffff81b055fd>] ? kernel_init+0x0/0x1e4
       [    3.435678]  [<ffffffff8100aee0>] ? kernel_thread_helper+0x0/0x10
       [    3.441765] ---[ end trace a22d306b065d4a66 ]---
       [    3.446380] BUG: key ffff88011b1a9570 not in .data!

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

* Re: [PATCH] scsi: fix lockdep warning
  2010-03-30 15:05             ` [PATCH] scsi: fix lockdep warning Ben Gamari
  2010-03-30 17:08               ` Yinghai Lu
@ 2010-03-31  1:55               ` Wolfram Sang
  1 sibling, 0 replies; 12+ messages in thread
From: Wolfram Sang @ 2010-03-31  1:55 UTC (permalink / raw)
  To: Ben Gamari
  Cc: Yinghai Lu, Eric W. Biederman, James Bottomley, Greg KH,
	Linux Kernel Mailing List, Linux-Scsi

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

> Moreover, there are still failures in the ACPI thermal driver (at very least)
> on master (9623e5a23724d09283c238960946ec6f65733afe).

https://patchwork.kernel.org/patch/87436/
(or https://bugzilla.kernel.org/show_bug.cgi?id=15548)

Regards,

   Wolfram

-- 
Pengutronix e.K.                           | Wolfram Sang                |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

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

end of thread, other threads:[~2010-03-31  1:55 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <a4423d671003081547v5c955d58t248db945c06d2a7f@mail.gmail.com>
     [not found] ` <86802c441003081612r2f44efd6n9664b4b7c98a636a@mail.gmail.com>
     [not found]   ` <m1d3zel4b4.fsf@fess.ebiederm.org>
     [not found]     ` <4B95F37E.6060309@kernel.org>
     [not found]       ` <m14okqnczd.fsf@fess.ebiederm.org>
     [not found]         ` <4B99A6F0.4080203@kernel.org>
     [not found]           ` <4B9B0868.7080807@kernel.org>
2010-03-13  4:46             ` 2.6.34-rc1: ACPI: BUG: key f71f0168 not in .data! James Bottomley
2010-03-13  4:58               ` Eric W. Biederman
2010-03-13  5:13                 ` Matthew Wilcox
2010-03-20  7:17           ` [PATCH] scsi: fix lockdep warning Yinghai Lu
2010-03-20  7:57             ` Wolfram Sang
2010-03-20 12:58             ` Greg KH
2010-03-20 15:41             ` James Bottomley
2010-03-20 19:07               ` [PATCH] driver: fix lockdep with sysfs Yinghai Lu
2010-03-30 15:05             ` [PATCH] scsi: fix lockdep warning Ben Gamari
2010-03-30 17:08               ` Yinghai Lu
2010-03-30 20:33                 ` Ben Gamari
2010-03-31  1:55               ` Wolfram Sang

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).