• Joel Granados's avatar
    sysctl: replace child with an enumeration · 2f2665c1
    Joel Granados authored
    This is part of the effort to remove the empty element at the end of
    ctl_table structs. "child" was a deprecated elem in this struct and was
    being used to differentiate between two types of ctl_tables: "normal"
    and "permanently emtpy".
    
    What changed?:
    * Replace "child" with an enumeration that will have two values: the
      default (0) and the permanently empty (1). The latter is left at zero
      so when struct ctl_table is created with kzalloc or in a local
      context, it will have the zero value by default. We document the
      new enum with kdoc.
    * Remove the "empty child" check from sysctl_check_table
    * Remove count_subheaders function as there is no longer a need to
      calculate how many headers there are for every child
    * Remove the recursive call to unregister_sysctl_table as there is no
      need to traverse down the child tree any longer
    * Add a new SYSCTL_PERM_EMPTY_DIR binary flag
    * Remove the last remanence of child from partport/procfs.c
    Signed-off-by: default avatarJoel Granados <j.granados@samsung.com>
    Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
    2f2665c1
proc_sysctl.c 43.3 KB