Print this page
*** 324,334 ****
* init_console_dev() drives the device-tree configuration of the zone
* console device. The general strategy is to use the libdevice (devctl)
* interfaces to instantiate a new zone console node. We do a lot of
* sanity checking, and are careful to reuse a console if one exists.
*
! * Once the device is in the device tree, we kick devfsadm via di_devlink_init()
* to ensure that the appropriate symlinks (to the master and slave console
* devices) are placed in /dev in the global zone.
*/
static int
init_console_dev(zlog_t *zlogp)
--- 324,334 ----
* init_console_dev() drives the device-tree configuration of the zone
* console device. The general strategy is to use the libdevice (devctl)
* interfaces to instantiate a new zone console node. We do a lot of
* sanity checking, and are careful to reuse a console if one exists.
*
! * Once the device is in the device tree, we kick devfsadm via di_init_devs()
* to ensure that the appropriate symlinks (to the master and slave console
* devices) are placed in /dev in the global zone.
*/
static int
init_console_dev(zlog_t *zlogp)
*** 418,439 ****
* 1 sec. and retry a few times. Even if we can't setup the zone's
* console, we still go ahead and boot the zone.
*/
(void) snprintf(conspath, sizeof (conspath), "/dev/zcons/%s/%s",
zone_name, ZCONS_MASTER_NAME);
! for (i = 0; i < ZCONS_RETRY; i++) {
! masterfd = open(conspath, O_RDWR | O_NOCTTY);
! if (masterfd >= 0 || errno != ENOENT)
! break;
! (void) sleep(1);
! }
! if (masterfd == -1) {
zerror(zlogp, B_TRUE, "ERROR: could not open master side of "
"zone console for %s to acquire slave handle", zone_name);
master_zcons_failed = B_TRUE;
}
-
(void) snprintf(conspath, sizeof (conspath), "/dev/zcons/%s/%s",
zone_name, ZCONS_SLAVE_NAME);
for (i = 0; i < ZCONS_RETRY; i++) {
slavefd = open(conspath, O_RDWR | O_NOCTTY);
if (slavefd >= 0 || errno != ENOENT)
--- 418,432 ----
* 1 sec. and retry a few times. Even if we can't setup the zone's
* console, we still go ahead and boot the zone.
*/
(void) snprintf(conspath, sizeof (conspath), "/dev/zcons/%s/%s",
zone_name, ZCONS_MASTER_NAME);
! if ((masterfd = open(conspath, O_RDWR | O_NOCTTY)) == -1) {
zerror(zlogp, B_TRUE, "ERROR: could not open master side of "
"zone console for %s to acquire slave handle", zone_name);
master_zcons_failed = B_TRUE;
}
(void) snprintf(conspath, sizeof (conspath), "/dev/zcons/%s/%s",
zone_name, ZCONS_SLAVE_NAME);
for (i = 0; i < ZCONS_RETRY; i++) {
slavefd = open(conspath, O_RDWR | O_NOCTTY);
if (slavefd >= 0 || errno != ENOENT)