Uploaded image for project: 'Lustre Documentation'
  1. Lustre Documentation
  2. LUDOC-158

33.1 "User/Group Cache Upcall" and 33.2 "l_getidentity Utility" need to be updated (Ch 33)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • None
    • None
    • 3
    • 3
    • 8563

    Description

      Notes from Andreas:
      "33.1. User/Group Cache Upcall" and "33.2.
      l_getgroups Utility", with the caveat that this text was only partially updated for Lustre 2.x. The "l_getgroups" upcall was renamed "l_getidentity", and the /proc file is changed also, some (fragmented) updates to the text (... is typewriter font, [] are changes):

      33.1. User/Group Cache Upcall

      [This section describes the supplementary user and group upcall, which allows the
      MDS to retrieve and verify the supplementary groups that a particular user is
      assigned. This avoids the need to pass all of the supplementary groups from the
      client to the MDS on every RPC.]

      33.1.1 Name

      The MDS will use the utility given by [{{lctl get_param mdt.$MDT.identity_upcall}}]
      to look up the supplied UID in order to retrieve the user's supplementary group
      membership.

      33.1.2 Description

      The [identity] upcall file ...
      ... This utility should [fill in the {{identity_downcall_data}}] data structure ...

      For a sample upcall program, see [{{lustre/utils/l_getidentity.c}}] in ...

      33.1.2.1

      ... and it fails, [at most one] supplementary group will be added as supplied
      by the client.

      Use tunefs.lustre --param=[mdt.identity_upcall=<upcall_program> to set the
      upcall at format time.

      [please just remove rmtacl and normtacl entirely from the description and text]

      ... [The {{/usr/sbin/l_getidentity}}] utility ...

      Use [lctl set_param mdt.*.identity_expire=<seconds>] to set the cache time ...
      Set the wait time via [lctl set_param
      mdt.*.identity_acquire_expire=<seconds>]
      to change the length of time that the kernel will wait for the upcall to finish.
      Note that the client process will be blocked during this time. Cached entries
      are flushed via [lctl set_param mdt.$MDT.identity_flush=0].

      33.1.4 Data Structures

      struct perm_downcall_data

      { __u64 pdd_nid; __u32 pdd_perm; __u32 pdd_padding; }

      ;

      struct identity_downcall_data {
      __u32 idd_magic;
      :
      :

      33.2 [l_getidenity] Utility

      The [l_getidentity] utility handles the Lustre supplementary group upcall by default,
      as described in the preceding section.

      33.2.1 Synopsis

      l_getidentity

      {mdtname}

      {uid}

      33.2.2 Description

      The identity upcall file ... should complete the [{{identity_downcall_data}}] ...
      ... write it to the [{{/proc/fs/lustre/mdt/$MDT/identity_info}}] pseudo file.

      [l_getidentity] is the reference ...

      33.2.3 Files

      /proc/fs/lustre/mdt/$MDT/identity_upcall
      /proc/fs/lustre/mdt/$MDT/identity_info

      Attachments

        Activity

          People

            linda Linda Bebernes (Inactive)
            linda Linda Bebernes (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: