cgroups.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHSET] kernfs, cgroup: make kernfs_path*() and cgroup_path*() behave in strlcpy() style
@ 2016-08-09  5:23 Tejun Heo
  2016-08-09  5:23 ` [PATCH 1/4] kernfs: add dummy implementation of kernfs_path_from_node() Tejun Heo
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Tejun Heo @ 2016-08-09  5:23 UTC (permalink / raw)
  To: gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r,
	serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA
  Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	cgroups-u79uwXL29TY76Z2rM5mHXA, kernel-team-b10kYP2dOMg,
	hannes-druUgvl0LCNAfugRpC6u6w, lizefan-hv44wF8Li93QT0dZR+AlfA

kernfs path formatting functions always return the length of full path
but the content of the output buffer is undefined when the length is
longer than the provided buffer.  Most cgroup path formatting
functions return the start of the output or NULL on errors including
overflow.  These inconsistent and rather peculiar behaviors developed
over time and make these functions unnecessarily difficult to use.
This patchset updates the formatting functions so that they all behave
in the style of strlcpy().

Greg, these changes are used by cgroup tracepoint additions and
shouldn't affect other users much.  Would it be okay to route these
through the cgroup tree?

 0001-kernfs-add-dummy-implementation-of-kernfs_path_from_.patch
 0002-kernfs-make-kernfs_path-behave-in-the-style-of-strlc.patch
 0003-kernfs-remove-kernfs_path_len.patch
 0004-cgroup-make-cgroup_path-and-friends-behave-in-the-st.patch

The patches are also available in the following git branch.

 git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git review-kernfs_path-strlcpy

diffstat follows.  Thanks.

 fs/kernfs/dir.c            |   84 +++++++++------------------------------------
 fs/sysfs/dir.c             |    6 +--
 include/linux/blk-cgroup.h |   11 -----
 include/linux/cgroup.h     |    9 ++--
 include/linux/kernfs.h     |   28 ++++++++++-----
 kernel/cgroup.c            |   48 +++++++++++--------------
 kernel/cpuset.c            |   12 +++---
 7 files changed, 73 insertions(+), 125 deletions(-)

--
tejun

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-08-10 15:25 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-09  5:23 [PATCHSET] kernfs, cgroup: make kernfs_path*() and cgroup_path*() behave in strlcpy() style Tejun Heo
2016-08-09  5:23 ` [PATCH 1/4] kernfs: add dummy implementation of kernfs_path_from_node() Tejun Heo
     [not found]   ` <1470720204-4605-2-git-send-email-tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-08-09  6:14     ` [PATCH v2 " Tejun Heo
2016-08-09  5:23 ` [PATCH 2/4] kernfs: make kernfs_path*() behave in the style of strlcpy() Tejun Heo
     [not found]   ` <1470720204-4605-3-git-send-email-tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-08-09 15:33     ` Serge E. Hallyn
     [not found]       ` <20160809153305.GB30775-7LNsyQBKDXoIagZqoN9o3w@public.gmane.org>
2016-08-09 19:58         ` Tejun Heo
     [not found]           ` <20160809195813.GF4906-qYNAdHglDFBN0TnZuCh8vA@public.gmane.org>
2016-08-09 20:14             ` Serge E. Hallyn
2016-08-09  5:23 ` [PATCH 3/4] kernfs: remove kernfs_path_len() Tejun Heo
2016-08-09  5:23 ` [PATCH 4/4] cgroup: make cgroup_path() and friends behave in the style of strlcpy() Tejun Heo
     [not found]   ` <1470720204-4605-5-git-send-email-tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-08-09  6:14     ` [PATCH v2 " Tejun Heo
2016-08-09  8:18 ` [PATCHSET] kernfs, cgroup: make kernfs_path*() and cgroup_path*() behave in strlcpy() style Greg KH
     [not found]   ` <20160809081819.GB10279-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2016-08-10 15:25     ` Tejun Heo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).