Deleted Added
full compact
ext2_lookup.c (221128) ext2_lookup.c (221166)
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) 1989, 1993

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

33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 * SUCH DAMAGE.
39 *
40 * @(#)ufs_lookup.c 8.6 (Berkeley) 4/1/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) 1989, 1993

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

33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 * SUCH DAMAGE.
39 *
40 * @(#)ufs_lookup.c 8.6 (Berkeley) 4/1/94
41 * $FreeBSD: head/sys/fs/ext2fs/ext2_lookup.c 221128 2011-04-27 18:25:35Z jhb $
41 * $FreeBSD: head/sys/fs/ext2fs/ext2_lookup.c 221166 2011-04-28 14:27:17Z jhb $
42 */
43
44#include <sys/param.h>
45#include <sys/systm.h>
46#include <sys/namei.h>
47#include <sys/bio.h>
48#include <sys/buf.h>
49#include <sys/endian.h>

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

885 } else {
886 if (spacefree < newentrysize)
887 panic("ext2_direnter: compact2");
888 newdir.e2d_reclen = spacefree;
889 ep->e2d_reclen = dsize;
890 ep = (struct ext2fs_direct_2 *)((char *)ep + dsize);
891 }
892 bcopy((caddr_t)&newdir, (caddr_t)ep, (u_int)newentrysize);
42 */
43
44#include <sys/param.h>
45#include <sys/systm.h>
46#include <sys/namei.h>
47#include <sys/bio.h>
48#include <sys/buf.h>
49#include <sys/endian.h>

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

885 } else {
886 if (spacefree < newentrysize)
887 panic("ext2_direnter: compact2");
888 newdir.e2d_reclen = spacefree;
889 ep->e2d_reclen = dsize;
890 ep = (struct ext2fs_direct_2 *)((char *)ep + dsize);
891 }
892 bcopy((caddr_t)&newdir, (caddr_t)ep, (u_int)newentrysize);
893 error = bwrite(bp);
893 if (DOINGASYNC(dvp)) {
894 bdwrite(bp);
895 error = 0;
896 } else {
897 error = bwrite(bp);
898 }
894 dp->i_flag |= IN_CHANGE | IN_UPDATE;
895 if (!error && dp->i_endoff && dp->i_endoff < dp->i_size)
896 error = ext2_truncate(dvp, (off_t)dp->i_endoff, IO_SYNC,
897 cnp->cn_cred, cnp->cn_thread);
898 return (error);
899}
900
901/*

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

942 return (error);
943
944 /* Set 'rep' to the entry being removed. */
945 if (dp->i_count == 0)
946 rep = ep;
947 else
948 rep = (struct ext2fs_direct_2 *)((char *)ep + ep->e2d_reclen);
949 ep->e2d_reclen += rep->e2d_reclen;
899 dp->i_flag |= IN_CHANGE | IN_UPDATE;
900 if (!error && dp->i_endoff && dp->i_endoff < dp->i_size)
901 error = ext2_truncate(dvp, (off_t)dp->i_endoff, IO_SYNC,
902 cnp->cn_cred, cnp->cn_thread);
903 return (error);
904}
905
906/*

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

947 return (error);
948
949 /* Set 'rep' to the entry being removed. */
950 if (dp->i_count == 0)
951 rep = ep;
952 else
953 rep = (struct ext2fs_direct_2 *)((char *)ep + ep->e2d_reclen);
954 ep->e2d_reclen += rep->e2d_reclen;
950 error = bwrite(bp);
955 if (DOINGASYNC(dvp) && dp->i_count != 0)
956 bdwrite(bp);
957 else
958 error = bwrite(bp);
951 dp->i_flag |= IN_CHANGE | IN_UPDATE;
952 return (error);
953}
954
955/*
956 * Rewrite an existing directory entry to point at the inode
957 * supplied. The parameters describing the directory entry are
958 * set up by a call to namei.

--- 145 unchanged lines hidden ---
959 dp->i_flag |= IN_CHANGE | IN_UPDATE;
960 return (error);
961}
962
963/*
964 * Rewrite an existing directory entry to point at the inode
965 * supplied. The parameters describing the directory entry are
966 * set up by a call to namei.

--- 145 unchanged lines hidden ---