CVS log for xfs-linux/xfs_dir2_node.c

[BACK] Up to [Development] / xfs-linux

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.66 / (download) - annotate - [select for diffs], Tue Aug 19 15:46:54 2008 UTC (9 years, 2 months ago) by lachlan.longdrop.melbourne.sgi.com
Branch: MAIN
CVS Tags: HEAD
Changes since 1.65: +9 -9 lines
Diff to previous 1.65 (unified)

convert beX_add to beX_add_cpu (new common API)

remove beX_add functions and replace all uses with beX_add_cpu

Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Merge of xfs-linux-melb:xfs-kern:31920a by kenmcd.

  convert beX_add to beX_add_cpu (new common API)

Revision 1.65 / (download) - annotate - [select for diffs], Fri Jun 20 04:04:31 2008 UTC (9 years, 3 months ago) by bnaujok.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.64: +43 -26 lines
Diff to previous 1.64 (unified)

Fix returning case-preserved name with CI node form directories

xfs_dir2_node_lookup() calls xfs_da_node_lookup_int() which iterates
through leaf blocks containing the matching hash value for the name
being looked up. Inside xfs_da_node_lookup_int(), it calls the
xfs_dir2_leafn_lookup_for_entry() for each leaf block.
xfs_dir2_leafn_lookup_for_entry() iterates through each matching
hash/offset pair doing a name comparison to find the matching
dirent.

For CI mode, the state->extrablk retains the details of the block
that has the CI match so xfs_dir2_node_lookup() can return the
case-preserved name.

The original implementation didn't retain the xfs_da_buf_t properly,
so the lookup was returning a bogus name to be stored in the dentry.

In the case of unlink, the bad name was passed and in debug mode,
ASSERTed when it can't find the entry.
Merge of xfs-linux-melb:xfs-kern:31337a by kenmcd.

  Fix returning case-preserved name with CI node form directories

Revision 1.64 / (download) - annotate - [select for diffs], Wed May 21 06:13:08 2008 UTC (9 years, 4 months ago) by bnaujok.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.63: +11 -5 lines
Diff to previous 1.63 (unified)

Return case-insensitive match for dentry cache

This implements the code to store the actual filename found
during a lookup in the dentry cache and to avoid multiple entries
in the dcache pointing to the same inode.

To avoid polluting the dcache, we implement a new directory inode
operations for lookup. xfs_vn_ci_lookup() stores the correct case
name in the dcache.

The "actual name" is only allocated and returned for a case-
insensitive match and not an actual match.

Another unusual interaction with the dcache is not storing
negative dentries like other filesystems doing a d_add(dentry, NULL)
when an ENOENT is returned. During the VFS lookup, if a dentry
returned has no inode, dput is called and ENOENT is returned.
By not doing a d_add, this actually removes it completely from
the dcache to be reused. create/rename have to be modified to
support unhashed dentries being passed in.

Signed-off-by: Barry Naujok <bnaujok@sgi.com>
Merge of xfs-linux-melb:xfs-kern:31208a by kenmcd.

  Add lookup support for returning actual case-preserved name

Revision 1.63 / (download) - annotate - [select for diffs], Wed May 21 04:23:47 2008 UTC (9 years, 4 months ago) by bnaujok.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.62: +9 -7 lines
Diff to previous 1.62 (unified)

Add op_flags field and helpers to xfs_da_args

The end of the xfs_da_args structure has 4 unsigned char fields for
true/false information on directory and attr operations using the
xfs_da_args structure.

The following converts these 4 into a op_flags field that uses the
first 4 bits for these fields and allows expansion for future
operation information (eg. case-insensitive lookup request).

Signed-off-by: Barry Naujok <bnaujok@sgi.com>
Merge of xfs-linux-melb:xfs-kern:31206a by kenmcd.

  Convert discrete xfs_da_args flags into flag bits

Revision 1.62 / (download) - annotate - [select for diffs], Wed May 21 04:22:46 2008 UTC (9 years, 4 months ago) by bnaujok.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.61: +15 -10 lines
Diff to previous 1.61 (unified)

Name operation vector for hash and compare

Adds two pieces of functionality for the basis of case-insensitive
support in XFS:

1.  A comparison result enumerated type: xfs_dacmp. It represents an
    exact match, case-insensitive match or no match at all. This patch
    only implements different and exact results.

2.  xfs_nameops vector for specifying how to perform the hash generation
    of filenames and comparision methods. In this patch the hash vector
    points to the existing xfs_da_hashname function and the comparison
    method does a length compare, and if the same, does a memcmp and
    return the xfs_dacmp result.

All filename functions that use the hash (create, lookup remove, rename,
etc) now use the xfs_nameops.hashname function and all directory lookup
functions also use the xfs_nameops.compname function.

The lookup functions also handle case-insensitive results even though
the default comparison function cannot return that. And important
aspect of the lookup functions is that an exact match always has
precedence over a case-insensitive. So while a case-insensitive match
is found, we have to keep looking just in case there is an exact
match. In the meantime, the info for the first case-insensitive match
is retained if no exact match is found.

Signed-off-by: Barry Naujok <bnaujok@sgi.com>
Merge of xfs-linux-melb:xfs-kern:31205a by kenmcd.

  Handle CI lookup in node form directories

Revision 1.61 / (download) - annotate - [select for diffs], Thu Apr 10 04:37:06 2008 UTC (9 years, 6 months ago) by bnaujok.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.60: +202 -156 lines
Diff to previous 1.60 (unified)

Split xfs_dir2_leafn_lookup_int into its two pieces of functionality
Merge of xfs-linux-melb:xfs-kern:30834a by kenmcd.

  Split xfs_dir2_leafn_lookup_int into its two pieces of functionality

Revision 1.60 / (download) - annotate - [select for diffs], Thu Aug 23 16:00:34 2007 UTC (10 years, 1 month ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.59: +1 -0 lines
Diff to previous 1.59 (unified)

Radix tree based inode caching

One of the perpetual scaling problems XFS has is indexing
it's incore inodes. We currently uses hashes and the default
hash sizes chosen can only ever be a tradeoff between memory
consumption and the maximum realistic size of the cache.

As a result, anyone who has millions of inodes cached on a
filesystem needs to tunes the size of the cache via the ihashsize
mount option to allow decent scalability with inode cache
operations.

A further problem is the separate inode cluster hash, whose size is
based on the ihashsize but is smaller, and so under certain
conditions (sparse cluster cache population) this can become
a limitation long before the inode hash is causing issues.

The following patchset removes the inode hash and cluster hash
and replaces them with radix trees to avoid the scalability
limitations of the hashes. It also reduces the size of the
inodes by 3 pointers....
Merge of xfs-linux-melb:xfs-kern:29481a by kenmcd.

  Convert xfs inode caches from hashes to radix trees.

Revision 1.59 / (download) - annotate - [select for diffs], Wed Jun 20 06:09:16 2007 UTC (10 years, 4 months ago) by dgc.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.58: +33 -33 lines
Diff to previous 1.58 (unified)

Reduce shouting by removing unnecessary macros from dir2 code.

Signed-Off-By: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:28947a by kenmcd.

  Call inline functions directly rather than the macros that
  wrap them and remove the unneeded macros.

Revision 1.58 / (download) - annotate - [select for diffs], Sat Mar 3 02:56:54 2007 UTC (10 years, 7 months ago) by lachlan.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.57: +2 -2 lines
Diff to previous 1.57 (unified)

the "aendp" arg to xfs_dir2_data_freescan is always NULL, remove it.

Patch provided by Eric Sandeen.
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Merge of xfs-linux-melb:xfs-kern:28204a by kenmcd.

  the "aendp" arg to xfs_dir2_data_freescan is always NULL, remove it.
  Signed-off-by: Eric Sandeen <sandeen@sandeen.net>

Revision 1.57 / (download) - annotate - [select for diffs], Thu Jun 15 03:58:11 2006 UTC (11 years, 4 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.56: +0 -2 lines
Diff to previous 1.56 (unified)

Remove version 1 directory code.  Never functioned on Linux, just pure bloat.
Merge of xfs-linux-melb:xfs-kern:26251a by kenmcd.

Revision 1.56 / (download) - annotate - [select for diffs], Wed Jun 7 03:21:01 2006 UTC (11 years, 4 months ago) by alkirkco
Branch: MAIN
Changes since 1.55: +1 -1 lines
Diff to previous 1.55 (unified)

Fix nused counter.  It's currently getting set to -1 rather than getting
decremented by 1.  Since nused never reaches 0, the "if (!free->hdr.nused)"
check in xfs_dir2_leafn_remove() fails every time and xfs_dir2_shrink_inode()
doesn't get called when it should.  This causes extra blocks to be left on
an empty directory and the directory in unable to be converted back to
inline extent mode.
Fix nused counter to get decremented by 1 rather than set to -1.

Revision 1.55 / (download) - annotate - [select for diffs], Tue May 30 15:49:37 2006 UTC (11 years, 4 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.54: +3 -1 lines
Diff to previous 1.54 (unified)

Fix a buffer refcount leak in dir2 code on a forced shutdown.
Merge of xfs-linux-melb:xfs-kern:26097a by kenmcd.

Revision 1.54 / (download) - annotate - [select for diffs], Sat Apr 22 03:50:19 2006 UTC (11 years, 5 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.53: +4 -4 lines
Diff to previous 1.53 (unified)

endianess annotations for xfs_dir2_data_entry_t

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Merge of xfs-linux-melb:xfs-kern:25806a by kenmcd.

  endianess annotations for xfs_dir2_data_entry_t

Revision 1.53 / (download) - annotate - [select for diffs], Thu Mar 23 02:48:21 2006 UTC (11 years, 6 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.52: +1 -1 lines
Diff to previous 1.52 (unified)

We really suck at spulling.  Thanks to Chris Pascoe for fixing all these typos.
Merge of xfs-linux-melb:xfs-kern:25539a by kenmcd.

Revision 1.52 / (download) - annotate - [select for diffs], Fri Mar 17 14:41:01 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.51: +14 -14 lines
Diff to previous 1.51 (unified)

endianess annotations for xfs_da_blkinfo_t

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25495a by kenmcd.

  endianess annotations for xfs_da_blkinfo_t

Revision 1.51 / (download) - annotate - [select for diffs], Fri Mar 17 14:40:12 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.50: +3 -3 lines
Diff to previous 1.50 (unified)

endianess annotations for XFS_DIR2_DATA_ENTRY_TAG_P

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25494a by kenmcd.

  endianess annotations for XFS_DIR2_DATA_ENTRY_TAG_P

Revision 1.50 / (download) - annotate - [select for diffs], Fri Mar 17 14:39:27 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.49: +29 -28 lines
Diff to previous 1.49 (unified)

endianess annotations for xfs_dir2_leaf_entry_t

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25493a by kenmcd.

  endianess annotations for xfs_dir2_leaf_entry_t

Revision 1.49 / (download) - annotate - [select for diffs], Fri Mar 17 14:38:40 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.48: +56 -56 lines
Diff to previous 1.48 (unified)

endianess annotations for xfs_dir2_leaf_hdr_t

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25492a by kenmcd.

  endianess annotations for xfs_dir2_leaf_hdr_t

Revision 1.48 / (download) - annotate - [select for diffs], Fri Mar 17 14:35:40 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (unified)

endianess annotations for xfs_dir2_leaf_tail_t

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25487a by kenmcd.

  endianess annotations for xfs_dir2_leaf_tail_t

Revision 1.47 / (download) - annotate - [select for diffs], Fri Mar 17 14:34:56 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.46: +2 -2 lines
Diff to previous 1.46 (unified)

endianess annotations for XFS_DIR2_LEAF_BESTS_P

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25486a by kenmcd.

  endianess annotations for XFS_DIR2_LEAF_BESTS_P

Revision 1.46 / (download) - annotate - [select for diffs], Fri Mar 17 14:34:11 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.45: +45 -45 lines
Diff to previous 1.45 (unified)

endianess annotations for xfs_dir2_free_hdr_t

#Signed-off-by: Christoph Hellwig <hch@lst.de>
Merge of xfs-linux-melb:xfs-kern:25485a by kenmcd.

Revision 1.45 / (download) - annotate - [select for diffs], Fri Mar 17 14:33:26 2006 UTC (11 years, 7 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.44: +9 -9 lines
Diff to previous 1.44 (unified)

endianess annotations for xfs_dir2_data_hdr structure.
Merge of xfs-linux-melb:xfs-kern:25484a by kenmcd.

Revision 1.44 / (download) - annotate - [select for diffs], Fri Sep 23 03:51:28 2005 UTC (12 years ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.43: +12 -26 lines
Diff to previous 1.43 (unified)

Update license/copyright notices to match the prefered SGI boilerplate.
Merge of xfs-linux-melb:xfs-kern:23903a by kenmcd.

Revision 1.43 / (download) - annotate - [select for diffs], Fri Sep 23 03:48:50 2005 UTC (12 years ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.42: +4 -12 lines
Diff to previous 1.42 (unified)

Remove xfs_macros.c, xfs_macros.h, rework headers a whole lot.
Merge of xfs-linux-melb:xfs-kern:23901a by kenmcd.

Revision 1.42 / (download) - annotate - [select for diffs], Fri Jan 14 11:57:33 2005 UTC (12 years, 9 months ago) by hch
Branch: MAIN
Changes since 1.41: +10 -10 lines
Diff to previous 1.41 (unified)

Remove INT_ZERO and INT_ISZERO
0 is 0 in all endianess variant.  No need for INT_ZERO and INT_ISZERO

Revision 1.41 / (download) - annotate - [select for diffs], Wed Jan 12 22:38:29 2005 UTC (12 years, 9 months ago) by hch
Branch: MAIN
Changes since 1.40: +1 -1 lines
Diff to previous 1.40 (unified)

Stop passing ARCH_CONVERT/ARCH_NOCONVERT around everywhere
stop passing ARCH_CONVERT/ARCH_NOCONVERT around everywhere

Revision 1.40 / (download) - annotate - [select for diffs], Fri Apr 16 15:54:36 2004 UTC (13 years, 6 months ago) by cattelan
Branch: MAIN
Changes since 1.39: +23 -2 lines
Diff to previous 1.39 (unified)

Fix for the xfs dir2 rebalance bug.
So this was a fun one to track down.
This bug has existed  since version 1.1 of the dir2 code.


xfs_dir2_leafn_rebalance splits a directory tree block into 
2 balanced blocks and then calculates the new index in either the
old block or the new block relying on the hash value.
This doesn't work in the case of a new to be inserted elements hash value
being the same as an already existing elements hash value.

This resulted in a negative index being returned and then passed to 
xfs_dir2_leafn_add, which it then used as a starting address in
the elements array. 

The address (which is now pointing to somebody else's memory) was then
passed to memmove to move the tail of the array down 8 bytes.

Depending on the size of the array this would move all sorts of
possibly important info belong to somebody else 8 bytes down.


As part of the fix add a sanity check to xfs_dir2_leafn_add 
to make nobody else is passing in a negative index.

Revision 1.39 / (download) - annotate - [select for diffs], Wed Jan 21 06:29:05 2004 UTC (13 years, 8 months ago) by nathans
Branch: MAIN
Changes since 1.38: +7 -6 lines
Diff to previous 1.38 (unified)

Fix a trivial compiler warning, remove some no-longer-used macros.

Revision 1.38 / (download) - annotate - [select for diffs], Thu Oct 9 17:49:15 2003 UTC (14 years ago) by overby
Branch: MAIN
Changes since 1.37: +46 -71 lines
Diff to previous 1.37 (unified)

xfs_dir2_node_addname_int had reminants of an old block placement
algorithm in it.  The old algorithm appeared to look for the first
place to put a new data block, and thus a new freespace block (this is
where the 'foundindex' variable came from).  However, new space in a
directory is always added at the lowest file offset as determined by
the extent list.  So this stuff is never used.

I completely ripped out the reminants of the old algorithm, and
(again) moved the freespace block add code inside the conditional
where a data block is added.
in xfs_dir2_node_addname_int, remove reminants of an old block
placement algorithm.  Move the freespace block add code inside inside
the conditional where a data block is added.

Revision 1.37 / (download) - annotate - [select for diffs], Fri Jun 27 18:04:26 2003 UTC (14 years, 3 months ago) by cattelan
Branch: MAIN
Changes since 1.36: +2023 -0 lines
Diff to previous 1.36 (unified)

The Big Move
linux/fs/xfs/xfs_dir2_node.c 1.35 Renamed to xfs_dir2_node.c

Revision 1.36 / (download) - annotate - [select for diffs], Fri Jun 27 17:57:21 2003 UTC (14 years, 3 months ago) by cattelan
Branch: MAIN
CVS Tags: DENUKE
Changes since 1.35: +0 -2023 lines
Diff to previous 1.35 (unified)

Nuke

Revision 1.35 / (download) - annotate - [select for diffs], Thu May 1 16:22:06 2003 UTC (14 years, 5 months ago) by cattelan
Branch: MAIN
CVS Tags: XFS-1_3_0pre1
Changes since 1.34: +26 -1 lines
Diff to previous 1.34 (unified)

Rework the way xfs includes xfs_<blah>.h headers.
This reduces a lot of the compile dependenciesÂ,
and should reduce some of the "recompile all" situations.

Revision 1.34 / (download) - annotate - [select for diffs], Tue Apr 15 23:16:46 2003 UTC (14 years, 6 months ago) by cattelan
Branch: MAIN
Changes since 1.33: +12 -12 lines
Diff to previous 1.33 (unified)

Whitespace cleanup
Clean up some whitespace... revert some whitespace changes from previous whitespace cleanup (incorrect tabs)

Revision 1.33 / (download) - annotate - [select for diffs], Thu Mar 6 04:28:53 2003 UTC (14 years, 7 months ago) by nathans
Branch: MAIN
Changes since 1.32: +2 -1 lines
Diff to previous 1.32 (unified)

Fix up print format compiler warnings.

Revision 1.32 / (download) - annotate - [select for diffs], Tue Mar 4 23:51:58 2003 UTC (14 years, 7 months ago) by sandeen
Branch: MAIN
Changes since 1.31: +18 -9 lines
Diff to previous 1.31 (unified)

Last of the dir2 backmerges from Irix
Merge of irix6.5f:irix:137928a originally by overby on 02/04/03
  Merge of grove2-6520stage:irix:137928a by roehrich.
  Merge of cxfs-client2.5.0:irix:137928a by roehrich.
  Merge of grove2:irix:137928a by roehrich.
  Fix xfs_dir2_node_addname_int call to xfs_da_read_buf.  Allow it to return a
  NULL buf pointer if the block isn't there.

Merge of irix6.5f:irix:137929a originally by overby on 02/04/03
  Merge of grove2-6520stage:irix:137929a by roehrich.
  Merge of cxfs-client2.5.0:irix:137929a by roehrich.
  Merge of grove2:irix:137929a by roehrich.
  in xfs_dir2_node_trim_free, make reading a nonexistant freespace block
  a non-fatal error.

Merge of irix6.5f:irix:138887a originally by overby on 02/06/03
  Merge of irix6.5m:irix:138887a by overby.
  Check for a NULL freespace buffer pointer before calling xfs_da_buf_done.

Revision 1.31 / (download) - annotate - [select for diffs], Tue Mar 4 22:32:14 2003 UTC (14 years, 7 months ago) by overby
Branch: MAIN
Changes since 1.30: +63 -61 lines
Diff to previous 1.30 (unified)

Rearrange leaf space allocation
Merge of irix6.5f:irix:136459a by sandeen.

  Merge of grove2-6520stage:irix:136459a by roehrich.
  Merge of grove2:irix:136459a by roehrich.
  Move the leaf space allocation in xfs_dir2_node_addname_int from
  before allocating data space to within data space allocation.  This is
  to fix a problem where new leaf space block was not allocated when it
  should have been.  Now xfs_node_addname_int will allocate a free space
  block if it finds that the one it needs is missing.

Revision 1.30 / (download) - annotate - [select for diffs], Tue Mar 4 21:16:58 2003 UTC (14 years, 7 months ago) by overby
Branch: MAIN
Changes since 1.29: +8 -4 lines
Diff to previous 1.29 (unified)

Fix freespace entry search to handle holes in the freespace area correctly.
Merge of irix6.5f:irix:133509a by sandeen.

  Merge of grove2-6520stage:irix:133509a by roehrich.
  Merge of grove2:irix:133509a by roehrich.
  Fix freespace entry search to handle holes in the freespace area correctly.

Revision 1.29 / (download) - annotate - [select for diffs], Tue Mar 4 20:15:43 2003 UTC (14 years, 7 months ago) by overby
Branch: MAIN
Changes since 1.28: +3 -1 lines
Diff to previous 1.28 (unified)

Add error reporting calls in error paths that return EFSCORRUPTED
Merge of irix6.5f:irix:136445a by sandeen.

  Merge of grove2-6520stage:irix:136445a by roehrich.
  Merge of grove2:irix:136445a by roehrich.
  Add error reporting calls in error paths that return EFSCORRUPTED

Revision 1.28 / (download) - annotate - [select for diffs], Mon Oct 21 05:23:40 2002 UTC (15 years ago) by nathans
Branch: MAIN
Changes since 1.27: +4 -0 lines
Diff to previous 1.27 (unified)

Fix xfs_da_node_split handling of dir/attr buffers for filesystems built
with a directory block size larger than the filesystem (and hence attr)
blocksize.  This does not affect filesystems built with default mkfs.xfs
parameters, and only hits when a large number of attributes are set on
an inode.
Fix a problem in the dabuf (dir/attr buffer) layer which deals with
calculating when a block should be split in two.  Previously there was
only one constant used in the test.  When V2 directories have a block
size larger than the fs block size, the constant is too large for
extended attributes.  So, replace this constant with two, and make the
dabuf code use the correct one based upon being used for attributes or
directories.

Revision 1.27 / (download) - annotate - [select for diffs], Wed Oct 9 03:06:48 2002 UTC (15 years ago) by nathans
Branch: MAIN
Changes since 1.26: +12 -12 lines
Diff to previous 1.26 (unified)

Global search and replace of the b* memory routines to their mem* equivalents.
(bcopy->memcopy, ovbcopy->memmove, bzero->memset, bcmp->memcmp).

Revision 1.26 / (download) - annotate - [select for diffs], Fri Sep 20 08:20:25 2002 UTC (15 years, 1 month ago) by nathans
Branch: MAIN
Changes since 1.25: +0 -4 lines
Diff to previous 1.25 (unified)

Undoes mod:     2.4.x-xfs:slinx:127949a
Undo extended attribute/directory block splitting change.

Revision 1.25 / (download) - annotate - [select for diffs], Fri Sep 20 05:03:21 2002 UTC (15 years, 1 month ago) by nathans
Branch: MAIN
Changes since 1.24: +4 -0 lines
Diff to previous 1.24 (unified)

Fix xfs_da_node_split handling of dir/attr buffers for filesystems built
with a directory block size larger than the filesystem (and hence attr)
blocksize.  This does not affect filesystems built with default mkfs.xfs
parameters, and only hits when a large number of attributes are set on
an inode.
Fix a problem in the dabuf (dir/attr buffer) layer which deals with
calculating when a block should be split in two.  Previously there was
only one constant used in the test.  When V2 directories have a block
size larger than the fs block size, the constant is too large for
extended attributes.  So, replace this constant with two, and make the
dabuf code use the correct one based upon being used for attributes or
directories.

Revision 1.24 / (download) - annotate - [select for diffs], Wed Jul 10 19:00:42 2002 UTC (15 years, 3 months ago) by sandeen
Branch: MAIN
Changes since 1.23: +27 -27 lines
Diff to previous 1.23 (unified)

whitespace cleanup

Revision 1.23 / (download) - annotate - [select for diffs], Tue Jun 4 16:30:46 2002 UTC (15 years, 4 months ago) by sandeen
Branch: MAIN
Changes since 1.22: +1 -1 lines
Diff to previous 1.22 (unified)

Update copyright dates

Revision 1.22 / (download) - annotate - [select for diffs], Mon Apr 1 22:46:06 2002 UTC (15 years, 6 months ago) by sandeen
Branch: MAIN
Changes since 1.21: +1 -1 lines
Diff to previous 1.21 (unified)

Optimize endian flipping code when setting to or testing for zero
Use INT_ZERO and INT_ISZERO instead of INT_SET and INT_GET

Revision 1.21 / (download) - annotate - [select for diffs], Mon Apr 23 19:52:01 2001 UTC (16 years, 5 months ago) by ananth
Branch: MAIN
CVS Tags: Linux-2_4_5-merge
Changes since 1.20: +0 -35 lines
Diff to previous 1.20 (unified)

Remove unused debug code.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Apr 13 00:04:55 2001 UTC (16 years, 6 months ago) by nathans
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (unified)

newer version of gcc picks up a couple more warnings.

Revision 1.19 / (download) - annotate - [select for diffs], Thu Apr 12 23:35:02 2001 UTC (16 years, 6 months ago) by nathans
Branch: MAIN
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (unified)

tidy up spurious whitespace & offsetting uncleanliness for those
routines which I'm syncing with userspace at the moment.

Revision 1.18 / (download) - annotate - [select for diffs], Wed Apr 11 01:44:54 2001 UTC (16 years, 6 months ago) by cattelan
Branch: MAIN
Changes since 1.17: +35 -68 lines
Diff to previous 1.17 (unified)

Get rid of the last compiler warning OFF flags

Revision 1.17 / (download) - annotate - [select for diffs], Tue Sep 26 02:03:57 2000 UTC (17 years ago) by dxm
Branch: MAIN
CVS Tags: Release-1_0_0, PreRelease-0_10
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (unified)

pv 801066

Revision 1.16 / (download) - annotate - [select for diffs], Mon Sep 25 05:42:07 2000 UTC (17 years ago) by nathans
Branch: MAIN
Changes since 1.15: +4 -59 lines
Diff to previous 1.15 (unified)

use xfs.h, remove all traces of SIM, push extern declarations into headers,
dead code removal.

Revision 1.15 / (download) - annotate - [select for diffs], Mon Aug 7 15:12:24 2000 UTC (17 years, 2 months ago) by lord
Branch: MAIN
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (unified)

Fix an assert to not require 64 bit divide.

Revision 1.14 / (download) - annotate - [select for diffs], Thu Jul 20 17:56:03 2000 UTC (17 years, 3 months ago) by cattelan
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (unified)

Don't include kdb if kdb isn't installed or config'ed on

Revision 1.13 / (download) - annotate - [select for diffs], Fri Jun 9 04:40:42 2000 UTC (17 years, 4 months ago) by dxm
Branch: MAIN
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (unified)

need INT_GET/INT_SET on copy if types are different
Merge of 2.3.99pre2-xfs:slinx:62352a by ananth.

Revision 1.12 / (download) - annotate - [select for diffs], Fri Jun 9 04:39:57 2000 UTC (17 years, 4 months ago) by dxm
Branch: MAIN
Changes since 1.11: +164 -164 lines
Diff to previous 1.11 (unified)

ARCH: Support big-endian ONLY
Merge of 2.3.99pre2-xfs:slinx:62350a by ananth.

Revision 1.11 / (download) - annotate - [select for diffs], Fri Jun 9 03:31:04 2000 UTC (17 years, 4 months ago) by dxm
Branch: MAIN
Changes since 1.10: +14 -14 lines
Diff to previous 1.10 (unified)

architecture mods - dir2 btree
Merge of 2.3.99pre2-xfs:slinx:57465a by ananth.

Revision 1.10 / (download) - annotate - [select for diffs], Fri Jun 9 03:29:54 2000 UTC (17 years, 4 months ago) by dxm
Branch: MAIN
Changes since 1.9: +188 -152 lines
Diff to previous 1.9 (unified)

dir2 architecture mods
Merge of 2.3.99pre2-xfs:slinx:57286a by ananth.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Jun 9 02:50:02 2000 UTC (17 years, 4 months ago) by kenmcd
Branch: MAIN
CVS Tags: GPL-ENCUMBRANCE
Changes since 1.8: +25 -11 lines
Diff to previous 1.8 (unified)

Updated copyright and license notices, ready for open source release
Merge of 2.3.99pre2-xfs:slinx:55821a by ananth.

Revision 1.8 / (download) - annotate - [select for diffs], Fri Jun 9 02:10:00 2000 UTC (17 years, 4 months ago) by cattelan
Branch: MAIN
CVS Tags: DELETE
Changes since 1.7: +1 -1 lines
Diff to previous 1.7 (unified)

Merge of 2.3.99pre2-xfs:slinx:46541a by ananth.

  Merge of 2.3.42-xfs:slinx:46541a by ananth.
  Header file cleanup
  removed the last of the
  #if defined(__linux__)
  #include <xfs_linux>
  #endif
  All os specific include file switches should now done
  in xfs_os_defs.h

Revision 1.7 / (download) - annotate - [select for diffs], Fri Jun 9 01:50:04 2000 UTC (17 years, 4 months ago) by nathans
Branch: MAIN
Changes since 1.6: +2 -5 lines
Diff to previous 1.6 (unified)

Merge of 2.3.99pre2-xfs:slinx:46428a by ananth.

  Merge of 2.3.42-xfs:slinx:46428a by ananth.
  remove unused include files.

Revision 1.6 / (download) - annotate - [select for diffs], Fri Jun 9 00:03:30 2000 UTC (17 years, 4 months ago) by cattelan
Branch: MAIN
Changes since 1.5: +19 -1 lines
Diff to previous 1.5 (unified)

Merge of 2.3.99pre2-xfs:slinx:44186a by ananth.

  Merge of 2.3.42-xfs:slinx:44186a by ananth.
  Copied GPL from slinx-xfs tree.

Revision 1.5 / (download) - annotate - [select for diffs], Wed Nov 17 19:22:23 1999 UTC (17 years, 11 months ago) by lord
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (unified)

replace struct buf and buf_t references with xfs_buf and xfs_buf_t

Revision 1.4 / (download) - annotate - [select for diffs], Wed Aug 18 17:43:46 1999 UTC (18 years, 2 months ago) by cattelan
Branch: MAIN
Changes since 1.3: +4 -1 lines
Diff to previous 1.3 (unified)

First compiling version of mkfs unsing XFS libsim.
Mostly just addtions of cut up irix header files.

Revision 1.3 / (download) - annotate - [select for diffs], Tue Jun 22 23:39:58 1999 UTC (18 years, 4 months ago) by overby
Branch: MAIN
Changes since 1.2: +4 -0 lines
Diff to previous 1.2 (unified)

Add an early return to xfs_dir2_leafn_add for when it's called by
xfs_dir2_canenter.  When just checking, return before adding the new
hash value to the B+Tree.

Revision 1.2 / (download) - annotate - [select for diffs], Wed Mar 24 22:18:53 1999 UTC (18 years, 6 months ago) by overby
Branch: MAIN
Changes since 1.1: +1 -1 lines
Diff to previous 1.1 (unified)

Fix how we decide when to do compaction of leaf nodes.  Do it when
there is more than one stale leaf entry.

Revision 1.1 / (download) - annotate - [select for diffs], Thu Feb 4 01:28:30 1999 UTC (18 years, 8 months ago) by doucette
Branch: MAIN

xfs v2 multiple data & index block directories.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>