hrev52690 adds 1 changeset to branch 'master'
old head: 30d69e3f5e273ec95ab4e8715bf6316b00965a38
new head: b5ccfd350d01cf954fd4b3d71f81ccba87aa4421
overview:
https://git.haiku-os.org/haiku/log/?qt=range&q=b5ccfd350d01+%5E30d69e3f5e27
----------------------------------------------------------------------------
b5ccfd350d01: ntfs: Actually return errors from fs_mount.
This should fix the "mount succeeded but ops is NULL!" panic that
occurs on auto-mounting read-only NTFS disks on boot.
[ Augustin Cavalier <waddlesplash@xxxxxxxxx> ]
----------------------------------------------------------------------------
Revision: hrev52690
Commit: b5ccfd350d01cf954fd4b3d71f81ccba87aa4421
URL: https://git.haiku-os.org/haiku/commit/?id=b5ccfd350d01
Author: Augustin Cavalier <waddlesplash@xxxxxxxxx>
Date: Wed Dec 26 22:30:28 2018 UTC
----------------------------------------------------------------------------
1 file changed, 3 insertions(+), 11 deletions(-)
src/add-ons/kernel/file_systems/ntfs/fs_func.c | 14 +++-----------
----------------------------------------------------------------------------
diff --git a/src/add-ons/kernel/file_systems/ntfs/fs_func.c
b/src/add-ons/kernel/file_systems/ntfs/fs_func.c
index 0977efb6b4..30604052d6 100644
--- a/src/add-ons/kernel/file_systems/ntfs/fs_func.c
+++ b/src/add-ons/kernel/file_systems/ntfs/fs_func.c
@@ -355,10 +355,8 @@ fs_mount(fs_volume *_vol, const char *device, uint32
flags, const char *args,
TRACE("fs_mount - ENTER\n");
ns = ntfs_malloc(sizeof(nspace));
- if (!ns) {
- result = ENOMEM;
- goto exit;
- }
+ if (ns == NULL)
+ return ENOMEM;
*ns = (nspace) {
.state = NF_FreeClustersOutdate | NF_FreeMFTOutdate,
@@ -444,7 +442,6 @@ fs_mount(fs_volume *_vol, const char *device, uint32 flags,
const char *args,
if (result != B_NO_ERROR) {
free(ns);
result = EINVAL;
- goto exit;
} else {
result = B_NO_ERROR;
ntfs_mark_free_space_outdated(ns);
@@ -454,12 +451,7 @@ fs_mount(fs_volume *_vol, const char *device, uint32
flags, const char *args,
} else
free(ns);
- TRACE("fs_mount - EXIT\n");
- return B_OK;
-
-exit:
- ERROR("fs_mount - EXIT, result code is %s\n", strerror(result));
-
+ TRACE("fs_mount - EXIT, result code is %s\n", strerror(result));
return result;
}