)]}'
{
  "commit": "2a1b2dc0c83bbfc24d72cafd5e69810a149b44e4",
  "tree": "4ed7b892b7a1e03bc085d1f78e0a46fd2ee13342",
  "parents": [
    "d4076ac55bf8755ce6c5706478631c1726cf0179"
  ],
  "author": {
    "name": "Sukadev Bhattiprolu",
    "email": "sukadev@linux.vnet.ibm.com",
    "time": "Fri Jan 02 13:42:27 2009 +0000"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Fri Jan 02 10:19:36 2009 -0800"
  },
  "message": "Enable multiple instances of devpts\n\nTo support containers, allow multiple instances of devpts filesystem, such\nthat indices of ptys allocated in one instance are independent of ptys\nallocated in other instances of devpts.\n\nBut to preserve backward compatibility, enable this support for multiple\ninstances only if:\n\n\t- CONFIG_DEVPTS_MULTIPLE_INSTANCES is set to Y, and\n\t- \u0027-o newinstance\u0027 mount option is specified while mounting devpts\n\nTo use multi-instance mount, a container startup script could:\n\n\t$ ns_exec -cm /bin/bash\n\t$ umount /dev/pts\n\t$ mount -t devpts -o newinstance lxcpts /dev/pts\n\t$ mount -o bind /dev/pts/ptmx /dev/ptmx\n\t$ /usr/sbin/sshd -p 1234\n\nwhere \u0027ns_exec -cm /bin/bash\u0027 is calls clone() with CLONE_NEWNS flag and execs\n/bin/bash in the child process. A pty created by the sshd is not visible in\nthe original mount of /dev/pts.\n\nUSER-SPACE-IMPACT:\n\t- See Documentation/fs/devpts.txt (included in next patch) for user-\n\t  space impact in multi-instance and mixed-mode operation.\nTODO:\n\t- Update mount(8), pts(4) man pages. Highlight impact of not\n\t  redirecting /dev/ptmx to /dev/pts/ptmx after a multi-instance mount.\n\nChangelog[v6]:\n\t- [Dave Hansen] Use new get_init_pts_sb() interface\n\t- [Serge Hallyn] Don\u0027t bother displaying \u0027newinstance\u0027 in show_options\n\t- [Serge Hallyn] Use macros (PARSE_REMOUNT/PARSE_MOUNT) instead of 0/1.\n\t- [Serge Hallyn] Check error return from get_sb_single() (now\n\t  get_init_pts_sb())\n\t- devpts_pty_kill(): don\u0027t dput error dentries\n\nChangelog[v5]:\n\t- Move get_sb_ref() definition to earlier patch\n\t- Move usage info to Documentation/filesystems/devpts.txt (next patch)\n\t- Make ptmx node even in init_pts_ns, now that default mode is 0000\n\t  (defined in earlier patch, enabled here).\n\t- Cache ptmx dentry and use to update mode during remount\n\t  (defined in earlier patch, enabled here).\n\t- Bugfix: explicitly ignore newinstance on remount (if newinstance was\n\t  specified on remount of initial mount, it would be ignored but\n\t  /proc/mounts would imply that the option was set)\n\nChangelog[v4]:\n\n\t- Update patch description to address H. Peter Anvin\u0027s comments\n\t- Consolidate multi-instance mode code under new config token,\n\t  CONFIG_DEVPTS_MULTIPLE_INSTANCE.\n\t- Move usage-details from patch description to\n\t  Documentation/fs/devpts.txt\n\nChangelog[v3]:\n\t- Rename new mount option to \u0027newinstance\u0027\n\t- Create ptmx nodes only in \u0027newinstance\u0027 mounts\n\t- Bugfix: parse_mount_options() modifies @data but since we need to\n\t  parse the @data twice (once in devpts_get_sb() and once during\n\t  do_remount_sb()), parse a local copy of @data in devpts_get_sb().\n\t  (restructured code in devpts_get_sb() to fix this)\n\nChangelog[v2]:\n\t- Support both single-mount and multiple-mount semantics and\n\t  provide \u0027-onewmnt\u0027 option to select the semantics.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.ibm.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2d0eb2cf99e619706cb61313ba8f0745a50e5b0c",
      "old_mode": 33188,
      "old_path": "fs/devpts/inode.c",
      "new_id": "b4a89fa21673ae98fd44a9de6ecd74fe4b8e8c34",
      "new_mode": 33188,
      "new_path": "fs/devpts/inode.c"
    }
  ]
}
