From: Michael Reed <mdr@sgi.com>
To: dougg@torque.net
Cc: Arjan van de Ven <arjan@infradead.org>,
"Moore, Eric" <Eric.Moore@lsil.com>,
James Smart <James.Smart@Emulex.Com>,
linux-scsi@vger.kernel.org
Subject: Re: fibre channel sync cache question
Date: Wed, 26 Jul 2006 13:20:25 -0500 [thread overview]
Message-ID: <44C7B269.4070505@sgi.com> (raw)
In-Reply-To: <44C6E6C7.8090606@torque.net>
Douglas Gilbert wrote:
> Arjan van de Ven wrote:
>> On Tue, 2006-07-25 at 16:28 -0600, Moore, Eric wrote:
>>> -- Tuesday, July 25, 2006 4:22 PM, Michael Reed wrote:
>>>> Using fibre channel disks, I've noticed that when the system shuts down
>>>> that the sd_driver issues a sync cache command to the device. I've
>>>> also
>>>> noticed that when the lldd is removed via rmmod that this sync cache is
>>>> not executed. I would think that the sync cache would be desirable
>>>> under this circumstance.
>>>>
>>> This is not handled from sg path as well. Meaning if you
>>> use sdparm, and enable the caching page WCE bit, then reboot,
>>> there is no SYNC cache issued from above.
>>> We handle this in fusion drivers due to short coming from above.
>>
>>
>> Hi,
>>
>> that sounds sooo like the wrong approach... wouldn't it be better to fix
>> sg instead?
>
> Uh? sg is just a pass through. As such it can subvert
> policy decisions of the kernel. That isn't always a
> bad thing :-)
>
> The design flaw is any driver that tries to maintain a
> state variable associated with a device (logical unit)
> and can't cope with situations when it gets out of sync.
> If you managed to neuter the pass through, how would you
> cope with another initiator?
Perhaps the best policy for sd is to assume that WCE is enabled
and just issue the sync cache.
--
I'm wondering about the policy of issuing a sync cache. There
are target removal paths which result in it not being issued.
So, the real question is: when a scsi target is removed, is it
policy that sync cache will be issued?
In fibre channel, here are two code paths in which sync cache
is not issued.
- removal of LLDD (rmmod)
- removal of target via sysfs device/delete
In a closer look at the target removal via sysfs device/delete,
I observe that portions of the sysfs fc_remote_ports/rport-*
remain in place.
Do we need to tie the device/delete to the transport?
Can of worms? Close eyes, run screaming?
Mike
>
> Doug Gilbert
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
next prev parent reply other threads:[~2006-07-26 18:20 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-25 22:28 fibre channel sync cache question Moore, Eric
2006-07-25 22:39 ` Arjan van de Ven
2006-07-26 3:51 ` Douglas Gilbert
2006-07-26 18:20 ` Michael Reed [this message]
2006-07-26 18:40 ` Michael Reed
2006-07-26 20:22 ` Stefan Richter
-- strict thread matches above, loose matches on Subject: below --
2006-07-25 22:51 Moore, Eric
2006-07-25 22:22 Michael Reed
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=44C7B269.4070505@sgi.com \
--to=mdr@sgi.com \
--cc=Eric.Moore@lsil.com \
--cc=James.Smart@Emulex.Com \
--cc=arjan@infradead.org \
--cc=dougg@torque.net \
--cc=linux-scsi@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.