lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 12 Dec 2019 19:14:17 +0100
From:   Dominik Brodowski <linux@...inikbrodowski.net>
To:     Alexander Viro <viro@...iv.linux.org.uk>,
        Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        "Rafael J . Wysocki" <rafael@...nel.org>,
        Andrew Morton <akpm@...ux-foundation.org>,
        Ingo Molnar <mingo@...nel.org>, linux-kernel@...r.kernel.org
Subject: [GIT PULL] remove ksys_mount() and ksys_dup()

The following changes since commit ae4b064e2a616b545acf02b8f50cc513b32c7522:

  Merge tag 'afs-fixes-20191211' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs (2019-12-11 18:10:40 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux.git remove-ksys-mount-dup

for you to fetch changes up to 8243186f0cc7c57cf9d6a110cd7315c44e3e0be8:

  fs: remove ksys_dup() (2019-12-12 19:00:36 +0100)

This small series replaces all in-kernel calls to the
userspace-focused ksys_mount() and ksys_dup() with calls
to kernel-centric functions:

For each replacement of ksys_mount() with do_mount(),
one needs to verify that the first and third parameter
(char *dev_name, char *type) are strings allocated in
kernelspace and that the fifth parameter (void *data)
is either NULL or refers to a full page (only occurence
in init/do_mounts.c::do_mount_root()). The second and
fourth parameters (char *dir_name, unsigned long flags)
are passed by ksys_mount() to do_mount() unchanged, and
therefore do not require particular care.

Moreover, instead of pretending to be userspace, the opening
of /dev/console as stdin/stdout/stderr can be implemented
using in-kernel functions as well. Thereby, ksys_dup() can
be removed for good.

---

Changes since the split-series patches[1,2]:
- merge both series (on suggestion by Linus)
- remove pointless cast (on suggestion by Linus)

[1] https://lore.kernel.org/lkml/20191212135724.331342-1-linux@dominikbrodowski.net/
[2] https://lore.kernel.org/lkml/20191212140752.347520-1-linux@dominikbrodowski.net/


Thanks,
	Dominik


----------------------------------------------------------------
Dominik Brodowski (5):
      devtmpfs: use do_mount() instead of ksys_mount()
      initrd: use do_mount() instead of ksys_mount()
      init: use do_mount() instead of ksys_mount()
      init: unify opening /dev/console as stdin/stdout/stderr
      fs: remove ksys_dup()

 drivers/base/devtmpfs.c  |  6 +++---
 fs/file.c                |  7 +------
 fs/namespace.c           | 10 ++--------
 include/linux/device.h   |  4 ++--
 include/linux/initrd.h   |  2 ++
 include/linux/syscalls.h |  3 ---
 init/do_mounts.c         | 30 +++++++++++++++++++++++-------
 init/do_mounts_initrd.c  | 11 ++++-------
 init/main.c              | 31 ++++++++++++++++++++++++++-----
 9 files changed, 63 insertions(+), 41 deletions(-)

-- 
2.24.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ