vfs_default.c (1eaa36523cb921e90d61b20531ed525aba0cfe7e) | vfs_default.c (9e202d036dd6f38ce0f578aa2086ebc358315bab) |
---|---|
1/*- 2 * SPDX-License-Identifier: BSD-3-Clause 3 * 4 * Copyright (c) 1989, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * This code is derived from software contributed 8 * to Berkeley by John Heidemann of the UCLA Ficus project. --- 1142 unchanged lines hidden (view full) --- 1151 if (error) { 1152 if (error != ENXIO) 1153 /* XXX: Is it okay to fallback further? */ 1154 goto out; 1155 1156 /* 1157 * No more data region to be filled 1158 */ | 1/*- 2 * SPDX-License-Identifier: BSD-3-Clause 3 * 4 * Copyright (c) 1989, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * This code is derived from software contributed 8 * to Berkeley by John Heidemann of the UCLA Ficus project. --- 1142 unchanged lines hidden (view full) --- 1151 if (error) { 1152 if (error != ENXIO) 1153 /* XXX: Is it okay to fallback further? */ 1154 goto out; 1155 1156 /* 1157 * No more data region to be filled 1158 */ |
1159 offset += len; |
|
1159 len = 0; 1160 error = 0; 1161 break; 1162 } 1163 KASSERT(noff >= offset, ("FIOSEEKDATA going backward")); 1164 if (noff != offset) { 1165 xfersize = omin(noff - offset, len); 1166 len -= xfersize; --- 13 unchanged lines hidden (view full) --- 1180 goto out; 1181 } 1182 1183 len -= xfersize; 1184 if (should_yield()) 1185 break; 1186 } 1187 /* Handle the case when offset is beyond EOF */ | 1160 len = 0; 1161 error = 0; 1162 break; 1163 } 1164 KASSERT(noff >= offset, ("FIOSEEKDATA going backward")); 1165 if (noff != offset) { 1166 xfersize = omin(noff - offset, len); 1167 len -= xfersize; --- 13 unchanged lines hidden (view full) --- 1181 goto out; 1182 } 1183 1184 len -= xfersize; 1185 if (should_yield()) 1186 break; 1187 } 1188 /* Handle the case when offset is beyond EOF */ |
1188 if (len < 0) { 1189 offset += len; | 1189 if (len < 0) |
1190 len = 0; | 1190 len = 0; |
1191 } | |
1192out: 1193 *ap->a_offset = offset; 1194 *ap->a_len = len; 1195 return (error); 1196} 1197 1198int 1199vop_stdadvise(struct vop_advise_args *ap) --- 557 unchanged lines hidden --- | 1191out: 1192 *ap->a_offset = offset; 1193 *ap->a_len = len; 1194 return (error); 1195} 1196 1197int 1198vop_stdadvise(struct vop_advise_args *ap) --- 557 unchanged lines hidden --- |