#
5d9d81e7 |
| 26-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Put the I/O block size in bufobj->bo_bsize.
We keep si_bsize_phys around for now as that is the simplest way to pull the number out of disk device drivers in devfs_open(). The correct solution woul
Put the I/O block size in bufobj->bo_bsize.
We keep si_bsize_phys around for now as that is the simplest way to pull the number out of disk device drivers in devfs_open(). The correct solution would be to do an ioctl(DIOCGSECTORSIZE), but the point is probably mooth when filesystems sit on GEOM, so don't bother for now.
show more ...
|
#
cd9c0da8 |
| 26-Oct-2004 |
Alan Cox <alc@FreeBSD.org> |
Hold the lock on the containing vm object when calling vm_page_sleep_if_busy().
|
#
ee1d0eb3 |
| 25-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove vnode->v_bsize. This was a dead-end.
|
#
a50b7054 |
| 25-Oct-2004 |
Alan Cox <alc@FreeBSD.org> |
Use VM_ALLOC_NOBUSY to eliminate vm_page_wakeup() calls and the acquisition and release of the global page queues lock required to make the call.
Remove GIANT_REQUIRED from vm_hold_free_pages(). Al
Use VM_ALLOC_NOBUSY to eliminate vm_page_wakeup() calls and the acquisition and release of the global page queues lock required to make the call.
Remove GIANT_REQUIRED from vm_hold_free_pages(). All of its VM operations are properly synchronized.
show more ...
|
#
4dcd0ac4 |
| 25-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Collapse vnode->v_object and buf->b_object into bufobj->bo_object.
|
#
b792bebe |
| 24-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Move the buffer method vector (buf->b_op) to the bufobj.
Extend it with a strategy method.
Add bufstrategy() which do the usual VOP_SPECSTRATEGY/VOP_STRATEGY song and dance.
Rename ibwrite to bufw
Move the buffer method vector (buf->b_op) to the bufobj.
Extend it with a strategy method.
Add bufstrategy() which do the usual VOP_SPECSTRATEGY/VOP_STRATEGY song and dance.
Rename ibwrite to bufwrite().
Move the two NFS buf_ops to more sensible places, add bufstrategy to them.
Add inlines for bwrite() and bstrategy() which calls through buf->b_bufobj->b_ops->b_{write,strategy}().
Replace almost all VOP_STRATEGY()/VOP_SPECSTRATEGY() calls with bstrategy().
show more ...
|
#
494eb176 |
| 22-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add b_bufobj to struct buf which eventually will eliminate the need for b_vp.
Initialize b_bufobj for all buffers.
Make incore() and gbincore() take a bufobj instead of a vnode.
Make inmem() local
Add b_bufobj to struct buf which eventually will eliminate the need for b_vp.
Initialize b_bufobj for all buffers.
Make incore() and gbincore() take a bufobj instead of a vnode.
Make inmem() local to vfs_bio.c
Change a lot of VI_[UN]LOCK(bp->b_vp) to BO_[UN]LOCK(bp->b_bufobj) also VI_MTX() to BO_MTX(),
Make buf_vlist_add() take a bufobj instead of a vnode.
Eliminate other uses of bp->b_vp where bp->b_bufobj will do.
Various minor polishing: remove "register", turn panic into KASSERT, use new function declarations, TAILQ_FOREACH_SAFE() etc.
show more ...
|
#
a76d8f4e |
| 21-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Move the VI_BWAIT flag into no bo_flag element of bufobj and call it BO_WWAIT
Add bufobj_wref(), bufobj_wdrop() and bufobj_wwait() to handle the write count on a bufobj. Bufobj_wdrop() replaces vwa
Move the VI_BWAIT flag into no bo_flag element of bufobj and call it BO_WWAIT
Add bufobj_wref(), bufobj_wdrop() and bufobj_wwait() to handle the write count on a bufobj. Bufobj_wdrop() replaces vwakeup().
Use these functions all relevant places except in ffs_softdep.c where the use if interlocked_sleep() makes this impossible.
Rename b_vnbufs to b_bobufs now that we touch all the relevant files anyway.
show more ...
|
#
6230ce6a |
| 24-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
use dev_re[fl]thread() rather than home rolled versions.
|
#
1a52a73d |
| 23-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Eliminate DEV_STRATEGY() macro: call dev_strategy() directly.
Make dev_strategy() handle errors and departing devices properly.
|
#
a0e78d2e |
| 23-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Do not refcount the cdevsw, but rather maintain a cdev->si_threadcount of the number of threads which are inside whatever is behind the cdevsw for this particular cdev.
Make the device mutex visible
Do not refcount the cdevsw, but rather maintain a cdev->si_threadcount of the number of threads which are inside whatever is behind the cdevsw for this particular cdev.
Make the device mutex visible through dev_lock() and dev_unlock(). We may want finer granularity later.
Replace spechash_mtx use with dev_lock()/dev_unlock().
show more ...
|
#
08dbd671 |
| 15-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove unused B_WRITEINPROG flag
|
#
4095f485 |
| 15-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
undent some functions a bit.
|
#
ab19cad7 |
| 15-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
stylistic polishing.
|
#
883d3c0c |
| 13-Sep-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove the buffercache/vnode side of BIO_DELETE processing in preparation for integration of p4::phk_bufwork. In the future, local filesystems will talk to GEOM directly and they will consequently b
Remove the buffercache/vnode side of BIO_DELETE processing in preparation for integration of p4::phk_bufwork. In the future, local filesystems will talk to GEOM directly and they will consequently be able to issue BIO_DELETE directly. Since the removal of the fla driver, BIO_DELETE has effectively been a no-op anyway.
show more ...
|
#
cf95b5c3 |
| 25-Jul-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Eliminate unused second argument to reassignbuf() and simplify it accordingly.
|
#
a3d57cfb |
| 25-Jul-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Neuter this warning for now, I think I know the remaining issues.
|
#
d8582da6 |
| 18-Jul-2004 |
Alan Cox <alc@FreeBSD.org> |
Remove GIANT_REQUIRED from vmapbuf().
|
#
0f015868 |
| 07-Jul-2004 |
Peter Edwards <peadar@FreeBSD.org> |
Fix bug introduced in rev 1.434:
When avoiding the zeroing of "bogus_page" when it appears in a buf, be sure to advance the pointers into the data for successive pages.
The bug caused file corrupti
Fix bug introduced in rev 1.434:
When avoiding the zeroing of "bogus_page" when it appears in a buf, be sure to advance the pointers into the data for successive pages.
The bug caused file corruption when read(2)ing from a "hole" in a file where a previous page of the read block had already been faulted in: fsx tripped up on this pretty quickly. The particular access pattern is probably pretty unusual, so other applications probably wouldn't have had problems, but you'd never know.
Reviewed By: alc@
show more ...
|
#
7f6599fe |
| 04-Jul-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Make the last commit handle non-phk root devices better.
|
#
5908d366 |
| 04-Jul-2004 |
Stefan Farfeleder <stefanf@FreeBSD.org> |
Consistently use __inline instead of __inline__ as the former is an empty macro in <sys/cdefs.h> for compilers without support for inline.
|
#
1cbb1e02 |
| 04-Jul-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Blocksize for I/O should be a property of the vnode and not found by groping around in the vnodes surroundings when we allocate a block.
Assign a blocksize when we create a vnode, and yell a warning
Blocksize for I/O should be a property of the vnode and not found by groping around in the vnodes surroundings when we allocate a block.
Assign a blocksize when we create a vnode, and yell a warning (and ignore it) if we got the wrong size.
Please email all such warnings to me.
show more ...
|
#
cfa5e80a |
| 03-Jul-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove stale comment
|
#
f3732fd1 |
| 17-Jun-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to ke
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to kernel space struct cdev etc.
show more ...
|
#
89c9c53d |
| 16-Jun-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Do the dreaded s/dev_t/struct cdev */ Bump __FreeBSD_version accordingly.
|