Lines Matching refs:diskp

93 static int		add_disk2controller(disk_t *diskp,
108 static alias_t *find_alias(disk_t *diskp, char *kernel_name);
124 char *kernel_name, disk_t **diskp);
129 static int new_alias(disk_t *diskp, char *kernel_path,
132 static path_t *new_path(controller_t *cp, disk_t *diskp,
410 disk_t *diskp; in add_devpath() local
420 diskp = NULL; in add_devpath()
425 (void) have_disk(args, devidstr, kernel_name, &diskp); in add_devpath()
433 if (diskp != NULL) { in add_devpath()
437 if (diskp->drv_type != DM_DT_FLOPPY) { in add_devpath()
443 if (add_disk2controller(diskp, args) != 0) { in add_devpath()
457 if ((ap = find_alias(diskp, kernel_name)) == NULL) { in add_devpath()
458 if (new_alias(diskp, kernel_name, devlink_path, in add_devpath()
519 disk_t *diskp; in add_devs() local
531 if (!have_disk(args, devidstr, kernel_name, &diskp)) { in add_devs()
537 diskp = create_disk(devidstr, kernel_name, args); in add_devs()
538 if (diskp == NULL) { in add_devs()
542 if (diskp->drv_type != DM_DT_FLOPPY) { in add_devs()
545 if (add_disk2controller(diskp, in add_devs()
562 if ((ap = find_alias(diskp, kernel_name)) == NULL) { in add_devs()
563 if (new_alias(diskp, kernel_name, in add_devs()
617 add_disk2controller(disk_t *diskp, struct search_args *args) in add_disk2controller() argument
664 for (i = 0; diskp->controllers[i]; i++) { in add_disk2controller()
665 if (cp == diskp->controllers[i]) { in add_disk2controller()
673 if (add_ptr2array(diskp, (void ***)&cp->disks) != 0) { in add_disk2controller()
678 if (add_ptr2array(cp, (void ***)&diskp->controllers) != 0) { in add_disk2controller()
718 if (new_path(cp, diskp, phci_node, in add_disk2controller()
938 disk_t *diskp; in create_disk() local
948 diskp = calloc(1, sizeof (disk_t)); in create_disk()
949 if (diskp == NULL) { in create_disk()
953 diskp->controllers = (controller_t **) in create_disk()
955 if (diskp->controllers == NULL) { in create_disk()
956 cache_free_disk(diskp); in create_disk()
959 diskp->controllers[0] = NULL; in create_disk()
961 diskp->devid = NULL; in create_disk()
963 if ((diskp->device_id = strdup(deviceid)) == NULL) { in create_disk()
964 cache_free_disk(diskp); in create_disk()
967 (void) devid_str_decode(deviceid, &(diskp->devid), NULL); in create_disk()
971 diskp->kernel_name = strdup(kernel_name); in create_disk()
972 if (diskp->kernel_name == NULL) { in create_disk()
973 cache_free_disk(diskp); in create_disk()
978 diskp->paths = NULL; in create_disk()
979 diskp->aliases = NULL; in create_disk()
981 diskp->cd_rom = 0; in create_disk()
982 diskp->rpm = 0; in create_disk()
983 diskp->solid_state = -1; in create_disk()
988 if ((diskp->product_id = strdup(prod_id)) == NULL) { in create_disk()
989 cache_free_disk(diskp); in create_disk()
995 if ((diskp->product_id = strdup(prod_id)) == NULL) { in create_disk()
996 cache_free_disk(diskp); in create_disk()
1004 if ((diskp->vendor_id = strdup(vendor_id)) == NULL) { in create_disk()
1005 cache_free_disk(diskp); in create_disk()
1011 if ((diskp->vendor_id = strdup(vendor_id)) == NULL) { in create_disk()
1012 cache_free_disk(diskp); in create_disk()
1020 if ((diskp->serial = strdup(serial)) == NULL) { in create_disk()
1021 cache_free_disk(diskp); in create_disk()
1035 diskp->drv_type = DM_DT_UNKNOWN; in create_disk()
1036 diskp->cd_rom = 1; in create_disk()
1037 diskp->removable = 1; in create_disk()
1039 diskp->drv_type = DM_DT_FLOPPY; in create_disk()
1040 diskp->removable = 1; in create_disk()
1043 diskp->removable = get_prop(REMOVABLE_PROP, args->node); in create_disk()
1045 if (diskp->removable == -1) { in create_disk()
1046 diskp->removable = 0; in create_disk()
1047 diskp->drv_type = DM_DT_FIXED; in create_disk()
1051 diskp->next = args->disk_listp; in create_disk()
1052 args->disk_listp = diskp; in create_disk()
1054 return (diskp); in create_disk()
1114 find_alias(disk_t *diskp, char *kernel_name) in find_alias() argument
1118 ap = diskp->aliases; in find_alias()
1338 disk_t **diskp) in have_disk() argument
1342 *diskp = NULL; in have_disk()
1345 if ((*diskp = get_disk_by_deviceid(listp, devidstr)) != NULL) { in have_disk()
1354 *diskp = listp; in have_disk()
1486 new_alias(disk_t *diskp, char *kernel_name, char *devlink_path, in new_alias() argument
1532 diskp->sync_speed = get_prop(prop_name, pnode); in new_alias()
1535 diskp->wide = get_prop(prop_name, pnode); in new_alias()
1543 aliasp->next = diskp->aliases; in new_alias()
1544 diskp->aliases = aliasp; in new_alias()