| From 3a987b88a42593875f6345188ca33731c7df728c Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?Marc=20Aur=C3=A8le=20La=20France?= <tsi@tuyoix.net> |
| Date: Sat, 10 Aug 2024 13:25:27 -0600 |
| Subject: debugfs show actual source in /proc/mounts |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Marc Aurèle La France <tsi@tuyoix.net> |
| |
| commit 3a987b88a42593875f6345188ca33731c7df728c upstream. |
| |
| After its conversion to the new mount API, debugfs displays "none" in |
| /proc/mounts instead of the actual source. Fix this by recognising its |
| "source" mount option. |
| |
| Signed-off-by: Marc Aurèle La France <tsi@tuyoix.net> |
| Link: https://lore.kernel.org/r/e439fae2-01da-234b-75b9-2a7951671e27@tuyoix.net |
| Fixes: a20971c18752 ("vfs: Convert debugfs to use the new mount API") |
| Cc: stable@vger.kernel.org # 6.10.x: 49abee5991e1: debugfs: Convert to new uid/gid option parsing helpers |
| Signed-off-by: Christian Brauner <brauner@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| fs/debugfs/inode.c | 8 ++++++++ |
| 1 file changed, 8 insertions(+) |
| |
| --- a/fs/debugfs/inode.c |
| +++ b/fs/debugfs/inode.c |
| @@ -89,12 +89,14 @@ enum { |
| Opt_uid, |
| Opt_gid, |
| Opt_mode, |
| + Opt_source, |
| }; |
| |
| static const struct fs_parameter_spec debugfs_param_specs[] = { |
| fsparam_gid ("gid", Opt_gid), |
| fsparam_u32oct ("mode", Opt_mode), |
| fsparam_uid ("uid", Opt_uid), |
| + fsparam_string ("source", Opt_source), |
| {} |
| }; |
| |
| @@ -126,6 +128,12 @@ static int debugfs_parse_param(struct fs |
| case Opt_mode: |
| opts->mode = result.uint_32 & S_IALLUGO; |
| break; |
| + case Opt_source: |
| + if (fc->source) |
| + return invalfc(fc, "Multiple sources specified"); |
| + fc->source = param->string; |
| + param->string = NULL; |
| + break; |
| /* |
| * We might like to report bad mount options here; |
| * but traditionally debugfs has ignored all mount options |