From: Boaz Harrosh <bharrosh@panasas.com>
To: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: "Sven Köhler" <skoehler@upb.de>,
"Christoph Hellwig" <hch@infradead.org>,
"Jeff Garzik" <jeff@garzik.org>,
linux-scsi <linux-scsi@vger.kernel.org>,
linux-kernel@vger.kernel.org,
"Joerg Dorchain" <joerg@dorchain.net>,
"Jon Chelton" <jchelton@ffpglobal.com>,
"Stefan Priebe - allied internet ag"
<s.priebe@allied-internet.ag>
Subject: Re: [BUGFIX 2/2] gdth: bugfix for the Timer at exit crash
Date: Thu, 14 Feb 2008 12:49:33 +0200 [thread overview]
Message-ID: <47B41CBD.8040701@panasas.com> (raw)
In-Reply-To: <1202924198.3109.52.camel@localhost.localdomain>
On Wed, Feb 13 2008 at 19:36 +0200, James Bottomley <James.Bottomley@HansenPartnership.com> wrote:
<snip>
>> ---
>> From: Boaz Harrosh <bharrosh@panasas.com>
>> Subject: [PATCH] gdth: bugfix for the at-exit problems
>>
>> gdth_exit would first remove all cards then stop the timer
>> and would not sync with the timer function. This caused a crash
>> in gdth_timer() when module was unloaded.
>> So del_timer_sync the timer before we delete the cards.
>>
>> also the reboot notifier function would crash. So unify
>> the exit and halt functions with a gdth_shutdown() that's
>> called by both.
>>
>> Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
>> ---
<snip>
>> +static struct notifier_block gdth_notifier = {
>> + gdth_halt, NULL, 0
>> +};
>> +
>> +bool gdth_shutdown_done;
>
right forgot the static. But I use it in gdth_init(), so it
must be external. Unless you promise me that gdth_init() will
never ever be called after a call to shutdown.
Any way the hot-plug patch changes all that. This is only
for 2.6.24 bugfixs.
> Static police alert! Just make it static and move it into
> gdth_shutdown()
>
>> +static void gdth_shutdown()
>> +{
>> + gdth_ha_str *ha;
>> + if (gdth_shutdown_done)
>> + return;
>> +
>> + gdth_shutdown_done = true;
>> + unregister_chrdev(major,"gdth");
>> + unregister_reboot_notifier(&gdth_notifier);
>
> I'm not sure you can do this, aren't reboot notifiers called with the
> rwsem held? In which case the unregister which also takes the rwsem
> will hang the system.
>
humm, can't remove a notifier from within the notifier. Thanks James for
the catch, it's what happens when you don't test your own patches.
I have moved unregister_reboot_notifier to gdth_exit.
> James
>
Will send a new version for review. Please note that this is a bugfix patch
on top of 2.6.24. It is not needed for Jeff's hot-plug path.
There will be one more bugfix patch for a crash at the user-mode ioctl code.
Boaz
next prev parent reply other threads:[~2008-02-14 10:49 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <fnqka6$l46$1@ger.gmane.org>
2008-01-31 10:08 ` [BUG?] GDTH driver not working after upgrade to 2.6.24 Boaz Harrosh
2008-01-31 11:07 ` Sven Köhler
2008-01-31 12:35 ` Boaz Harrosh
2008-01-31 16:39 ` Jan Engelhardt
2008-01-31 16:52 ` Boaz Harrosh
2008-02-12 17:30 ` [BUGFIXES 0/2] gdth: fix 2.6.24 driver breakage Boaz Harrosh
2008-02-12 17:35 ` [BUGFIX 1/2] gdth: scan for scsi devices Boaz Harrosh
2008-02-12 18:05 ` Christoph Hellwig
2008-02-12 17:40 ` [BUGFIX 2/2] gdth: bugfix for the Timer at exit crash Boaz Harrosh
2008-02-13 7:06 ` Stefan Priebe - allied internet ag
2008-02-13 9:03 ` Boaz Harrosh
2008-02-13 19:38 ` Jan Engelhardt
2008-02-14 15:58 ` Boaz Harrosh
2008-02-13 10:48 ` Boaz Harrosh
2008-02-13 15:44 ` James Bottomley
2008-02-13 15:54 ` Boaz Harrosh
2008-02-13 16:33 ` Boaz Harrosh
2008-02-13 16:35 ` [PATCH ver2] gdth: bugfix for the at-exit problems Boaz Harrosh
2008-02-13 16:45 ` [BUGFIX 2/2] gdth: bugfix for the Timer at exit crash James Bottomley
2008-02-13 16:50 ` Boaz Harrosh
2008-02-13 17:03 ` James Bottomley
2008-02-13 17:12 ` Boaz Harrosh
2008-02-13 17:36 ` James Bottomley
2008-02-14 10:49 ` Boaz Harrosh [this message]
2008-02-14 11:58 ` [PATCH] gdth: bugfix for the at-exit problems Boaz Harrosh
2008-02-14 16:10 ` James Bottomley
2008-02-14 16:18 ` Boaz Harrosh
2008-02-13 17:18 ` [BUGFIX 2/2] gdth: bugfix for the Timer at exit crash Boaz Harrosh
2008-02-13 17:33 ` James Bottomley
2008-02-14 6:51 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47B41CBD.8040701@panasas.com \
--to=bharrosh@panasas.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=hch@infradead.org \
--cc=jchelton@ffpglobal.com \
--cc=jeff@garzik.org \
--cc=joerg@dorchain.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=s.priebe@allied-internet.ag \
--cc=skoehler@upb.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).