<?xml version="1.0"?>
<!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
<refentry id="systemd-hibernate-resume-generator" conditional='ENABLE_HIBERNATE'>

  <refentryinfo>
    <title>systemd-hibernate-resume-generator</title>
    <productname>systemd</productname>
  </refentryinfo>

  <refmeta>
    <refentrytitle>systemd-hibernate-resume-generator</refentrytitle>
    <manvolnum>8</manvolnum>
  </refmeta>

  <refnamediv>
    <refname>systemd-hibernate-resume-generator</refname>
    <refpurpose>Unit generator for resume= kernel parameter</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <para><filename>/usr/lib/systemd/system-generators/systemd-hibernate-resume-generator</filename></para>
  </refsynopsisdiv>

  <refsect1>
    <title>Description</title>

    <para><command>systemd-hibernate-resume-generator</command> is a
    generator that initiates the procedure to resume the system from hibernation.
    It creates the
    <citerefentry><refentrytitle>systemd-hibernate-resume.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
    unit according to the value of <option>resume=</option> parameter
    specified on the kernel command line, or the value of EFI variable
    <varname>HibernateLocation</varname>, which will instruct the kernel
    to resume the system from the hibernation image on that device.</para>
  </refsect1>

  <refsect1>
    <title>Kernel Command Line</title>

    <para><filename>systemd-hibernate-resume-generator</filename>
    understands the following kernel command line parameters:</para>

    <variablelist class='kernel-commandline-options'>

      <varlistentry>
        <term><varname>resume=</varname></term>

        <listitem><para>Takes a path to the resume device. Both
        persistent block device paths like
        <filename index="false">/dev/disk/by-foo/bar</filename> and
        <citerefentry project='man-pages'><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>-style
        specifiers like <literal>FOO=bar</literal> are
        supported.</para></listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>resume_offset=</varname></term>

        <listitem><para>Takes the page offset of the swap space from the resume device.
        Defaults to <literal>0</literal>.</para></listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>resumeflags=</varname></term>

        <listitem><para>Takes the resume device mount options to
        use. Defaults <varname>rootflags=</varname> if not specified.</para></listitem>
      </varlistentry>

      <varlistentry>
        <term><varname>noresume</varname></term>

        <listitem><para>Do not try to resume from hibernation. If this parameter is
        present, <varname>resume=</varname> is ignored.</para></listitem>
      </varlistentry>
    </variablelist>
  </refsect1>

  <refsect1>
    <title>See Also</title>
    <para>
      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>systemd-hibernate-resume.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
      <citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>
    </para>
  </refsect1>

</refentry>
