[SOLVED] Re: Shutdown problem with an USB memory stick as ZFS cache device

Ronald Klop ronald-freebsd8 at klop.yi.org
Wed Jul 24 11:19:46 UTC 2013


On Thu, 18 Jul 2013 09:52:13 +0200, Maurizio Vairani  
<maurizio.vairani at cloverinformatica.it> wrote:

> On 17/07/2013 17:29, Julian H. Stacey wrote:
>> Maurizio Vairani wrote:
>>> On 17/07/2013 11:50, Ronald Klop wrote:
>>>> On Wed, 17 Jul 2013 10:27:09 +0200, Maurizio Vairani
>>>> <maurizio.vairani at cloverinformatica.it>  wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>>
>>>>> on a Compaq Presario laptop I have just installed the latest stable
>>>>>
>>>>>
>>>>> #uname -a
>>>>>
>>>>> FreeBSD presario 9.2-PRERELEASE FreeBSD 9.2-PRERELEASE #0: Tue Jul 16
>>>>> 16:32:39 CEST 2013     root at presario:/usr/obj/usr/src/sys/GENERIC   
>>>>> amd64
>>>>>
>>>>>
>>>>> For speed up the compilation I have added to the pool, tank0,  a
>>>>> SanDisk memory stick as cache device with the command:
>>>>>
>>>>>
>>>>> # zpool add tank0 cache /dev/da0
>>>>>
>>>>>
>>>>> But when I shutdown the laptop the process will halt with this screen
>>>>> shot:
>>>>>
>>>>>
>>>>> http://www.dump-it.fr/freebsd-screen-shot/2f9169f18c7c77e52e873580f9c2d4bf.jpg.html
>>>>>
>>>>>
>>>>>
>>>>> and I need to press the power button for more than 4 seconds to
>>>>> switch off the laptop.
>>>>>
>>>>> The problem is always reproducible.
>>>> Does sysctl hw.usb.no_shutdown_wait=1 help?
>>>>
>>>> Ronald.
>>> Thank you Ronald it works !
>>>
>>> In /boot/loader.conf added the line
>>> hw.usb.no_shutdown_wait=1
>>>
>>> Maurizio
>> I wonder (from ignorance as I dont use ZFS yet),
>> if that merely masks the symptom or cures the fault ?
>>
>> Presumably one should use a ZFS command to disassociate whatever
>> might have the cache open ?  (in case something might need to be
>> written out from cache, if it was a writeable cache ?)
>>
>> I too had a USB shutdown problem (non ZFS, now solved)&  several people
>> made useful comments on shutdown scripts etc, so I'm cross referencing:
>>
>> http://lists.freebsd.org/pipermail/freebsd-mobile/2013-July/012803.html
>>
>> Cheers,
>> Julian
> Probably it masks the symptom. Andriy Gapon hypothesizes a bug in the  
> ZFS clean up code:
> http://lists.freebsd.org/pipermail/freebsd-fs/2013-July/017857.html
>
> Surely one can use a startup script with the command:
> zpool add tank0 cache /dev/da0
> and a shutdown script with:
> zpool remove tank0 /dev/da0
> but this mask the symptom too.
>
> I prefer the Ronald solution because:
> - is simpler: it adds only one line (hw.usb.no_shutdown_wait=1) to one  
> file (/boot/loader.conf).
> - is fastest: the zpool add/remove commands take time and  
> “hw.usb.no_shutdown_wait=1” in /boot/loader.conf speeds up the shutdown  
> process.
> - is cleaner: the zpool add/remove commands pair will fill up the tank0  
> pool history.
>
> Regards
> Maurizio

Keep an eye on this commit when it is merged to 9-stable.
http://svnweb.freebsd.org/changeset/base/253606
It might be the fix of the problem.

Ronald.


More information about the freebsd-fs mailing list