diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2d5eac43a880e4..72ddc64c563cde 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -28,7 +28,8 @@ release.
 
 
     | -12.16.0 +12.16.1
 +12.16.0
 12.15.0
 12.14.1
 12.14.0
 diff --git a/configure.py b/configure.py
index 6537a62d3954d8..14f5665e0299a2 100755
--- a/configure.py
+++ b/configure.py
@@ -401,12 +401,13 @@
 parser.add_option('--use-largepages',
     action='store_true',
     dest='node_use_large_pages',
-    help='This option has no effect. --use-largepages is now a runtime option.')
+    help='build with Large Pages support. This feature is supported only on Linux kernel' +
+         '>= 2.6.38 with Transparent Huge pages enabled and FreeBSD')
 
 parser.add_option('--use-largepages-script-lld',
     action='store_true',
     dest='node_use_large_pages_script_lld',
-    help='This option has no effect. --use-largepages is now a runtime option.')
+    help='link against the LLVM ld linker script. Implies -fuse-ld=lld in the linker flags')
 
 intl_optgroup.add_option('--with-intl',
     action='store',
@@ -1060,12 +1061,27 @@ def configure_node(o):
   else:
     o['variables']['node_use_dtrace'] = 'false'
 
-  if options.node_use_large_pages or options.node_use_large_pages_script_lld:
-    warn('''The `--use-largepages` and `--use-largepages-script-lld` options
-         have no effect during build time. Support for mapping to large pages is
-         now a runtime option of Node.js. Run `node --use-largepages` or add
-         `--use-largepages` to the `NODE_OPTIONS` environment variable once
-         Node.js is built to enable mapping to large pages.''')
+  if options.node_use_large_pages and not flavor in ('linux', 'freebsd', 'mac'):
+    raise Exception(
+      'Large pages are supported only on Linux, FreeBSD and MacOS Systems.')
+  if options.node_use_large_pages and flavor in ('linux', 'freebsd', 'mac'):
+    if options.shared or options.enable_static:
+      raise Exception(
+        'Large pages are supported only while creating node executable.')
+    if target_arch!="x64":
+      raise Exception(
+        'Large pages are supported only x64 platform.')
+    if flavor == 'mac':
+      info('macOS server with 32GB or more is recommended')
+    if flavor == 'linux':
+      # Example full version string: 2.6.32-696.28.1.el6.x86_64
+      FULL_KERNEL_VERSION=os.uname()[2]
+      KERNEL_VERSION=FULL_KERNEL_VERSION.split('-')[0]
+      if KERNEL_VERSION < "2.6.38" and flavor == 'linux':
+        raise Exception(
+          'Large pages need Linux kernel version >= 2.6.38')
+  o['variables']['node_use_large_pages'] = b(options.node_use_large_pages)
+  o['variables']['node_use_large_pages_script_lld'] = b(options.node_use_large_pages_script_lld)
 
   if options.no_ifaddrs:
     o['defines'] += ['SUNOS_NO_IFADDRS']
diff --git a/doc/api/cli.md b/doc/api/cli.md
index 979c1214f5c59e..7703d0b6bd99d2 100644
--- a/doc/api/cli.md
+++ b/doc/api/cli.md
@@ -881,22 +881,6 @@ environment variables.
 
 See `SSL_CERT_DIR` and `SSL_CERT_FILE`.
 
-### `--use-largepages=mode`
-
-
-Re-map the Node.js static code to large memory pages at startup. If supported on
-the target system, this will cause the Node.js static code to be moved onto 2
-MiB pages instead of 4 KiB pages.
-
-The following values are valid for `mode`:
-* `off`: No mapping will be attempted. This is the default.
-* `on`: If supported by the OS, mapping will be attempted. Failure to map will
-  be ignored and a message will be printed to standard error.
-* `silent`: If supported by the OS, mapping will be attempted. Failure to map
-  will be ignored and will not be reported.
-
 ### `--v8-options`
 
-
-This symbol shall be used to install a listener for only monitoring `'error'`
-events. Listeners installed using this symbol are called before the regular
-`'error'` listeners are called.
-
-Installing a listener using this symbol does not change the behavior once an
-`'error'` event is emitted, therefore the process will still crash if no
-regular `'error'` listener is installed.
-
 ### `emitter.addListener(eventName, listener)`
 |