#
7196c146 |
| 17-Jul-2023 |
semarie <semarie@openbsd.org> |
vfs: drop several macros hidding eopnotsupp
make it obvious in the vfsops assignment that an op isnt supported.
from thib4711 at mailbox dot org ok claudio@
|
#
4b515238 |
| 12-Aug-2022 |
visa <visa@openbsd.org> |
Put more struct vnode fields under splbio().
Buffer cache related struct vnode fields can be accessed in interrupt context. Be more consistent with the use of splbio().
OK mpi@
|
#
5970a935 |
| 13-Nov-2021 |
kn <kn@openbsd.org> |
Use long filenames by default on FAT filesystems
These days, 8.3 filenames are often a problem, filesystems containing firmware with long names must not truncate them -- it's also a sane default as
Use long filenames by default on FAT filesystems
These days, 8.3 filenames are often a problem, filesystems containing firmware with long names must not truncate them -- it's also a sane default as portable file system between OSes, anyway.
Altough undocumented in mount_msdos(8), the default for FAT32 already is to use long filenames: ever since its import from NetBSD in 1998.
Previously, mount_msdos would ignore long filenames and default to short filenames unless a flag was used or long ones were found on the filesystem prior to mounting it.
Just always mount with support for long filenames (unless `-s' is used).
As various install media use FAT filesystems, adjust the remaining ones to also pass explicit mount option reflecting the previous default.
OK deraadt
show more ...
|
#
c34741d6 |
| 10-Aug-2020 |
jsg <jsg@openbsd.org> |
consistently return EINVAL on invalid BPB
reverts changes from msdosfs_vfsops.c rev 1.7
Prompted by a patch from John Carmack to add an an error path when exFAT is detected on mount to give a more
consistently return EINVAL on invalid BPB
reverts changes from msdosfs_vfsops.c rev 1.7
Prompted by a patch from John Carmack to add an an error path when exFAT is detected on mount to give a more helpful error message. Returning EINVAL in the existing sanity checks will make mount_msdos(8) print "not an MSDOS filesystem" when attempting to mount exFAT and matches historic and documented behaviour.
ok kn@
show more ...
|
#
42f54f89 |
| 24-Jan-2020 |
tedu <tedu@openbsd.org> |
remove a notyet that remains more not than yet after 25 years. ok krw
|
#
41f642fc |
| 26-Dec-2019 |
bluhm <bluhm@openbsd.org> |
Convert struct vfsops initializer to C99 style. OK visa@
|
#
a8d7c3be |
| 25-Jul-2019 |
cheloha <cheloha@openbsd.org> |
vinvalbuf(9): tlseep -> tsleep_nsec(9); ok millert@
|
#
08107a0b |
| 27-May-2018 |
visa <visa@openbsd.org> |
Drop unnecessary `p' parameter from vget(9).
OK mpi@
|
#
6e880534 |
| 02-May-2018 |
visa <visa@openbsd.org> |
Remove proc from the parameters of vn_lock(). The parameter is unnecessary because curproc always does the locking.
OK mpi@
|
#
36bb23f1 |
| 28-Apr-2018 |
visa <visa@openbsd.org> |
Clean up the parameters of VOP_LOCK() and VOP_UNLOCK(). It is always curproc that does the locking or unlocking, so the proc parameter is pointless and can be dropped.
OK mpi@, deraadt@
|
#
976e9839 |
| 10-Feb-2018 |
deraadt <deraadt@openbsd.org> |
Syncronize filesystems to disk when suspending. Each mountpoint's vnodes are pushed to disk. Dangling vnodes (unlinked files still in use) and vnodes undergoing change by long-running syscalls are
Syncronize filesystems to disk when suspending. Each mountpoint's vnodes are pushed to disk. Dangling vnodes (unlinked files still in use) and vnodes undergoing change by long-running syscalls are identified -- and such filesystems are marked dirty on-disk while we are suspended (in case power is lost, a fsck will be required). Filesystems without dangling or busy vnodes are marked clean, resulting in faster boots following "battery died" circumstances. Tested by numerous developers, thanks for the feedback.
show more ...
|
#
c0cd3489 |
| 30-Dec-2017 |
guenther <guenther@openbsd.org> |
Don't pull in <sys/file.h> just to get fcntl.h
ok deraadt@ krw@
|
#
7efda1a1 |
| 11-Dec-2017 |
deraadt <deraadt@openbsd.org> |
In uvm Chuck decided backing store would not be allocated proactively for blocks re-fetchable from the filesystem. However at reboot time, filesystems are unmounted, and since processes lack backing
In uvm Chuck decided backing store would not be allocated proactively for blocks re-fetchable from the filesystem. However at reboot time, filesystems are unmounted, and since processes lack backing store they are killed. Since the scheduler is still running, in some cases init is killed... which drops us to ddb [noted by bluhm]. Solution is to convert filesystems to read-only [proposed by kettenis]. The tale follows: sys_reboot() should pass proc * to MD boot() to vfs_shutdown() which completes current IO with vfs_busy VB_WRITE|VB_WAIT, then calls VFS_MOUNT() with MNT_UPDATE | MNT_RDONLY, soon teaching us that *fs_mount() calls a copyin() late... so store the sizes in vfsconflist[] and move the copyin() to sys_mount()... and notice nfs_mount copyin() is size-variant, so kill legacy struct nfs_args3. Next we learn ffs_mount()'s MNT_UPDATE code is sharp and rusty especially wrt softdep, so fix some bugs adn add ~MNT_SOFTDEP to the downgrade. Some vnodes need a little more help, so tie them to &dead_vnops.
ffs_mount calling DIOCCACHESYNC is causing a bit of grief still but this issue is seperate and will be dealt with in time. couple hundred reboots by bluhm and myself, advice from guenther and others at the hut
show more ...
|
#
a34a8c9c |
| 29-May-2017 |
sf <sf@openbsd.org> |
msdosfs & ffs: flush cache if updating mount from r/w to r/o
ok deraadt@
|
#
ba4520cc |
| 10-Oct-2016 |
bluhm <bluhm@openbsd.org> |
Rename BIOS parameter block field from bsPBP to bsBPB. This typo has been fixed in FreeBSD in 2002. No binary change. From Alexander von Gernler; OK krw@
|
#
0aa71678 |
| 09-Oct-2016 |
bluhm <bluhm@openbsd.org> |
Do not check the SecPerTrack field of the BPB when mounting a MSDOS file system. In modern images the field is not set properly and the value is not used anyway. FreeBSD has removed the check alrea
Do not check the SecPerTrack field of the BPB when mounting a MSDOS file system. In modern images the field is not set properly and the value is not used anyway. FreeBSD has removed the check already in 2008. From Alexander von Gernler; OK krw@
show more ...
|
#
14151ecc |
| 28-Sep-2016 |
jca <jca@openbsd.org> |
Kill empty ifdef; ok fcambus@
|
#
685efd6e |
| 07-Sep-2016 |
natano <natano@openbsd.org> |
Remove usermount remnants. ok tedu
|
#
41e0c475 |
| 13-Aug-2016 |
guenther <guenther@openbsd.org> |
Eliminate pointless casts to qaddr_t of a value being assigned to a void*
ok kettenis@ krw@ natano@ dlg@ espie@
|
#
9ee302b8 |
| 22-May-2016 |
bluhm <bluhm@openbsd.org> |
When pulling an msdos formated umass stick during mount while the usb stack was busy, the kernel could trigger an uvm fault. There is a race between vop_generic_revoke() and sys_mount() where vgonel
When pulling an msdos formated umass stick during mount while the usb stack was busy, the kernel could trigger an uvm fault. There is a race between vop_generic_revoke() and sys_mount() where vgonel() could reset v_specinfo. Then v_specmountpoint is no longer valid. So after sleeping, msdosfs_mountfs() could crash in the error path. The code in the different *_mountfs() functions was inconsistent, implement the same check everywhere. OK krw@ natano@
show more ...
|
#
f28dec03 |
| 26-Apr-2016 |
natano <natano@openbsd.org> |
Populate all necessary statfs members in .vfs_statfs. cd9660, udf, msdosfs and nfsv2 don't set f_namemax. ntfs and ext2fs don't set f_namemeax and f_favail. fusefs doesn't set f_mntfromspec, f_favail
Populate all necessary statfs members in .vfs_statfs. cd9660, udf, msdosfs and nfsv2 don't set f_namemax. ntfs and ext2fs don't set f_namemeax and f_favail. fusefs doesn't set f_mntfromspec, f_favail and f_iosize. Also, make all filesystems use copy_statfs_info(), so that all statfs information is filled in correctly for the (sb != &mp->mnt-stat) case.
ok stefan
show more ...
|
#
4b1ae25e |
| 27-Mar-2016 |
bluhm <bluhm@openbsd.org> |
When pulling and unmounting an umass USB stick, the file system could end up in an inconsistent state. The fstype dependent mp->mnt_data was NULL, but the general mp was still listed as a valid moun
When pulling and unmounting an umass USB stick, the file system could end up in an inconsistent state. The fstype dependent mp->mnt_data was NULL, but the general mp was still listed as a valid mount point. Next access to the file system would crash with a NULL pointer dereference. If closing the device fails, the mount point must go away anyway. There is nothing we can do about it. Remove the workaround for the EIO error in the general unmount code, but do not generate any error in the file system specific unmount functions. OK natano@ beck@
show more ...
|
#
937fcae7 |
| 19-Mar-2016 |
natano <natano@openbsd.org> |
Remove the unused flags argument from VOP_UNLOCK().
torture tested on amd64, i386 and macppc ok beck mpi stefan "the change looks right" deraadt
|
#
200e77f4 |
| 17-Mar-2016 |
bluhm <bluhm@openbsd.org> |
Set mnt_data to NULL after freeing the file system specific mount point. OK krw@ natano@ as part of a larger diff
|
#
81ad5374 |
| 23-Oct-2015 |
krw <krw@openbsd.org> |
Fix printf() types so kernel compiles with or w/o MSDOSFS_DEBUG. e.g. print pointers with %p instead of %08x. No changes outside of MSDOSFS_DEBUG.
|