Current-Users archive

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

Re: [PATCH] control which tmpfs get unmounted at swapoff



On Sun, 20 Mar 2016 07:02:26 +0700 Robert Elz <kre%munnari.OZ.AU@localhost> wrote:

>     Date:        Sat, 19 Mar 2016 21:37:03 +0100
>     From:        "Ian D. Leroux" <idleroux%fastmail.fm@localhost>
>     Message-ID:  <20160319213703.0ed2bfa10139f9c700a4b161%fastmail.fm@localhost>
> 
>   | Surely there
>   | has to be a better, less brittle way of getting the required
>   | information.  Can anyone give me a hint as to what it might be?
> 
> try
> 	eval set -- $( mount -t tmpfs | while read -r line; do
>                       fs=${line#tmpfs on }; fs=${fs% type tmpfs*};
>                       echo "'${fs}'"; done )
> 
> after which "$@" should be the tmpfs moounted filesystems, even if
> they contain odd characters (including spaces).

Thanks for the example code, which helped me identify and clear up a
bunch of my misconceptions about the Bourne shell's parsing behaviour.
The latest set of patches are attached.  This version uses no magic
values: $swapoff_umount is used to choose between auto or manual
selection of the filesystems to unmount, and $swapoff_umount_fs is used
for the list of mount points when manually specified.  I've tested that
the auto-selection is robust against spaces and tabs in filenames, and
I expect it to handle odd characters other than single-quote.  In the
pathological case where a path to a tmpfs mount point contains a
single-quote character, it could be specified manually with appropriate
escaping.

Further suggestions?

--
IDL

Attachment: manpage.patch
Description: Binary data

Attachment: rc.conf.patch
Description: Binary data

Attachment: swap1.patch
Description: Binary data



Home | Main Index | Thread Index | Old Index