• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/fs/xfs/

Lines Matching defs:bip

47 	xfs_buf_log_item_t	*bip,
60 ASSERT(bip->bli_logged != NULL);
63 bfset(bip->bli_logged, first, nbytes);
68 wordp = &(bip->bli_format.blf_data_map[word_num]);
86 xfs_buf_log_item_t *bip;
89 bip = XFS_BUF_FSPRIVATE(bp, xfs_buf_log_item_t*);
90 if ((bip == NULL) || (bip->bli_item.li_type != XFS_LI_BUF)) {
94 ASSERT(bip->bli_logged != NULL);
96 bfset(bip->bli_logged, first, nbytes);
110 xfs_buf_log_item_t *bip)
117 ASSERT(bip->bli_orig != NULL);
118 ASSERT(bip->bli_logged != NULL);
120 bp = bip->bli_buf;
123 orig = bip->bli_orig;
126 if (orig[x] != buffer[x] && !btst(bip->bli_logged, x))
128 "xfs_buf_item_log_check bip %x buffer %x orig %x index %d",
129 bip, bp, orig, x);
152 xfs_buf_log_item_t *bip)
159 ASSERT(atomic_read(&bip->bli_refcount) > 0);
160 if (bip->bli_flags & XFS_BLI_STALE) {
166 xfs_buf_item_trace("SIZE STALE", bip);
167 ASSERT(bip->bli_format.blf_flags & XFS_BLI_CANCEL);
171 bp = bip->bli_buf;
172 ASSERT(bip->bli_flags & XFS_BLI_LOGGED);
174 last_bit = xfs_next_bit(bip->bli_format.blf_data_map,
175 bip->bli_format.blf_map_size, 0);
185 next_bit = xfs_next_bit(bip->bli_format.blf_data_map,
186 bip->bli_format.blf_map_size,
208 xfs_buf_item_trace("SIZE NORM", bip);
220 xfs_buf_log_item_t *bip,
233 ASSERT(atomic_read(&bip->bli_refcount) > 0);
234 ASSERT((bip->bli_flags & XFS_BLI_LOGGED) ||
235 (bip->bli_flags & XFS_BLI_STALE));
236 bp = bip->bli_buf;
248 ((bip->bli_format.blf_map_size - 1) * sizeof(uint)));
249 vecp->i_addr = (xfs_caddr_t)&bip->bli_format;
255 if (bip->bli_flags & XFS_BLI_STALE) {
261 xfs_buf_item_trace("FORMAT STALE", bip);
262 ASSERT(bip->bli_format.blf_flags & XFS_BLI_CANCEL);
263 bip->bli_format.blf_size = nvecs;
270 first_bit = xfs_next_bit(bip->bli_format.blf_data_map,
271 bip->bli_format.blf_map_size, 0);
282 next_bit = xfs_next_bit(bip->bli_format.blf_data_map,
283 bip->bli_format.blf_map_size,
332 bip->bli_format.blf_size = nvecs;
337 xfs_buf_item_trace("FORMAT NORM", bip);
338 xfs_buf_item_log_check(bip);
348 xfs_buf_log_item_t *bip)
352 bp = bip->bli_buf;
354 ASSERT(atomic_read(&bip->bli_refcount) > 0);
355 ASSERT((bip->bli_flags & XFS_BLI_LOGGED) ||
356 (bip->bli_flags & XFS_BLI_STALE));
357 xfs_buf_item_trace("PIN", bip);
374 xfs_buf_log_item_t *bip,
382 bp = bip->bli_buf;
384 ASSERT(XFS_BUF_FSPRIVATE(bp, xfs_buf_log_item_t *) == bip);
385 ASSERT(atomic_read(&bip->bli_refcount) > 0);
386 xfs_buf_item_trace("UNPIN", bip);
389 freed = atomic_dec_and_test(&bip->bli_refcount);
390 mp = bip->bli_item.li_mountp;
393 ASSERT(bip->bli_flags & XFS_BLI_STALE);
397 ASSERT(bip->bli_format.blf_flags & XFS_BLI_CANCEL);
398 xfs_buf_item_trace("UNPIN STALE", bip);
406 if (bip->bli_flags & XFS_BLI_STALE_INODE) {
407 xfs_buf_do_callbacks(bp, (xfs_log_item_t *)bip);
412 xfs_trans_delete_ail(mp, (xfs_log_item_t *)bip, s);
429 xfs_buf_log_item_t *bip,
436 bp = bip->bli_buf;
440 if ((atomic_read(&bip->bli_refcount) == 1) &&
441 (bip->bli_flags & XFS_BLI_STALE)) {
442 ASSERT(XFS_BUF_VALUSEMA(bip->bli_buf) <= 0);
443 xfs_buf_item_trace("UNPIN REMOVE", bip);
453 lidp = xfs_trans_find_item(tp, (xfs_log_item_t *) bip);
463 xfs_buf_item_unpin(bip, stale);
476 xfs_buf_log_item_t *bip)
480 bp = bip->bli_buf;
497 ASSERT(!(bip->bli_flags & XFS_BLI_STALE));
498 xfs_buf_item_trace("TRYLOCK SUCCESS", bip);
520 xfs_buf_log_item_t *bip)
526 bp = bip->bli_buf;
541 aborted = (bip->bli_item.li_flags & XFS_LI_ABORTED) != 0;
548 if (bip->bli_flags & XFS_BLI_STALE) {
549 bip->bli_flags &= ~XFS_BLI_LOGGED;
550 xfs_buf_item_trace("UNLOCK STALE", bip);
551 ASSERT(bip->bli_format.blf_flags & XFS_BLI_CANCEL);
562 if (!(bip->bli_flags & XFS_BLI_LOGGED)) {
563 atomic_dec(&bip->bli_refcount);
569 bip->bli_flags &= ~XFS_BLI_LOGGED;
576 hold = bip->bli_flags & XFS_BLI_HOLD;
577 xfs_buf_item_trace("UNLOCK", bip);
583 if (xfs_count_bits(bip->bli_format.blf_data_map,
584 bip->bli_format.blf_map_size, 0) == 0) {
587 bip->bli_flags &= ~XFS_BLI_HOLD;
618 xfs_buf_log_item_t *bip,
621 xfs_buf_item_trace("COMMITTED", bip);
622 if ((bip->bli_flags & XFS_BLI_INODE_ALLOC_BUF) &&
623 (bip->bli_item.li_lsn != 0)) {
624 return bip->bli_item.li_lsn;
638 xfs_buf_log_item_t *bip)
642 ASSERT(!(bip->bli_flags & XFS_BLI_STALE));
643 xfs_buf_item_trace("PUSH", bip);
645 bp = bip->bli_buf;
648 xfs_bawrite(bip->bli_item.li_mountp, bp);
656 xfs_buf_item_committing(xfs_buf_log_item_t *bip, xfs_lsn_t commit_lsn)
695 xfs_buf_log_item_t *bip;
724 bip = (xfs_buf_log_item_t*)kmem_zone_zalloc(xfs_buf_item_zone,
726 bip->bli_item.li_type = XFS_LI_BUF;
727 bip->bli_item.li_ops = &xfs_buf_item_ops;
728 bip->bli_item.li_mountp = mp;
729 bip->bli_buf = bp;
730 bip->bli_format.blf_type = XFS_LI_BUF;
731 bip->bli_format.blf_blkno = (__int64_t)XFS_BUF_ADDR(bp);
732 bip->bli_format.blf_len = (ushort)BTOBB(XFS_BUF_COUNT(bp));
733 bip->bli_format.blf_map_size = map_size;
735 bip->bli_trace = ktrace_alloc(XFS_BLI_TRACE_SIZE, KM_SLEEP);
747 bip->bli_orig = (char *)kmem_alloc(XFS_BUF_COUNT(bp), KM_SLEEP);
748 memcpy(bip->bli_orig, XFS_BUF_PTR(bp), XFS_BUF_COUNT(bp));
749 bip->bli_logged = (char *)kmem_zalloc(XFS_BUF_COUNT(bp) / NBBY, KM_SLEEP);
757 bip->bli_item.li_bio_list =
760 XFS_BUF_SET_FSPRIVATE(bp, bip);
770 xfs_buf_log_item_t *bip,
788 bip->bli_flags |= XFS_BLI_DIRTY;
806 wordp = &(bip->bli_format.blf_data_map[word_num]);
850 xfs_buf_item_log_debug(bip, first, last);
860 xfs_buf_log_item_t *bip)
862 return (bip->bli_flags & XFS_BLI_DIRTY);
876 xfs_buf_log_item_t *bip;
879 bip = XFS_BUF_FSPRIVATE(bp, xfs_buf_log_item_t*);
880 XFS_BUF_SET_FSPRIVATE(bp, bip->bli_item.li_bio_list);
887 kmem_free(bip->bli_orig, XFS_BUF_COUNT(bp));
888 bip->bli_orig = NULL;
889 kmem_free(bip->bli_logged, XFS_BUF_COUNT(bp) / NBBY);
890 bip->bli_logged = NULL;
894 ktrace_free(bip->bli_trace);
896 kmem_zone_free(xfs_buf_item_zone, bip);
1112 xfs_buf_log_item_t *bip)
1117 ASSERT(bip->bli_buf == bp);
1119 mp = bip->bli_item.li_mountp;
1134 xfs_trans_delete_ail(mp, (xfs_log_item_t *)bip, s);
1137 kmem_free(bip->bli_orig, XFS_BUF_COUNT(bp));
1138 bip->bli_orig = NULL;
1139 kmem_free(bip->bli_logged, XFS_BUF_COUNT(bp) / NBBY);
1140 bip->bli_logged = NULL;
1144 ktrace_free(bip->bli_trace);
1146 kmem_zone_free(xfs_buf_item_zone, bip);
1153 xfs_buf_log_item_t *bip)
1156 ASSERT(bip->bli_trace != NULL);
1158 bp = bip->bli_buf;
1159 ktrace_enter(bip->bli_trace,
1161 (void *)bip->bli_buf,
1162 (void *)((unsigned long)bip->bli_flags),
1163 (void *)((unsigned long)bip->bli_recur),
1164 (void *)((unsigned long)atomic_read(&bip->bli_refcount)),
1175 (void *)bip->bli_item.li_desc,
1176 (void *)((unsigned long)bip->bli_item.li_flags));