sdev_symlink
if (odv->sdev_symlink == NULL) {
ASSERT(odv->sdev_symlink);
link = i_ddi_strdup(odv->sdev_symlink, KM_SLEEP);
ASSERT(dv->sdev_symlink);
error = VOP_SYMLINK(rdvp, nm, vap, dv->sdev_symlink, cred,
dv->sdev_symlink = NULL;
dv->sdev_symlink = i_ddi_strdup((char *)args, KM_SLEEP);
dv->sdev_symlink = NULL;
dv->sdev_symlink = link;
ASSERT(dv->sdev_symlink != NULL);
if (strcmp(dv->sdev_symlink, (char *)nargs) != 0) {
" %s\n", dv->sdev_name, dv->sdev_symlink,
if (dv->sdev_symlink != NULL) {
kmem_free(dv->sdev_symlink, strlen(dv->sdev_symlink) + 1);
dv->sdev_symlink = NULL;
} else if (dv->sdev_symlink != NULL) {
sdcmn_err2(("sdev_readlink link is %s\n", dv->sdev_symlink));
error = uiomove(dv->sdev_symlink, strlen(dv->sdev_symlink),
VOPNAME_SYMLINK, { .vop_symlink = sdev_symlink },
rval = (strcmp(link, dv->sdev_symlink) == 0) ?
rval = (strcmp(link, dv->sdev_symlink) == 0) ?
if (strcmp(link, dv->sdev_symlink) != 0) {
strfree(dv->sdev_symlink);
dv->sdev_symlink = strdup(link);
char *sdev_symlink; /* source for a symlink */