On Mon, Jun 14, 2010 at 10:13:56AM +0200, Andi Kleen wrote:
> - /* REFERENCED */
> - xfs_da_blkinfo_t *blkinfo;
> xfs_da_args_t *args;
> xfs_dablk_t child;
> xfs_dabuf_t *bp;
> @@ -742,15 +738,14 @@ xfs_da_root_join(xfs_da_state_t *state,
> if (error)
> return(error);
> ASSERT(bp != NULL);
> - blkinfo = bp->data;
> if (be16_to_cpu(oldroot->hdr.level) == 1) {
> - ASSERT(be16_to_cpu(blkinfo->magic) == XFS_DIR2_LEAFN_MAGIC ||
> - be16_to_cpu(blkinfo->magic) == XFS_ATTR_LEAF_MAGIC);
> + ASSERT(be16_to_cpu(bp->data->magic) == XFS_DIR2_LEAFN_MAGIC ||
> + be16_to_cpu(bp->data->magic) == XFS_ATTR_LEAF_MAGIC);
> } else {
> - ASSERT(be16_to_cpu(blkinfo->magic) == XFS_DA_NODE_MAGIC);
> + ASSERT(be16_to_cpu(bp->data->magic) == XFS_DA_NODE_MAGIC);
How can this work? bp->data is a void pointer.
> @@ -174,7 +173,6 @@ _xfs_filestream_pick_ag(
> /* Keep track of the AG with the most free blocks. */
> if (pag->pagf_freeblks > maxfree) {
> maxfree = pag->pagf_freeblks;
> - max_streams = atomic_read(&pag->pagf_fstrms);
> max_ag = ag;
> }
>
> @@ -196,8 +194,6 @@ _xfs_filestream_pick_ag(
> (flags & XFS_PICK_LOWSPACE))) {
>
> /* Break out, retaining the reference on the AG. */
> - free = pag->pagf_freeblks;
> - streams = atomic_read(&pag->pagf_fstrms);
These are used by the tracing code not yet converted to the new tracing
infrastructure. I think I'll prefer to just add the new tracing code
ASAP to make the warnings go away.
> break;
> }
> @@ -364,7 +358,8 @@ xfs_fstrm_free_func(
> /* Drop the reference taken on the AG when the item was added. */
> ref = xfs_filestream_put_ag(ip->i_mount, item->ag);
>
> - ASSERT(ref >= 0);
> + if (ref < 0)
> + ASSERT(0);
We never use the return value of xfs_filestream_put_ag, so we an just
make it return void (and move it to xfs_filestreams.c while at it).
|