Lines Matching refs:tage

72 	struct cfs_trace_page *tage;
87 tage = kmalloc(sizeof(*tage), gfp);
88 if (tage == NULL) {
93 tage->page = page;
95 return tage;
98 static void cfs_tage_free(struct cfs_trace_page *tage)
100 __LASSERT(tage != NULL);
101 __LASSERT(tage->page != NULL);
103 __free_page(tage->page);
104 kfree(tage);
108 static void cfs_tage_to_tail(struct cfs_trace_page *tage,
111 __LASSERT(tage != NULL);
114 list_move_tail(&tage->linkage, queue);
128 struct cfs_trace_page *tage;
130 tage = cfs_tage_alloc(gfp);
131 if (tage == NULL)
133 list_add_tail(&tage->linkage, stock);
142 struct cfs_trace_page *tage;
146 tage = cfs_tage_from_list(tcd->tcd_pages.prev);
147 if (tage->used + len <= PAGE_CACHE_SIZE)
148 return tage;
153 tage = cfs_tage_from_list(tcd->tcd_stock_pages.prev);
155 list_del_init(&tage->linkage);
157 tage = cfs_tage_alloc(GFP_ATOMIC);
158 if (unlikely(tage == NULL)) {
162 "cannot allocate a tage (%ld)\n",
168 tage->used = 0;
169 tage->cpu = smp_processor_id();
170 tage->type = tcd->tcd_type;
171 list_add_tail(&tage->linkage, &tcd->tcd_pages);
181 return tage;
190 struct cfs_trace_page *tage;
206 list_for_each_entry_safe(tage, tmp, &tcd->tcd_pages, linkage) {
210 list_move_tail(&tage->linkage, &pc.pc_pages);
220 struct cfs_trace_page *tage;
233 tage = cfs_trace_get_tage_try(tcd, len);
234 if (tage != NULL)
235 return tage;
239 tage = cfs_tage_from_list(tcd->tcd_pages.next);
240 tage->used = 0;
241 cfs_tage_to_tail(tage, &tcd->tcd_pages);
243 return tage;
266 struct cfs_trace_page *tage;
314 tage = cfs_trace_get_tage(tcd, needed + known_size + 1);
315 if (tage == NULL) {
324 string_buf = (char *)page_address(tage->page) +
325 tage->used + known_size;
327 max_nob = PAGE_CACHE_SIZE - tage->used - known_size;
364 debug_buf = (char *)page_address(tage->page) + tage->used;
368 tage->used += sizeof(header);
375 ++ tage->used;
379 tage->used += strlen(file) + 1;
384 tage->used += strlen(msgdata->msg_fn) + 1;
390 tage->used += needed;
391 __LASSERT (tage->used <= PAGE_CACHE_SIZE);
557 struct cfs_trace_page *tage;
566 list_for_each_entry_safe(tage, tmp, &pc->pc_pages,
569 __LASSERT_TAGE_INVARIANT(tage);
571 if (tage->cpu != cpu || tage->type != i)
574 cfs_tage_to_tail(tage, cur_head);
595 struct cfs_trace_page *tage;
599 list_for_each_entry_safe(tage, tmp, &pc->pc_pages, linkage) {
601 __LASSERT_TAGE_INVARIANT(tage);
603 if (tage->cpu != tcd->tcd_cpu || tage->type != tcd->tcd_type)
606 cfs_tage_to_tail(tage, &tcd->tcd_daemon_pages);
639 struct cfs_trace_page *tage;
646 list_for_each_entry_safe(tage, tmp, &pc.pc_pages, linkage) {
650 __LASSERT_TAGE_INVARIANT(tage);
652 page = tage->page;
654 while (p < ((char *)page_address(page) + tage->used)) {
670 list_del(&tage->linkage);
671 cfs_tage_free(tage);
679 struct cfs_trace_page *tage;
708 list_for_each_entry_safe(tage, tmp, &pc.pc_pages, linkage) {
710 __LASSERT_TAGE_INVARIANT(tage);
712 buf = kmap(tage->page);
714 tage->used, &filp->f_pos);
715 kunmap(tage->page);
717 if (rc != (int)tage->used) {
719 "%d\n", tage->used, rc);
724 list_del(&tage->linkage);
725 cfs_tage_free(tage);
741 struct cfs_trace_page *tage;
748 list_for_each_entry_safe(tage, tmp, &pc.pc_pages, linkage) {
750 __LASSERT_TAGE_INVARIANT(tage);
752 list_del(&tage->linkage);
753 cfs_tage_free(tage);
975 struct cfs_trace_page *tage;
1020 list_for_each_entry_safe(tage, tmp, &pc.pc_pages,
1024 __LASSERT_TAGE_INVARIANT(tage);
1031 buf = kmap(tage->page);
1033 tage->used, &f_pos);
1034 kunmap(tage->page);
1036 if (rc != (int)tage->used) {
1038 "but wrote %d\n", tage->used, rc);
1062 list_for_each_entry_safe(tage, tmp, &pc.pc_pages,
1065 "%d\n", ++i, tage->cpu);
1162 struct cfs_trace_page *tage;
1170 list_for_each_entry_safe(tage, tmp, &tcd->tcd_pages,
1172 __LASSERT_TAGE_INVARIANT(tage);
1174 list_del(&tage->linkage);
1175 cfs_tage_free(tage);