Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-4209

O_LOV_DELAY_CREATE conflict with __O_TMPFILE

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Lustre 2.6.0, Lustre 2.5.1
    • Labels:
    • Environment:
      On 3.11+ kernels
    • Severity:
      3
    • Epic:
    • Rank (Obsolete):
      11443

      Description

      Since 3.11 kernel release (commit 60545d0d and bb458c64), kernel introduced __O_TMPFILE that unfortunately conflicts with O_LOV_DELAY_CREATE and causes lfs setstripe api to always fail.

      #define __O_TMPFILE 020000000

      #define O_LOV_DELAY_CREATE 0120000000

      Also kernel introduced a safe guard around O_TMPFILE such that whenever __O_TMPFILE bit is set, it has to also have O_DIRECTORY. As a result, it makes Lustre unable to keep backward compatibility. So I am in fact unsure how to solve this. Do we care about O_LOV_DELAY_CREATE compatibility?

      Because this is mostly related to user space ABI, I created this ticket so that we can solve it in Lustre tree first, and then I can port the change to kernel client.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              adilger Andreas Dilger
              Reporter:
              bergwolf Peng Tao
              Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: