[Devel] [PATCH RHEL7 COMMIT] Revert "ve/pty: containerize Unix98 pty drivers"

Konstantin Khorenko khorenko at virtuozzo.com
Fri Aug 28 07:31:49 PDT 2015


The commit is pushed to "branch-rh7-3.10.0-229.7.2-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-229.7.2.vz7.6.3
------>
commit 1ff0db51541d3bf04c228025cb48de284adb78b2
Author: Vladimir Davydov <vdavydov at parallels.com>
Date:   Fri Aug 28 18:31:49 2015 +0400

    Revert "ve/pty: containerize Unix98 pty drivers"
    
    Patchset description:
    
    Zap Unix98 pty virtualization
    
    Unix98 ptys are already
    virtualized on the VFS layer, nothing needs to be done on the driver's
    side. We don't even have this in PCS6.
    
    The patch set makes ptmx device system-wide while its class, tty_class, is
    still virtualized. Since it's now system-wide, we have to add its sysfs entry
    to ve.default_sysfs_permissions, but since its class is virtualized, we won't
    be able to do it (see sysfs_perms_set -> sysfs_find_dirent).
    
    As a result, if the container relies on sysfs while creating devnodes,
    it will not find ptmx and therefore fallback to legacy ptys, which we
    are going to drop.
    The last patch (ve/pty: create ptmx device per ve namespace) addresses this.
    
    ===
    This patch description:
    
    This reverts commit 79b66035f81e1c8996f2524f26af096e44e2ae4b.
    
    Conflicts:
    	kernel/ve/ve.c
    
    Signed-off-by: Vladimir Davydov <vdavydov at parallels.com>
---
 kernel/ve/ve.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/kernel/ve/ve.c b/kernel/ve/ve.c
index bdfa30d..5025149 100644
--- a/kernel/ve/ve.c
+++ b/kernel/ve/ve.c
@@ -449,10 +449,6 @@ int ve_start_container(struct ve_struct *ve)
 	if (err)
 		goto err_legacy_pty;
 
-	err = ve_unix98_pty_init(ve);
-	if (err)
-		goto err_unix98_pty;
-
 	err = ve_tty_console_init(ve);
 	if (err)
 		goto err_tty_console;
@@ -472,8 +468,6 @@ int ve_start_container(struct ve_struct *ve)
 err_iterate:
 	ve_tty_console_fini(ve);
 err_tty_console:
-	ve_unix98_pty_fini(ve);
-err_unix98_pty:
 	ve_legacy_pty_fini(ve);
 err_legacy_pty:
 	ve_stop_umh(ve);
@@ -506,7 +500,6 @@ void ve_stop_ns(struct pid_namespace *pid_ns)
 	ve->is_running = 0;
 
 	ve_tty_console_fini(ve);
-	ve_unix98_pty_fini(ve);
 	ve_legacy_pty_fini(ve);
 
 	ve_stop_umh(ve);



More information about the Devel mailing list