Lines Matching refs:hdr

15 struct bloblist_rec *bloblist_first_blob(struct bloblist_hdr *hdr)  in bloblist_first_blob()  argument
17 if (hdr->alloced <= hdr->hdr_size) in bloblist_first_blob()
19 return (struct bloblist_rec *)((void *)hdr + hdr->hdr_size); in bloblist_first_blob()
22 struct bloblist_rec *bloblist_next_blob(struct bloblist_hdr *hdr, in bloblist_next_blob() argument
27 offset = (void *)rec - (void *)hdr; in bloblist_next_blob()
29 if (offset >= hdr->alloced) in bloblist_next_blob()
31 return (struct bloblist_rec *)((void *)hdr + offset); in bloblist_next_blob()
41 struct bloblist_hdr *hdr = gd->bloblist; in bloblist_findrec() local
44 if (!hdr) in bloblist_findrec()
47 foreach_rec(rec, hdr) { in bloblist_findrec()
57 struct bloblist_hdr *hdr = gd->bloblist; in bloblist_addrec() local
61 new_alloced = hdr->alloced + sizeof(*rec) + in bloblist_addrec()
63 if (new_alloced >= hdr->size) { in bloblist_addrec()
66 size, hdr->size, new_alloced); in bloblist_addrec()
69 rec = (void *)hdr + hdr->alloced; in bloblist_addrec()
70 hdr->alloced = new_alloced; in bloblist_addrec()
147 static u32 bloblist_calc_chksum(struct bloblist_hdr *hdr) in bloblist_calc_chksum() argument
152 chksum = crc32(0, (unsigned char *)hdr, in bloblist_calc_chksum()
154 foreach_rec(rec, hdr) { in bloblist_calc_chksum()
164 struct bloblist_hdr *hdr; in bloblist_new() local
166 if (size < sizeof(*hdr)) in bloblist_new()
170 hdr = map_sysmem(addr, size); in bloblist_new()
171 memset(hdr, '\0', sizeof(*hdr)); in bloblist_new()
172 hdr->version = BLOBLIST_VERSION; in bloblist_new()
173 hdr->hdr_size = sizeof(*hdr); in bloblist_new()
174 hdr->flags = flags; in bloblist_new()
175 hdr->magic = BLOBLIST_MAGIC; in bloblist_new()
176 hdr->size = size; in bloblist_new()
177 hdr->alloced = hdr->hdr_size; in bloblist_new()
178 hdr->chksum = 0; in bloblist_new()
179 gd->bloblist = hdr; in bloblist_new()
186 struct bloblist_hdr *hdr; in bloblist_check() local
189 hdr = map_sysmem(addr, sizeof(*hdr)); in bloblist_check()
190 if (hdr->magic != BLOBLIST_MAGIC) in bloblist_check()
192 if (hdr->version != BLOBLIST_VERSION) in bloblist_check()
194 if (size && hdr->size != size) in bloblist_check()
196 chksum = bloblist_calc_chksum(hdr); in bloblist_check()
197 if (hdr->chksum != chksum) { in bloblist_check()
198 log(LOGC_BLOBLIST, LOGL_ERR, "Checksum %x != %x\n", hdr->chksum, in bloblist_check()
202 gd->bloblist = hdr; in bloblist_check()
209 struct bloblist_hdr *hdr = gd->bloblist; in bloblist_finish() local
211 hdr->chksum = bloblist_calc_chksum(hdr); in bloblist_finish()