Lines Matching refs:vb
640 struct vblk *vb; in ldm_create_data_partitions() local
657 vb = list_entry (item, struct vblk, list); in ldm_create_data_partitions()
658 part = &vb->vblk.part; in ldm_create_data_partitions()
786 static bool ldm_parse_cmp3 (const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_cmp3() argument
791 BUG_ON (!buffer || !vb); in ldm_parse_cmp3()
815 comp = &vb->vblk.comp; in ldm_parse_cmp3()
837 static int ldm_parse_dgr3 (const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_dgr3() argument
842 BUG_ON (!buffer || !vb); in ldm_parse_dgr3()
864 dgrp = &vb->vblk.dgrp; in ldm_parse_dgr3()
881 static bool ldm_parse_dgr4 (const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_dgr4() argument
887 BUG_ON (!buffer || !vb); in ldm_parse_dgr4()
908 dgrp = &vb->vblk.dgrp; in ldm_parse_dgr4()
925 static bool ldm_parse_dsk3 (const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_dsk3() argument
930 BUG_ON (!buffer || !vb); in ldm_parse_dsk3()
944 disk = &vb->vblk.disk; in ldm_parse_dsk3()
964 static bool ldm_parse_dsk4 (const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_dsk4() argument
969 BUG_ON (!buffer || !vb); in ldm_parse_dsk4()
981 disk = &vb->vblk.disk; in ldm_parse_dsk4()
997 static bool ldm_parse_prt3(const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_prt3() argument
1002 BUG_ON(!buffer || !vb); in ldm_parse_prt3()
1049 part = &vb->vblk.part; in ldm_parse_prt3()
1055 if (vb->flags & VBLK_FLAG_PART_INDEX) in ldm_parse_prt3()
1073 static bool ldm_parse_vol5(const u8 *buffer, int buflen, struct vblk *vb) in ldm_parse_vol5() argument
1079 BUG_ON(!buffer || !vb); in ldm_parse_vol5()
1154 volu = &vb->vblk.volu; in ldm_parse_vol5()
1182 static bool ldm_parse_vblk (const u8 *buf, int len, struct vblk *vb) in ldm_parse_vblk() argument
1187 BUG_ON (!buf || !vb); in ldm_parse_vblk()
1195 vb->flags = buf[0x12]; in ldm_parse_vblk()
1196 vb->type = buf[0x13]; in ldm_parse_vblk()
1197 vb->obj_id = ldm_get_vnum (buf + 0x18); in ldm_parse_vblk()
1198 ldm_get_vstr (buf+0x18+r_objid, vb->name, sizeof (vb->name)); in ldm_parse_vblk()
1200 switch (vb->type) { in ldm_parse_vblk()
1201 case VBLK_CMP3: result = ldm_parse_cmp3 (buf, len, vb); break; in ldm_parse_vblk()
1202 case VBLK_DSK3: result = ldm_parse_dsk3 (buf, len, vb); break; in ldm_parse_vblk()
1203 case VBLK_DSK4: result = ldm_parse_dsk4 (buf, len, vb); break; in ldm_parse_vblk()
1204 case VBLK_DGR3: result = ldm_parse_dgr3 (buf, len, vb); break; in ldm_parse_vblk()
1205 case VBLK_DGR4: result = ldm_parse_dgr4 (buf, len, vb); break; in ldm_parse_vblk()
1206 case VBLK_PRT3: result = ldm_parse_prt3 (buf, len, vb); break; in ldm_parse_vblk()
1207 case VBLK_VOL5: result = ldm_parse_vol5 (buf, len, vb); break; in ldm_parse_vblk()
1212 (unsigned long long) vb->obj_id, vb->type); in ldm_parse_vblk()
1215 (unsigned long long) vb->obj_id, vb->type); in ldm_parse_vblk()
1236 struct vblk *vb; in ldm_ldmdb_add() local
1241 vb = kmalloc (sizeof (*vb), GFP_KERNEL); in ldm_ldmdb_add()
1242 if (!vb) { in ldm_ldmdb_add()
1247 if (!ldm_parse_vblk (data, len, vb)) { in ldm_ldmdb_add()
1248 kfree(vb); in ldm_ldmdb_add()
1253 switch (vb->type) { in ldm_ldmdb_add()
1256 list_add (&vb->list, &ldb->v_dgrp); in ldm_ldmdb_add()
1260 list_add (&vb->list, &ldb->v_disk); in ldm_ldmdb_add()
1263 list_add (&vb->list, &ldb->v_volu); in ldm_ldmdb_add()
1266 list_add (&vb->list, &ldb->v_comp); in ldm_ldmdb_add()
1272 if ((v->vblk.part.disk_id == vb->vblk.part.disk_id) && in ldm_ldmdb_add()
1273 (v->vblk.part.start > vb->vblk.part.start)) { in ldm_ldmdb_add()
1274 list_add_tail (&vb->list, &v->list); in ldm_ldmdb_add()
1278 list_add_tail (&vb->list, &ldb->v_part); in ldm_ldmdb_add()