Lines Matching refs:fi
289 struct fragment_info *fi;
294 fi = list_entry(lh, struct fragment_info, list);
296 kfree(fi);
903 struct fragment_info *fi;
906 list_for_each_entry(fi, frag_list, list)
907 if (offset < fi->offset + fi->len && end > fi->offset)
928 struct fragment_info *fi, *fi2, *new;
931 fi = list_entry(lh, struct fragment_info, list);
932 if (fi->offset + fi->len == offset) {
934 fi->len += len;
937 if (fi->offset + fi->len == fi2->offset) {
939 fi->len += fi2->len;
944 } else if (offset + len == fi->offset) {
946 fi->offset = offset;
947 fi->len += len;
950 if (fi2->offset + fi2->len == fi->offset) {
952 fi2->len += fi->len;
954 kfree(fi);
957 } else if (offset > fi->offset + fi->len) {
959 } else if (offset + len < fi->offset) {
998 struct fragment_info *fi = list_entry(new->frag_info.next,
1001 kfree(fi);
1034 struct fragment_info *fi;
1037 fi = list_entry(pd->frag_info.next, struct fragment_info, list);
1039 return (fi->len == dg_size);