Lines 111-116
Link Here
|
111 |
static vop_fdatasync_t ffs_fdatasync; |
111 |
static vop_fdatasync_t ffs_fdatasync; |
112 |
static vop_fsync_t ffs_fsync; |
112 |
static vop_fsync_t ffs_fsync; |
113 |
static vop_getpages_t ffs_getpages; |
113 |
static vop_getpages_t ffs_getpages; |
|
|
114 |
static vop_getpages_async_t ffs_getpages_async; |
114 |
static vop_lock1_t ffs_lock; |
115 |
static vop_lock1_t ffs_lock; |
115 |
static vop_read_t ffs_read; |
116 |
static vop_read_t ffs_read; |
116 |
static vop_write_t ffs_write; |
117 |
static vop_write_t ffs_write; |
Lines 132-138
Link Here
|
132 |
.vop_fsync = ffs_fsync, |
133 |
.vop_fsync = ffs_fsync, |
133 |
.vop_fdatasync = ffs_fdatasync, |
134 |
.vop_fdatasync = ffs_fdatasync, |
134 |
.vop_getpages = ffs_getpages, |
135 |
.vop_getpages = ffs_getpages, |
135 |
.vop_getpages_async = vnode_pager_local_getpages_async, |
136 |
.vop_getpages_async = ffs_getpages_async, |
136 |
.vop_lock1 = ffs_lock, |
137 |
.vop_lock1 = ffs_lock, |
137 |
.vop_read = ffs_read, |
138 |
.vop_read = ffs_read, |
138 |
.vop_reallocblks = ffs_reallocblks, |
139 |
.vop_reallocblks = ffs_reallocblks, |
Lines 154-160
Link Here
|
154 |
.vop_fsync = ffs_fsync, |
155 |
.vop_fsync = ffs_fsync, |
155 |
.vop_fdatasync = ffs_fdatasync, |
156 |
.vop_fdatasync = ffs_fdatasync, |
156 |
.vop_getpages = ffs_getpages, |
157 |
.vop_getpages = ffs_getpages, |
157 |
.vop_getpages_async = vnode_pager_local_getpages_async, |
158 |
.vop_getpages_async = ffs_getpages_async, |
158 |
.vop_lock1 = ffs_lock, |
159 |
.vop_lock1 = ffs_lock, |
159 |
.vop_read = ffs_read, |
160 |
.vop_read = ffs_read, |
160 |
.vop_reallocblks = ffs_reallocblks, |
161 |
.vop_reallocblks = ffs_reallocblks, |
Lines 1742-1744
Link Here
|
1742 |
return (vfs_bio_getpages(vp, ap->a_m, ap->a_count, ap->a_rbehind, |
1743 |
return (vfs_bio_getpages(vp, ap->a_m, ap->a_count, ap->a_rbehind, |
1743 |
ap->a_rahead, ffs_gbp_getblkno, ffs_gbp_getblksz)); |
1744 |
ap->a_rahead, ffs_gbp_getblkno, ffs_gbp_getblksz)); |
1744 |
} |
1745 |
} |
|
|
1746 |
|
1747 |
static int |
1748 |
ffs_getpages_async(struct vop_getpages_async_args *ap) |
1749 |
{ |
1750 |
struct vnode *vp; |
1751 |
struct ufsmount *um; |
1752 |
int error; |
1753 |
|
1754 |
vp = ap->a_vp; |
1755 |
um = VFSTOUFS(vp->v_mount); |
1756 |
|
1757 |
if (um->um_devvp->v_bufobj.bo_bsize <= PAGE_SIZE) |
1758 |
return (vnode_pager_generic_getpages(vp, ap->a_m, ap->a_count, |
1759 |
ap->a_rbehind, ap->a_rahead, ap->a_iodone, ap->a_arg)); |
1760 |
|
1761 |
error = vfs_bio_getpages(vp, ap->a_m, ap->a_count, ap->a_rbehind, |
1762 |
ap->a_rahead, ffs_gbp_getblkno, ffs_gbp_getblksz); |
1763 |
ap->a_iodone(ap->a_arg, ap->a_m, ap->a_count, error); |
1764 |
|
1765 |
return (error); |
1766 |
} |
1767 |
|