Deleted Added
full compact
ext2_alloc.c (219012) ext2_alloc.c (221126)
1/*-
2 * modified for Lites 1.1
3 *
4 * Aug 1995, Godmar Back (gback@cs.utah.edu)
5 * University of Utah, Department of Computer Science
6 */
7/*-
8 * Copyright (c) 1982, 1986, 1989, 1993

--- 19 unchanged lines hidden (view full) ---

28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 *
35 * @(#)ffs_alloc.c 8.8 (Berkeley) 2/21/94
1/*-
2 * modified for Lites 1.1
3 *
4 * Aug 1995, Godmar Back (gback@cs.utah.edu)
5 * University of Utah, Department of Computer Science
6 */
7/*-
8 * Copyright (c) 1982, 1986, 1989, 1993

--- 19 unchanged lines hidden (view full) ---

28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 *
35 * @(#)ffs_alloc.c 8.8 (Berkeley) 2/21/94
36 * $FreeBSD: head/sys/fs/ext2fs/ext2_alloc.c 219012 2011-02-24 22:11:36Z jhb $
36 * $FreeBSD: head/sys/fs/ext2fs/ext2_alloc.c 221126 2011-04-27 18:15:34Z jhb $
37 */
38
39#include <sys/param.h>
40#include <sys/systm.h>
41#include <sys/conf.h>
42#include <sys/vnode.h>
43#include <sys/stat.h>
44#include <sys/mount.h>

--- 131 unchanged lines hidden (view full) ---

176 struct m_ext2fs *fs;
177 struct inode *ip;
178 struct vnode *vp;
179 struct buf *sbp, *ebp;
180 int32_t *bap, *sbap, *ebap = 0;
181 struct ext2mount *ump;
182 struct cluster_save *buflist;
183 struct indir start_ap[NIADDR + 1], end_ap[NIADDR + 1], *idp;
37 */
38
39#include <sys/param.h>
40#include <sys/systm.h>
41#include <sys/conf.h>
42#include <sys/vnode.h>
43#include <sys/stat.h>
44#include <sys/mount.h>

--- 131 unchanged lines hidden (view full) ---

176 struct m_ext2fs *fs;
177 struct inode *ip;
178 struct vnode *vp;
179 struct buf *sbp, *ebp;
180 int32_t *bap, *sbap, *ebap = 0;
181 struct ext2mount *ump;
182 struct cluster_save *buflist;
183 struct indir start_ap[NIADDR + 1], end_ap[NIADDR + 1], *idp;
184 int32_t start_lbn, end_lbn, soff, newblk, blkno =0;
184 int32_t start_lbn, end_lbn, soff, newblk, blkno;
185 int i, len, start_lvl, end_lvl, pref, ssize;
186
187 vp = ap->a_vp;
188 ip = VTOI(vp);
189 fs = ip->i_e2fs;
190 ump = ip->i_ump;
191#ifdef UNKLAR
192 if (fs->fs_contigsumsize <= 0)

--- 33 unchanged lines hidden (view full) ---

226 }
227 sbap = (int32_t *)sbp->b_data;
228 soff = idp->in_off;
229 }
230 /*
231 * Find the preferred location for the cluster.
232 */
233 EXT2_LOCK(ump);
185 int i, len, start_lvl, end_lvl, pref, ssize;
186
187 vp = ap->a_vp;
188 ip = VTOI(vp);
189 fs = ip->i_e2fs;
190 ump = ip->i_ump;
191#ifdef UNKLAR
192 if (fs->fs_contigsumsize <= 0)

--- 33 unchanged lines hidden (view full) ---

226 }
227 sbap = (int32_t *)sbp->b_data;
228 soff = idp->in_off;
229 }
230 /*
231 * Find the preferred location for the cluster.
232 */
233 EXT2_LOCK(ump);
234 pref = ext2_blkpref(ip, start_lbn, soff, sbap, blkno);
234 pref = ext2_blkpref(ip, start_lbn, soff, sbap, 0);
235 /*
236 * If the block range spans two block maps, get the second map.
237 */
238 if (end_lvl == 0 || (idp = &end_ap[end_lvl - 1])->in_off + 1 >= len) {
239 ssize = len;
240 } else {
241#ifdef DIAGNOSTIC
242 if (start_ap[start_lvl-1].in_lbn == idp->in_lbn)

--- 770 unchanged lines hidden ---
235 /*
236 * If the block range spans two block maps, get the second map.
237 */
238 if (end_lvl == 0 || (idp = &end_ap[end_lvl - 1])->in_off + 1 >= len) {
239 ssize = len;
240 } else {
241#ifdef DIAGNOSTIC
242 if (start_ap[start_lvl-1].in_lbn == idp->in_lbn)

--- 770 unchanged lines hidden ---