Page MenuHomeFreeBSD

D15629.id43177.diff
No OneTemporary

D15629.id43177.diff

Index: stand/userboot/userboot/devicename.c
===================================================================
--- stand/userboot/userboot/devicename.c
+++ stand/userboot/userboot/devicename.c
@@ -175,30 +175,30 @@
char *
userboot_fmtdev(void *vdev)
{
- struct disk_devdesc *dev = (struct disk_devdesc *)vdev;
+ struct devdesc *dev = (struct devdesc *)vdev;
static char buf[128]; /* XXX device length constant? */
- switch(dev->dd.d_dev->dv_type) {
+ switch(dev->d_dev->dv_type) {
case DEVT_NONE:
strcpy(buf, "(no device)");
break;
case DEVT_CD:
- sprintf(buf, "%s%d:", dev->dd.d_dev->dv_name, dev->dd.d_unit);
+ sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit);
break;
case DEVT_DISK:
return (disk_fmtdev(vdev));
case DEVT_NET:
- sprintf(buf, "%s%d:", dev->dd.d_dev->dv_name, dev->dd.d_unit);
+ sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit);
break;
case DEVT_ZFS:
#if defined(USERBOOT_ZFS_SUPPORT)
return (zfs_fmtdev(vdev));
#else
- sprintf(buf, "%s%d:", dev->dd.d_dev->dv_name, dev->dd.d_unit);
+ sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit);
#endif
break;
}
Index: stand/userboot/userboot/main.c
===================================================================
--- stand/userboot/userboot/main.c
+++ stand/userboot/userboot/main.c
@@ -155,20 +155,19 @@
extract_currdev(void)
{
struct disk_devdesc dev;
-
- //bzero(&dev, sizeof(dev));
-
+ struct devdesc *dd;
#if defined(USERBOOT_ZFS_SUPPORT)
+ struct zfs_devdesc zdev;
+
CTASSERT(sizeof(struct disk_devdesc) >= sizeof(struct zfs_devdesc));
if (userboot_zfs_found) {
- struct zfs_devdesc zdev;
/* Leave the pool/root guid's unassigned */
bzero(&zdev, sizeof(zdev));
zdev.dd.d_dev = &zfs_dev;
- dev = *(struct disk_devdesc *)&zdev;
- init_zfs_bootenv(zfs_fmtdev(&dev));
+ init_zfs_bootenv(zfs_fmtdev(&zdev));
+ dd = &zdev.dd;
} else
#endif
@@ -185,14 +184,16 @@
dev.d_slice = -1;
dev.d_partition = -1;
}
+ dd = &dev.dd;
} else {
dev.dd.d_dev = &host_dev;
dev.dd.d_unit = 0;
+ dd = &dev.dd;
}
- env_setenv("currdev", EV_VOLATILE, userboot_fmtdev(&dev),
+ env_setenv("currdev", EV_VOLATILE, userboot_fmtdev(dd),
userboot_setcurrdev, env_nounset);
- env_setenv("loaddev", EV_VOLATILE, userboot_fmtdev(&dev),
+ env_setenv("loaddev", EV_VOLATILE, userboot_fmtdev(dd),
env_noset, env_nounset);
}

File Metadata

Mime Type
text/plain
Expires
Sun, Aug 16, 11:50 AM (8 h, 43 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
36823009
Default Alt Text
D15629.id43177.diff (2 KB)

Event Timeline