Lines Matching refs:diskp

87 static int		add_disk2controller(disk_t *diskp,
102 static alias_t *find_alias(disk_t *diskp, char *kernel_name);
119 char *kernel_name, disk_t **diskp);
125 static int new_alias(disk_t *diskp, char *kernel_path,
128 static path_t *new_path(controller_t *cp, disk_t *diskp,
450 disk_t *diskp; in add_devpath() local
460 diskp = NULL; in add_devpath()
465 (void) have_disk(args, devidstr, kernel_name, &diskp); in add_devpath()
473 if (diskp != NULL) { in add_devpath()
477 if (diskp->drv_type != DM_DT_FLOPPY) { in add_devpath()
483 if (add_disk2controller(diskp, args) != 0) { in add_devpath()
497 if ((ap = find_alias(diskp, kernel_name)) == NULL) { in add_devpath()
498 if (new_alias(diskp, kernel_name, devlink_path, in add_devpath()
559 disk_t *diskp; in add_devs() local
571 if (!have_disk(args, devidstr, kernel_name, &diskp)) { in add_devs()
577 diskp = create_disk(devidstr, kernel_name, args); in add_devs()
578 if (diskp == NULL) { in add_devs()
582 if (diskp->drv_type != DM_DT_FLOPPY) { in add_devs()
585 if (add_disk2controller(diskp, in add_devs()
602 if ((ap = find_alias(diskp, kernel_name)) == NULL) { in add_devs()
603 if (new_alias(diskp, kernel_name, in add_devs()
657 add_disk2controller(disk_t *diskp, struct search_args *args) in add_disk2controller() argument
682 for (i = 0; diskp->controllers[i]; i++) { in add_disk2controller()
683 if (cp == diskp->controllers[i]) { in add_disk2controller()
691 if (add_ptr2array(diskp, (void ***)&cp->disks) != 0) { in add_disk2controller()
696 if (add_ptr2array(cp, (void ***)&diskp->controllers) != 0) { in add_disk2controller()
736 if (new_path(cp, diskp, phci_node, in add_disk2controller()
956 disk_t *diskp; in create_disk() local
965 diskp = calloc(1, sizeof (disk_t)); in create_disk()
966 if (diskp == NULL) { in create_disk()
970 diskp->controllers = (controller_t **) in create_disk()
972 if (diskp->controllers == NULL) { in create_disk()
973 cache_free_disk(diskp); in create_disk()
976 diskp->controllers[0] = NULL; in create_disk()
978 diskp->devid = NULL; in create_disk()
980 if ((diskp->device_id = strdup(deviceid)) == NULL) { in create_disk()
981 cache_free_disk(diskp); in create_disk()
984 (void) devid_str_decode(deviceid, &(diskp->devid), NULL); in create_disk()
988 diskp->kernel_name = strdup(kernel_name); in create_disk()
989 if (diskp->kernel_name == NULL) { in create_disk()
990 cache_free_disk(diskp); in create_disk()
995 diskp->paths = NULL; in create_disk()
996 diskp->aliases = NULL; in create_disk()
998 diskp->cd_rom = 0; in create_disk()
999 diskp->rpm = 0; in create_disk()
1000 diskp->solid_state = -1; in create_disk()
1005 if ((diskp->product_id = strdup(prod_id)) == NULL) { in create_disk()
1006 cache_free_disk(diskp); in create_disk()
1012 if ((diskp->product_id = strdup(prod_id)) == NULL) { in create_disk()
1013 cache_free_disk(diskp); in create_disk()
1021 if ((diskp->vendor_id = strdup(vendor_id)) == NULL) { in create_disk()
1022 cache_free_disk(diskp); in create_disk()
1028 if ((diskp->vendor_id = strdup(vendor_id)) == NULL) { in create_disk()
1029 cache_free_disk(diskp); in create_disk()
1044 diskp->drv_type = DM_DT_UNKNOWN; in create_disk()
1045 diskp->cd_rom = 1; in create_disk()
1046 diskp->removable = 1; in create_disk()
1048 diskp->drv_type = DM_DT_FLOPPY; in create_disk()
1049 diskp->removable = 1; in create_disk()
1052 diskp->removable = get_prop(REMOVABLE_PROP, args->node); in create_disk()
1054 if (diskp->removable == -1) { in create_disk()
1055 diskp->removable = 0; in create_disk()
1067 diskp->removable = 1; in create_disk()
1070 diskp->removable = 1; in create_disk()
1077 if (diskp->removable) { in create_disk()
1083 diskp->drv_type = DM_DT_UNKNOWN; in create_disk()
1087 diskp->drv_type = DM_DT_JAZ; in create_disk()
1090 diskp->drv_type = DM_DT_ZIP; in create_disk()
1094 diskp->drv_type = DM_DT_FIXED; in create_disk()
1098 diskp->next = args->disk_listp; in create_disk()
1099 args->disk_listp = diskp; in create_disk()
1101 return (diskp); in create_disk()
1151 find_alias(disk_t *diskp, char *kernel_name) in find_alias() argument
1155 ap = diskp->aliases; in find_alias()
1204 disk_t *diskp = NULL; in fix_cluster_devpath() local
1235 diskp = get_disk_by_deviceid(args->disk_listp, in fix_cluster_devpath()
1243 if (diskp == NULL) { in fix_cluster_devpath()
1250 diskp = create_disk(devidstr, in fix_cluster_devpath()
1252 if (diskp == NULL) { in fix_cluster_devpath()
1258 if (add_disk2controller(diskp, in fix_cluster_devpath()
1265 if (new_alias(diskp, NULL, in fix_cluster_devpath()
1278 if (diskp != NULL) { in fix_cluster_devpath()
1283 ap = diskp->aliases; in fix_cluster_devpath()
1516 disk_t **diskp) in have_disk() argument
1520 *diskp = NULL; in have_disk()
1523 if ((*diskp = get_disk_by_deviceid(listp, devidstr)) != NULL) { in have_disk()
1532 *diskp = listp; in have_disk()
1671 new_alias(disk_t *diskp, char *kernel_name, char *devlink_path, in new_alias() argument
1718 diskp->sync_speed = get_prop(prop_name, pnode); in new_alias()
1721 diskp->wide = get_prop(prop_name, pnode); in new_alias()
1729 aliasp->next = diskp->aliases; in new_alias()
1730 diskp->aliases = aliasp; in new_alias()