Quoting sukadev@xxxxxxxxxx (sukadev@xxxxxxxxxx): > > From: Sukadev Bhattiprolu <sukadev@xxxxxxxxxx> > Subject: [PATCH 4/7]: Implement get_pts_ns() and put_pts_ns() > > Implement get_pts_ns() and put_pts_ns() interfaces. > > Signed-off-by: Sukadev Bhattiprolu <sukadev@xxxxxxxxxx> > --- > include/linux/devpts_fs.h | 21 ++++++++++++++++++++- > 1 file changed, 20 insertions(+), 1 deletion(-) > > Index: 2.6.25-rc5-mm1/include/linux/devpts_fs.h > =================================================================== > --- 2.6.25-rc5-mm1.orig/include/linux/devpts_fs.h 2008-03-24 20:04:31.000000000 -0700 > +++ 2.6.25-rc5-mm1/include/linux/devpts_fs.h 2008-03-24 20:05:05.000000000 -0700 > @@ -27,13 +27,26 @@ struct pts_namespace { > extern struct pts_namespace init_pts_ns; > > #ifdef CONFIG_UNIX98_PTYS > - > int devpts_new_index(void); > void devpts_kill_index(int idx); > int devpts_pty_new(struct tty_struct *tty); /* mknod in devpts */ > struct tty_struct *devpts_get_tty(int number); /* get tty structure */ > void devpts_pty_kill(int number); /* unlink */ > > +static inline void free_pts_ns(struct kref *ns_kref) { } > + > +static inline struct pts_namespace *get_pts_ns(struct pts_namespace *ns) > +{ > + if (ns && (ns != &init_pts_ns)) How come you need to this extra check? No other namespaces special-case the initial ns this way, do they? > + kref_get(&ns->kref); > + return ns; > +} > +static inline void put_pts_ns(struct pts_namespace *ns) > +{ > + if (ns && (ns != &init_pts_ns)) > + kref_put(&ns->kref, free_pts_ns); > +} > + > #else > > /* Dummy stubs in the no-pty case */ > @@ -43,6 +56,12 @@ static inline int devpts_pty_new(struct > static inline struct tty_struct *devpts_get_tty(int number) { return NULL; } > static inline void devpts_pty_kill(int number) { } > > +static inline struct pts_namespace *get_pts_ns(struct pts_namespace *ns) > +{ > + return &init_pts_ns; > +} > + > +static inline void put_pts_ns(struct pts_namespace *ns) { } > #endif > _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers