diff --git a/lib/libufs/sblock.c b/lib/libufs/sblock.c index 5242a6db88db..29ff258b6ebf 100644 --- a/lib/libufs/sblock.c +++ b/lib/libufs/sblock.c @@ -96,9 +96,16 @@ int sbwrite(struct uufsd *disk, int all) { struct fs *fs; + int rv; ERROR(disk, NULL); + rv = ufs_disk_write(disk); + if (rv == -1) { + ERROR(disk, "failed to open disk for writing"); + return (-1); + } + fs = &disk->d_fs; if ((errno = sbput(disk->d_fd, fs, all ? fs->fs_ncg : 0)) != 0) { switch (errno) {