RE: [patch for 2.6.29? 2/2] scsi: mpt: suppress debugobjects warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It is a clean patch. There is not harm to ack it, but since I have already submitted code changes to upstream which have replaced "kernel timer" by "completion queue.", I will suggest to wait for next driver version.

Init_timer() function will not be called from MPT fusion driver in next version

Next available upstream version will not have this slowpath warning.

- Kashyap

-----Original Message-----
From: linux-scsi-owner@xxxxxxxxxxxxxxx [mailto:linux-scsi-owner@xxxxxxxxxxxxxxx] On Behalf Of Andrew Morton
Sent: Tuesday, April 21, 2009 3:25 AM
To: James.Bottomley@xxxxxxxxxxxxxxxxxxxxx; linux-scsi@xxxxxxxxxxxxxxx; eparis@xxxxxxxxxxxxxx; Moore, Eric; tglx@xxxxxxxxxxxxx
Subject: Re: [patch for 2.6.29? 2/2] scsi: mpt: suppress debugobjects warning

On Wed, 04 Mar 2009 12:12:18 -0800
akpm@xxxxxxxxxxxxxxxxxxxx wrote:

> From: "Eric Paris" <eparis@xxxxxxxxxxxxxx>
> 
> ODEBUG: object is on stack, but not annotated
> ------------[ cut here ]------------
> WARNING: at lib/debugobjects.c:253 __debug_object_init+0x1f3/0x276()
> Hardware name: VMware Virtual Platform
> Modules linked in: mptspi(+) mptscsih mptbase scsi_transport_spi ext3 jbd mbcache
> Pid: 540, comm: insmod Not tainted 2.6.28-mm1 #2
> Call Trace:
>  [<c042c51c>] warn_slowpath+0x74/0x8a
>  [<c0469600>] ? start_critical_timing+0x96/0xb7
>  [<c060c8ea>] ? _spin_unlock_irqrestore+0x2f/0x3c
>  [<c0446fad>] ? trace_hardirqs_off_caller+0x18/0xaf
>  [<c044704f>] ? trace_hardirqs_off+0xb/0xd
>  [<c060c8ea>] ? _spin_unlock_irqrestore+0x2f/0x3c
>  [<c042cb84>] ? release_console_sem+0x1a5/0x1ad
>  [<c05013e6>] __debug_object_init+0x1f3/0x276
>  [<c0501494>] debug_object_init+0x13/0x17
>  [<c0433c56>] init_timer+0x10/0x1a
>  [<e08e5b54>] mpt_config+0x1c1/0x2b7 [mptbase]
>  [<e08e3b82>] ? kmalloc+0x8/0xa [mptbase]
>  [<e08e3b82>] ? kmalloc+0x8/0xa [mptbase]
>  [<e08e6fa2>] mpt_do_ioc_recovery+0x950/0x1212 [mptbase]
>  [<c04496c2>] ? __lock_acquire+0xa69/0xacc
>  [<c060c8f1>] ? _spin_unlock_irqrestore+0x36/0x3c
>  [<c060c3af>] ? _spin_unlock_irq+0x22/0x26
>  [<c04f2d8b>] ? string+0x2b/0x76
>  [<c04f310e>] ? vsnprintf+0x338/0x7b3
>  [<c04496c2>] ? __lock_acquire+0xa69/0xacc
>  [<c060c8ea>] ? _spin_unlock_irqrestore+0x2f/0x3c
>  [<c04496c2>] ? __lock_acquire+0xa69/0xacc
>  [<c044897d>] ? debug_check_no_locks_freed+0xeb/0x105
>  [<c060c8f1>] ? _spin_unlock_irqrestore+0x36/0x3c
>  [<c04488bc>] ? debug_check_no_locks_freed+0x2a/0x105
>  [<c0446b8c>] ? lock_release_holdtime+0x43/0x48
>  [<c043f742>] ? up_read+0x16/0x29
>  [<c05076f8>] ? pci_get_slot+0x66/0x72
>  [<e08e89ca>] mpt_attach+0x881/0x9b1 [mptbase]
>  [<e091c8e5>] mptspi_probe+0x11/0x354 [mptspi]
> 
> Noticing that every caller of mpt_config has its CONFIGPARMS struct
> declared on the stack and thus the &pCfg->timer is always on the stack I
> changed init_timer() to init_timer_on_stack() and it seems to have shut
> up.....
> 
> Cc: "Moore, Eric Dean" <Eric.Moore@xxxxxxxx>
> Cc: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> ---
> 
>  drivers/message/fusion/mptbase.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff -puN drivers/message/fusion/mptbase.c~scsi-mpt-suppress-debugobjects-warning drivers/message/fusion/mptbase.c
> --- a/drivers/message/fusion/mptbase.c~scsi-mpt-suppress-debugobjects-warning
> +++ a/drivers/message/fusion/mptbase.c
> @@ -5934,7 +5934,7 @@ mpt_config(MPT_ADAPTER *ioc, CONFIGPARMS
>  
>  	/* Initalize the timer
>  	 */
> -	init_timer(&pCfg->timer);
> +	init_timer_on_stack(&pCfg->timer);
>  	pCfg->timer.data = (unsigned long) ioc;
>  	pCfg->timer.function = mpt_timer_expired;
>  	pCfg->wait_done = 0;

I sent this twice, both times marked "for 2.6.29".  Both times it was
ignored and now people (including myself) are spending time re-solving
and already-solved problem (eg:
http://bugzilla.kernel.org/show_bug.cgi?id=13133).

I'll merge this patch, tagged for a 2.6.29.x backport.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux