Check if msharefs is mounted before performing any msharefs operations to avoid inadvertent NULL pointer dereferences. Signed-off-by: Khalid Aziz <khalid.aziz@xxxxxxxxxx> --- mm/mshare.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/mm/mshare.c b/mm/mshare.c index 85ccb7f02f33..cd2f7ad24d9d 100644 --- a/mm/mshare.c +++ b/mm/mshare.c @@ -176,6 +176,13 @@ SYSCALL_DEFINE5(mshare, const char __user *, name, unsigned long, addr, struct qstr namestr; int err = PTR_ERR(fname); + /* + * Is msharefs mounted? TODO: If not mounted, return error + * or automount? + */ + if (msharefs_sb == NULL) + return -ENOENT; + /* * Address range being shared must be aligned to pgdir * boundary and its size must be a multiple of pgdir size @@ -260,6 +267,9 @@ SYSCALL_DEFINE1(mshare_unlink, const char *, name) struct mshare_data *info; struct qstr namestr; + if (msharefs_sb == NULL) + return -ENOENT; + if (IS_ERR(fname)) goto err_out; -- 2.32.0