History log of /dragonfly/sys/vfs/ntfs/ntfs_subr.c (Results 1 – 25 of 54)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3
# 6a71662e 24-Jan-2020 Sascha Wildner <saw@online.de>

kernel/ntfs: Fix lockinit() flags.


# 13dd34d8 18-Oct-2019 zrj <rimvydas.jasinskas@gmail.com>

kernel: Cleanup <sys/uio.h> issues.

The iovec_free() inline very complicates this header inclusion. The
NULL check is not always seen from <sys/_null.h>. Luckily only three
kernel sources needs

kernel: Cleanup <sys/uio.h> issues.

The iovec_free() inline very complicates this header inclusion. The
NULL check is not always seen from <sys/_null.h>. Luckily only three
kernel sources needs it: kern_subr.c, sys_generic.c and uipc_syscalls.c.
Also just a single dev/drm source makes use of 'struct uio'.
* Include <sys/uio.h> explicitly first in drm_fops.c to avoid kfree()
macro override in drm compat layer.
* Use <sys/_uio.h> where only enums and struct uio is needed, but ensure
that userland will not include it for possible later <sys/user.h> use.
* Stop using <sys/vnode.h> as shortcut for uiomove*() prototypes. The
uiomove*() family functions possibly transfer data across kernel/user
space boundary. This header presence explicitly mark sources as such.
* Prefer to add <sys/uio.h> after <sys/systm.h>, but before <sys/proc.h>
and definitely before <sys/malloc.h> (except for 3 mentioned sources).
This will allow to remove <sys/malloc.h> from <sys/uio.h> later on.
* Adjust <sys/user.h> to use component headers instead of <sys/uio.h>.

While there, use opportunity for a minimal whitespace cleanup.

No functional differences observed in compiler intermediates.

show more ...


# 3f7b7260 23-Oct-2019 Sascha Wildner <saw@online.de>

world/kernel: Use the rounddown2() macro in various places.

Tested-by: zrj


Revision tags: v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1
# e02350b6 26-Sep-2018 Sascha Wildner <saw@online.de>

kernel/ntfs: Fix -Wundef.


Revision tags: v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1
# 57e09377 07-Aug-2016 Matthew Dillon <dillon@apollo.backplane.com>

kernel - Cleanup gcc warnings

* Cleanup gcc warnings at higher optimization levels. This will allow
us to build kernels -O2 or -O3.


Revision tags: v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0
# ba87a4ab 24-Aug-2014 Sascha Wildner <saw@online.de>

kernel/spinlock: Add a description to struct spinlock.

And add it to spin_init() and SPINLOCK_INITIALIZER().

Submitted-by: dclink (see <http://bugs.dragonflybsd.org/issues/2714>)
OK'd-by: dill

kernel/spinlock: Add a description to struct spinlock.

And add it to spin_init() and SPINLOCK_INITIALIZER().

Submitted-by: dclink (see <http://bugs.dragonflybsd.org/issues/2714>)
OK'd-by: dillon

show more ...


Revision tags: v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2
# b07e7f2d 27-Feb-2014 Antonio Huete Jimenez <tuxillo@quantumachine.net>

kernel/ntfs - Fix buffer overlapping problems.

- Read only one cluster at a time.
- Do not cache boot block.

Taken-from: FreeBSD's r118035
Dragonfly-bug: <http://bugs.dragonflybsd.org/issues/238

kernel/ntfs - Fix buffer overlapping problems.

- Read only one cluster at a time.
- Do not cache boot block.

Taken-from: FreeBSD's r118035
Dragonfly-bug: <http://bugs.dragonflybsd.org/issues/2388>

(Commit refs #2388 and fixes #1853)

show more ...


# 173c3351 27-Feb-2014 Antonio Huete Jimenez <tuxillo@quantumachine.net>

kernel/ntfs - Fix a possible problem in bufcache.

- Avoid different block size bread() calls for the
same blkno.
- Fix a bug in the code handling holes which could
cause infinite loops.

Taken-f

kernel/ntfs - Fix a possible problem in bufcache.

- Avoid different block size bread() calls for the
same blkno.
- Fix a bug in the code handling holes which could
cause infinite loops.

Taken-from: FreeBSD's r116620

show more ...


# 0249ae38 25-Feb-2014 Antonio Huete Jimenez <tuxillo@quantumachine.net>

kernel/ntfs - Cleanup.

- Remove NetBSD specific code.
- Removed few whitespaces.


# 39285282 25-Feb-2014 Antonio Huete Jimenez <tuxillo@quantumachine.net>

kernel/ntfs - Fix warnings when compiling with NTFS_DEBUG


Revision tags: v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3, v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0
# cebef8bb 10-Jan-2013 Sascha Wildner <saw@online.de>

kernel: Silence gcc47's -Wcast-qual warnings.


Revision tags: v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3
# 44480e31 17-Aug-2012 Matthew Dillon <dillon@apollo.backplane.com>

kernel - Adjust UFS and HAMMER to use uiomovebp()

* Add uiomovebp(), a version of uiomove() which is aware of a locked bp
representing the to or from buffer and can work-around issues related
to

kernel - Adjust UFS and HAMMER to use uiomovebp()

* Add uiomovebp(), a version of uiomove() which is aware of a locked bp
representing the to or from buffer and can work-around issues related
to VM faults causing recursions and deadlocks on the user buffer.

uiomovebp() does not yet detect or handle deadlocks. Implementing
deadlock handling will require a certain degree of finess related to
the vnode and bp locks and we don't want to have to do it unless we
actually deadlock. TODO.

* Adjust UFS, HAMMER, TMPFS, MSDOSFS, NFS, NTFS to use uiomovebp().

show more ...


# 1b0988d0 19-Jun-2012 Antonio Huete Jimenez <tuxillo@quantumachine.net>

ntfs - Add NTFS_DEBUG kernel option.

Remove also CVS IDs from the files that still have it.


# f3696fdb 18-Jun-2012 Antonio Huete Jimenez <tuxillo@quantumachine.net>

ntfs - Fix build with NTFS_DEBUG


# 39215f4c 23-May-2012 Sascha Wildner <saw@online.de>

kernel: Remove some bogus casts to the own type.


# ed20d0e3 21-Apr-2012 Sascha Wildner <saw@online.de>

kernel: Remove newlines from the panic messages that have one.

panic() itself will add a newline.


Revision tags: v3.0.2
# dff43ec9 20-Feb-2012 Sascha Wildner <saw@online.de>

Fix some typos.


Revision tags: v3.0.1, v3.1.0, v3.0.0
# 884717e1 06-Dec-2011 Sascha Wildner <saw@online.de>

kernel: Replace all usage of MALLOC()/FREE() with kmalloc()/kfree().


# 86d7f5d3 26-Nov-2011 John Marino <draco@marino.st>

Initial import of binutils 2.22 on the new vendor branch

Future versions of binutils will also reside on this branch rather
than continuing to create new binutils branches for each new version.


# 54341a3b 15-Nov-2011 Matthew Dillon <dillon@apollo.backplane.com>

kernel - Greatly improve shared memory fault rate concurrency / shared tokens

This commit rolls up a lot of work to improve postgres database operations
and the system in general. With this changes

kernel - Greatly improve shared memory fault rate concurrency / shared tokens

This commit rolls up a lot of work to improve postgres database operations
and the system in general. With this changes we can pgbench -j 8 -c 40 on
our 48-core opteron monster at 140000+ tps, and the shm vm_fault rate
hits 3.1M pps.

* Implement shared tokens. They work as advertised, with some cavets.

It is acceptable to acquire a shared token while you already hold the same
token exclusively, but you will deadlock if you acquire an exclusive token
while you hold the same token shared.

Currently exclusive tokens are not given priority over shared tokens so
starvation is possible under certain circumstances.

* Create a critical code path in vm_fault() using the new shared token
feature to quickly fault-in pages which already exist in the VM cache.
pmap_object_init_pt() also uses the new feature.

This increases fault-in concurrency by a ridiculously huge amount,
particularly on SHM segments (say when you have a large number of postgres
clients). Scaling for large numbers of clients on large numbers of
cores is significantly improved.

This also increases fault-in concurrency for MAP_SHARED file maps.

* Expand the breadn() and cluster_read() APIs. Implement breadnx() and
cluster_readx() which allows a getblk()'d bp to be passed. If *bpp is not
NULL a bp is being passed in, otherwise the routines call getblk().

* Modify the HAMMER read path to use the new API. Instead of calling
getcacheblk() HAMMER now calls getblk() and checks the B_CACHE flag.
This gives getblk() a chance to regenerate a fully cached buffer from
VM backing store without having to acquire any hammer-related locks,
resulting in even faster operation.

* If kern.ipc.shm_use_phys is set to 2 the VM pages will be pre-allocated.
This can take quite a while for a large map and also lock the machine
up for a few seconds. Defaults to off.

* Reorder the smp_invltlb()/cpu_invltlb() combos in a few places, running
cpu_invltlb() last.

* An invalidation interlock might be needed in pmap_enter() under certain
circumstances, enable the code for now.

* vm_object_backing_scan_callback() was failing to properly check the
validity of a vm_object after acquiring its token. Add the required
check + some debugging.

* Make vm_object_set_writeable_dirty() a bit more cache friendly.

* The vmstats sysctl was scanning every process's vm_map (requiring a
vm_map read lock to do so), which can stall for long periods of time
when the system is paging heavily. Change the mechanic to a LWP flag
which can be tested with minimal locking.

* Have the phys_pager mark the page as dirty too, to make sure nothing
tries to free it.

* Remove the spinlock in pmap_prefault_ok(), since we do not delete page
table pages it shouldn't be needed.

* Add a required cpu_ccfence() in pmap_inval.c. The code generated prior
to this fix was still correct, and this makes sure it stays that way.

* Replace several manual wiring cases with calls to vm_page_wire().

show more ...


Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0
# 23731001 12-Sep-2009 Alexander Polakov <polachok@gmail.com>

libiconv: convert NTFS to libiconv.

Partly-taken-from: FreeBSD


# b9b0a6d0 23-Jul-2009 Matthew Dillon <dillon@apollo.backplane.com>

HAMMER / VFS_VGET - Add optional dvp argument to VFS_VGET(). Fix readdirplus

* VGET is used by NFS to acquire a vnode given an inode number. HAMMER
requires additional information to determine t

HAMMER / VFS_VGET - Add optional dvp argument to VFS_VGET(). Fix readdirplus

* VGET is used by NFS to acquire a vnode given an inode number. HAMMER
requires additional information to determine the PFS the inode is being
acquired from.

Add an optional directory vnode argument to the VGET. If non-NULL, HAMMER
will extract the PFS information from this vnode.

* Adjust NFS to pass the dvp to VGET when doing a readdirplus.

Note that the PFS is already encoded in file handles, but readdirplus
acquires the attributes for each directory entry it scans (readdir does
not). This fixes readdirplus for NFS served HAMMER PFS exports.

show more ...


Revision tags: v2.3.2, v2.3.1, v2.2.1
# 2038fb68 06-Apr-2009 Sascha Wildner <saw@online.de>

Replace all casts of NULL to something with NULL.


Revision tags: v2.2.0, v2.3.0
# 9e758ef5 20-Dec-2008 Sascha Wildner <saw@online.de>

Eliminate some dead initialization.

Found-by: LLVM/Clang Static Analyzer


Revision tags: v2.1.1, v2.0.1
# e7b4468c 05-Jan-2008 Sascha Wildner <swildner@dragonflybsd.org>

For kmalloc(), MALLOC() and contigmalloc(), use M_ZERO instead of
explicitly bzero()ing.

Reviewed-by: sephe


123