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

create may send MDS_REINT/REINT_CREATE and LDLM_ENQUEUE/REINT_OPEN

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      [8:56:48 AM] John Hammond: On RHEL 6, assume that the file f0 is does not exist. If we do stat(f0) followed by creat(f0) then the create sends a MDS_REINT/REINT_CREATE from ll_create_nd() followed by a LDLM_ENQUEUE/REINT_OPEN from ll_file_open(). I don't think it was always this way. Am I wrong? If not then do you know when it changed?
      [9:54:50 AM] Oleg Drokin: hm, it should not work like that. is this master? EE of some sort? Related patches were in the opencache, first the improper fix in LU-4367 and then proper in LU-8019
      [9:55:45 AM] John Hammond: This is in master on 2.6.32-573.12.1.el6_lustre.g74ae81d.x86_64. (HAVE_IOP_ATOMIC_OPEN is not defined.)
      [9:57:46 AM] Oleg Drokin: So in ll_revalidate_dentry we should get this code run:
      [9:57:46 AM] Oleg Drokin: + /*
      + * if open&create is set, talk to MDS to make sure file is created if
      + * necessary, because we can't do this in ->open() later since that's
      + * called on an inode. return 0 here to let lookup to handle this.
      + */
      + if ((lookup_flags & (LOOKUP_OPEN | LOOKUP_CREATE)) ==
      + (LOOKUP_OPEN | LOOKUP_CREATE))
      [9:58:07 AM] Oleg Drokin: this would return 0 meaning revaliate fails
      [9:58:49 AM] Oleg Drokin: then we should not get into create(), but should get into ->lookup() in our code first
      [10:00:13 AM] Oleg Drokin: ah, LU-8371 removed that
      [10:00:56 AM] Oleg Drokin: I guess that did fail to take into account older kernels
      [10:01:42 AM] Oleg Drokin: though rhel6.x is not really supposed to be supported on master anymore, but we probabl can reinstate some of that logic just in rhel6 specific path when IOP_ATOMIC_OPEN is not defined
      [10:04:06 AM] John Hammond: Well we don't have HAVE_IOP_ATOMIC_OPEN until 3.6.

      Attachments

        Activity

          People

            green Oleg Drokin
            jhammond John Hammond
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: