1. 02 6月, 2012 1 次提交
    • J
      fs: introduce inode operation ->update_time · c3b2da31
      Josef Bacik 提交于
      Btrfs has to make sure we have space to allocate new blocks in order to modify
      the inode, so updating time can fail.  We've gotten around this by having our
      own file_update_time but this is kind of a pain, and Christoph has indicated he
      would like to make xfs do something different with atime updates.  So introduce
      ->update_time, where we will deal with i_version an a/m/c time updates and
      indicate which changes need to be made.  The normal version just does what it
      has always done, updates the time and marks the inode dirty, and then
      filesystems can choose to do something different.
      
      I've gone through all of the users of file_update_time and made them check for
      errors with the exception of the fault code since it's complicated and I wasn't
      quite sure what to do there, also Jan is going to be pushing the file time
      updates into page_mkwrite for those who have it so that should satisfy btrfs and
      make it not a big deal to check the file_update_time() return code in the
      generic fault path. Thanks,
      Signed-off-by: NJosef Bacik <josef@redhat.com>
      c3b2da31
  2. 01 6月, 2012 4 次提交
  3. 31 5月, 2012 2 次提交
    • N
      fsnotify: handle subfiles' perm events · a4f9a9a6
      Naohiro Aota 提交于
      Recently I'm working on fanotify and found the following strange
      behaviors.
      
      I wrote a program to set fanotify_mark on "/tmp/block" and FAN_DENY
      all events notified.
      
      fanotify_mask = FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_EVENT_ON_CHILD:
      $ cd /tmp/block; cat foo
      cat: foo: Operation not permitted
      
      Operation on the file is blocked as expected.
      
      But,
      
      fanotify_mask = FAN_ALL_PERM_EVENTS | FAN_EVENT_ON_CHILD:
      $ cd /tmp/block; cat foo
      aaa
      
      It's not blocked anymore.  This is confusing behavior.  Also reading
      commit "fsnotify: call fsnotify_parent in perm events", it seems like
      fsnotify should handle subfiles' perm events as well as the other notify
      events.
      
      With this patch, regardless of FAN_ALL_EVENTS set or not:
      $ cd /tmp/block; cat foo
      cat: foo: Operation not permitted
      
      Operation on the file is now blocked properly.
      
      FS_OPEN_PERM and FS_ACCESS_PERM are not listed on FS_EVENTS_POSS_ON_CHILD.
       Due to fsnotify_inode_watches_children() check, if you only specify only
      these events as fsnotify_mask, you don't get subfiles' perm events
      notified.
      
      This patch add the events to FS_EVENTS_POSS_ON_CHILD to get them notified
      even if only these events are specified to fsnotify_mask.
      Signed-off-by: NNaohiro Aota <naota@elisp.net>
      Cc: Eric Paris <eparis@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      a4f9a9a6
    • A
      bury __kernel_nlink_t, make internal nlink_t consistent · bb8ac181
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      bb8ac181
  4. 30 5月, 2012 3 次提交
  5. 27 5月, 2012 3 次提交
    • L
      word-at-a-time: make the interfaces truly generic · 36126f8f
      Linus Torvalds 提交于
      This changes the interfaces in <asm/word-at-a-time.h> to be a bit more
      complicated, but a lot more generic.
      
      In particular, it allows us to really do the operations efficiently on
      both little-endian and big-endian machines, pretty much regardless of
      machine details.  For example, if you can rely on a fast population
      count instruction on your architecture, this will allow you to make your
      optimized <asm/word-at-a-time.h> file with that.
      
      NOTE! The "generic" version in include/asm-generic/word-at-a-time.h is
      not truly generic, it actually only works on big-endian.  Why? Because
      on little-endian the generic algorithms are wasteful, since you can
      inevitably do better. The x86 implementation is an example of that.
      
      (The only truly non-generic part of the asm-generic implementation is
      the "find_zero()" function, and you could make a little-endian version
      of it.  And if the Kbuild infrastructure allowed us to pick a particular
      header file, that would be lovely)
      
      The <asm/word-at-a-time.h> functions are as follows:
      
       - WORD_AT_A_TIME_CONSTANTS: specific constants that the algorithm
         uses.
      
       - has_zero(): take a word, and determine if it has a zero byte in it.
         It gets the word, the pointer to the constant pool, and a pointer to
         an intermediate "data" field it can set.
      
         This is the "quick-and-dirty" zero tester: it's what is run inside
         the hot loops.
      
       - "prep_zero_mask()": take the word, the data that has_zero() produced,
         and the constant pool, and generate an *exact* mask of which byte had
         the first zero.  This is run directly *outside* the loop, and allows
         the "has_zero()" function to answer the "is there a zero byte"
         question without necessarily getting exactly *which* byte is the
         first one to contain a zero.
      
         If you do multiple byte lookups concurrently (eg "hash_name()", which
         looks for both NUL and '/' bytes), after you've done the prep_zero_mask()
         phase, the result of those can be or'ed together to get the "either
         or" case.
      
       - The result from "prep_zero_mask()" can then be fed into "find_zero()"
         (to find the byte offset of the first byte that was zero) or into
         "zero_bytemask()" (to find the bytemask of the bytes preceding the
         zero byte).
      
         The existence of zero_bytemask() is optional, and is not necessary
         for the normal string routines.  But dentry name hashing needs it, so
         if you enable DENTRY_WORD_AT_A_TIME you need to expose it.
      
      This changes the generic strncpy_from_user() function and the dentry
      hashing functions to use these modified word-at-a-time interfaces.  This
      gets us back to the optimized state of the x86 strncpy that we lost in
      the previous commit when moving over to the generic version.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      36126f8f
    • T
      NFSv4.1: Don't clobber the seqid if exchange_id returns a confirmed clientid · 32b01310
      Trond Myklebust 提交于
      If the EXCHGID4_FLAG_CONFIRMED_R flag is set, the client is in theory
      supposed to already know the correct value of the seqid, in which case
      RFC5661 states that it should ignore the value returned.
      
      Also ensure that if the sanity check in nfs4_check_cl_exchange_flags
      fails, then we must not change the nfs_client fields.
      
      Finally, clean up the code: we don't need to retest the value of
      'status' unless it can change.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      32b01310
    • T
      NFSv4.1: Add DESTROY_CLIENTID · 66245539
      Trond Myklebust 提交于
      Ensure that we destroy our lease on last unmount
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      66245539
  6. 26 5月, 2012 3 次提交
  7. 25 5月, 2012 8 次提交
    • S
      dma-buf: minor documentation fixes. · 12c4727e
      Sumit Semwal 提交于
      Some minor inline documentation fixes for gaps resulting from new patches.
      Signed-off-by: NSumit Semwal <sumit.semwal@ti.com>
      Signed-off-by: NSumit Semwal <sumit.semwal@linaro.org>
      12c4727e
    • D
      dma-buf: add vmap interface · 98f86c9e
      Dave Airlie 提交于
      The main requirement I have for this interface is for scanning out
      using the USB gpu devices. Since these devices have to read the
      framebuffer on updates and linearly compress it, using kmaps
      is a major overhead for every update.
      
      v2: fix warn issues pointed out by Sylwester Nawrocki.
      
      v3: fix compile !CONFIG_DMA_SHARED_BUFFER and add _GPL for now
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      Reviewed-by: NRob Clark <rob.clark@linaro.org>
      Signed-off-by: NSumit Semwal <sumit.semwal@linaro.org>
      98f86c9e
    • D
      dma-buf: mmap support · 4c78513e
      Daniel Vetter 提交于
      Compared to Rob Clark's RFC I've ditched the prepare/finish hooks
      and corresponding ioctls on the dma_buf file. The major reason for
      that is that many people seem to be under the impression that this is
      also for synchronization with outstanding asynchronous processsing.
      I'm pretty massively opposed to this because:
      
      - It boils down reinventing a new rather general-purpose userspace
        synchronization interface. If we look at things like futexes, this
        is hard to get right.
      - Furthermore a lot of kernel code has to interact with this
        synchronization primitive. This smells a look like the dri1 hw_lock,
        a horror show I prefer not to reinvent.
      - Even more fun is that multiple different subsystems would interact
        here, so we have plenty of opportunities to create funny deadlock
        scenarios.
      
      I think synchronization is a wholesale different problem from data
      sharing and should be tackled as an orthogonal problem.
      
      Now we could demand that prepare/finish may only ensure cache
      coherency (as Rob intended), but that runs up into the next problem:
      We not only need mmap support to facilitate sw-only processing nodes
      in a pipeline (without jumping through hoops by importing the dma_buf
      into some sw-access only importer), which allows for a nicer
      ION->dma-buf upgrade path for existing Android userspace. We also need
      mmap support for existing importing subsystems to support existing
      userspace libraries. And a loot of these subsystems are expected to
      export coherent userspace mappings.
      
      So prepare/finish can only ever be optional and the exporter /needs/
      to support coherent mappings. Given that mmap access is always
      somewhat fallback-y in nature I've decided to drop this optimization,
      instead of just making it optional. If we demonstrate a clear need for
      this, supported by benchmark results, we can always add it in again
      later as an optional extension.
      
      Other differences compared to Rob's RFC is the above mentioned support
      for mapping a dma-buf through facilities provided by the importer.
      Which results in mmap support no longer being optional.
      
      Note that this dma-buf mmap patch does _not_ support every possible
      insanity an existing subsystem could pull of with mmap: Because it
      does not allow to intercept pagefaults and shoot down ptes importing
      subsystems can't add some magic of their own at these points (e.g. to
      automatically synchronize with outstanding rendering or set up some
      special resources). I've done a cursory read through a few mmap
      implementions of various subsytems and I'm hopeful that we can avoid
      this (and the complexity it'd bring with it).
      
      Additonally I've extended the documentation a bit to explain the hows
      and whys of this mmap extension.
      
      In case we ever want to add support for explicitly cache maneged
      userspace mmap with a prepare/finish ioctl pair, we could specify that
      userspace needs to mmap a different part of the dma_buf, e.g. the
      range starting at dma_buf->size up to dma_buf->size*2. This works
      because the size of a dma_buf is invariant over it's lifetime. The
      exporter would obviously need to fall back to coherent mappings for
      both ranges if a legacy clients maps the coherent range and the
      architecture cannot suppor conflicting caching policies. Also, this
      would obviously be optional and userspace needs to be able to fall
      back to coherent mappings.
      
      v2:
      - Spelling fixes from Rob Clark.
      - Compile fix for !DMA_BUF from Rob Clark.
      - Extend commit message to explain how explicitly cache managed mmap
        support could be added later.
      - Extend the documentation with implementations notes for exporters
        that need to manually fake coherency.
      
      v3:
      - dma_buf pointer initialization goof-up noticed by Rebecca Schultz
        Zavin.
      
      Cc: Rob Clark <rob.clark@linaro.org>
      Cc: Rebecca Schultz Zavin <rebecca@android.com>
      Acked-by: NRob Clark <rob.clark@linaro.org>
      Signed-Off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NSumit Semwal <sumit.semwal@linaro.org>
      4c78513e
    • W
      nfs4.1: add BIND_CONN_TO_SESSION operation · 7c44f1ae
      Weston Andros Adamson 提交于
      This patch adds the BIND_CONN_TO_SESSION operation which is needed for
      upcoming SP4_MACH_CRED work and useful for recovering from broken connections
      without destroying the session.
      Signed-off-by: NWeston Andros Adamson <dros@netapp.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      7c44f1ae
    • A
      NFSv4.1 add nfs_inode book keeping for mdsthreshold · 2701d086
      Andy Adamson 提交于
      Keep track of the number of bytes read or written via buffered, direct, and
      mem-mapped i/o for use by mdsthreshold size_io hints.
      Signed-off-by: NAndy Adamson <andros@netapp.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      2701d086
    • A
      82be417a
    • A
      NFSv4.1 mdsthreshold attribute xdr · 88034c3d
      Andy Adamson 提交于
      We only support one layout type per file system, so one threshold_item4 per
      mdsthreshold4.
      Signed-off-by: NAndy Adamson <andros@netapp.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      88034c3d
    • D
      kernel: Move REPEAT_BYTE definition into linux/kernel.h · 44696908
      David S. Miller 提交于
      And make sure that everything using it explicitly includes
      that header file.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      44696908
  8. 24 5月, 2012 2 次提交
  9. 23 5月, 2012 14 次提交
    • J
      Revert "sched, perf: Use a single callback into the scheduler" · ab0cce56
      Jiri Olsa 提交于
      This reverts commit cb04ff9a ("sched, perf: Use a single
      callback into the scheduler").
      
      Before this change was introduced, the process switch worked
      like this (wrt. to perf event schedule):
      
           schedule (prev, next)
             - schedule out all perf events for prev
             - switch to next
             - schedule in all perf events for current (next)
      
      After the commit, the process switch looks like:
      
           schedule (prev, next)
             - schedule out all perf events for prev
             - schedule in all perf events for (next)
             - switch to next
      
      The problem is, that after we schedule perf events in, the pmu
      is enabled and we can receive events even before we make the
      switch to next - so "current" still being prev process (event
      SAMPLE data are filled based on the value of the "current"
      process).
      
      Thats exactly what we see for test__PERF_RECORD test. We receive
      SAMPLES with PID of the process that our tracee is scheduled
      from.
      
      Discussed with Peter Zijlstra:
      
       > Bah!, yeah I guess reverting is the right thing for now. Sad
       > though.
       >
       > So by having the two hooks we have a black-spot between them
       > where we receive no events at all, this black-spot covers the
       > hand-over of current and we thus don't receive the 'wrong'
       > events.
       >
       > I rather liked we could do away with both that black-spot and
       > clean up the code a little, but apparently people rely on it.
      Signed-off-by: NJiri Olsa <jolsa@redhat.com>
      Acked-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: acme@redhat.com
      Cc: paulus@samba.org
      Cc: cjashfor@linux.vnet.ibm.com
      Cc: fweisbec@gmail.com
      Cc: eranian@google.com
      Link: http://lkml.kernel.org/r/20120523111302.GC1638@m.brq.redhat.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
      ab0cce56
    • S
      mfd: Fix max77693 build failure · 78302a19
      Samuel Ortiz 提交于
      Without it we get:
      
      drivers/mfd/max77693.c: In function ‘max77693_i2c_probe’:
      drivers/mfd/max77693.c:157:2: error: implicit declaration of function
      ‘max77693_irq_init’ [-Werror=implicit-function-declaration]
      drivers/mfd/max77693.c: In function ‘max77693_resume’:
      drivers/mfd/max77693.c:215:2: error: implicit declaration of function
      ‘max77693_irq_resume’ [-Werror=implicit-function-declaration]
      drivers/mfd/max77693-irq.c: In function ‘max77693_irq_lock’:
      drivers/mfd/max77693-irq.c:104:2: error: ‘struct max77693_dev’ has no member
      named ‘irqlock’
      drivers/mfd/max77693-irq.c: In function ‘max77693_irq_sync_unlock’:
      drivers/mfd/max77693-irq.c:119:11: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cache’
      drivers/mfd/max77693-irq.c:119:42: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:122:13: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:125:24: error: ‘struct max77693_dev’ has no member
      named ‘irqlock’
      drivers/mfd/max77693-irq.c: In function ‘max77693_irq_mask’:
      drivers/mfd/max77693-irq.c:141:11: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:143:11: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c: In function ‘max77693_irq_unmask’:
      drivers/mfd/max77693-irq.c:153:11: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:155:11: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c: In function ‘max77693_irq_thread’:
      drivers/mfd/max77693-irq.c:209:26: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:211:27: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:217:39: error: ‘struct max77693_dev’ has no member
      named ‘irq_domain’
      drivers/mfd/max77693-irq.c: In function ‘max77693_irq_init’:
      drivers/mfd/max77693-irq.c:260:2: error: ‘struct max77693_dev’ has no member
      named ‘irqlock’
      drivers/mfd/max77693-irq.c:268:12: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:269:12: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cache’
      drivers/mfd/max77693-irq.c:271:12: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cur’
      drivers/mfd/max77693-irq.c:272:12: error: ‘struct max77693_dev’ has no member
      named ‘irq_masks_cache’
      drivers/mfd/max77693-irq.c:292:10: error: ‘struct max77693_dev’ has no member
      named ‘irq_domain’
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      78302a19
    • D
      ttm: add prime sharing support to TTM (v2) · 129b78bf
      Dave Airlie 提交于
      This adds the ability for ttm common code to take an SG table
      and use it as the backing for a slave TTM object.
      
      The drivers can then populate their GTT tables using the SG object.
      
      v2: make sure to setup VM for sg bos as well.
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      Reviewed-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      129b78bf
    • D
      drm/prime: introduce sg->pages/addr arrays helper · 51ab7ba2
      Dave Airlie 提交于
      the ttm drivers need this currently, in order to get fault handling
      working and efficient.
      
      It also allows addrs to be NULL for devices like udl.
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      51ab7ba2
    • L
      mfd: Save device node parsed platform data for tps65910 sub devices · cb8d8654
      Laxman Dewangan 提交于
      Save the allocated memory to store the parsed device node information
      to the global device structure so that sub devices can directly use this
      pointer.
      In this way, the sub devices does not require to re-allocate the
      memory for storing the sub-devices specific device node information.
      Signed-off-by: NLaxman Dewangan <ldewangan@nvidia.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      cb8d8654
    • J
      mfd: Add r_select to lm3533 platform data · 730a3d01
      Johan Hovold 提交于
      Add resistor-select parameter to the platform data.
      Signed-off-by: NJohan Hovold <jhovold@gmail.com>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      730a3d01
    • S
      if: restore token ring ARP type to header · 37c106d0
      stephen hemminger 提交于
      Recent removal of Token Ring breaks the build of iproute2.
      
      Even though Token Ring support is gone from the kernel, it is worth
      keeping the the definition of the TR ARP type to avoid breaking
      userspace programs that use this file.
      Signed-off-by: NStephen Hemminger <shemminger@vyatta.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      37c106d0
    • C
      NFS: EXCHANGE_ID should save the server major and minor ID · acdeb69d
      Chuck Lever 提交于
      Save the server major and minor ID results from EXCHANGE_ID, as they
      are needed for detecting server trunking.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      acdeb69d
    • C
      NFS: Add nfs_client behavior flags · 4bf590e0
      Chuck Lever 提交于
      "noresvport" and "discrtry" can be passed to nfs_create_rpc_client()
      by setting flags in the passed-in nfs_client.  This change makes it
      easy to add new flags.
      
      Note that these settings are now "sticky" over the lifetime of a
      struct nfs_client, and may even be copied when an nfs_client is
      cloned.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      4bf590e0
    • C
      NFS: Refactor nfs_get_client(): initialize nfs_client · 8cab4c39
      Chuck Lever 提交于
      Clean up: Continue to rationalize the locking in nfs_get_client() by
      moving the logic that handles the case where a matching server IP
      address is not found.
      
      When we support server trunking detection, client initialization may
      return a different nfs_client struct than was passed to it.  Change
      the synopsis of the init_client methods to return an nfs_client.
      
      The client initialization logic in nfs_get_client() is not much more
      than a wrapper around ->init_client.  It's simpler to keep the little
      bits of error handling in the version-specific init_client methods.
      
      No behavior change is expected.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      8cab4c39
    • C
      NFS: Always use the same SETCLIENTID boot verifier · f092075d
      Chuck Lever 提交于
      Currently our NFS client assigns a unique SETCLIENTID boot verifier
      for each server IP address it knows about.  It's set to CURRENT_TIME
      when the struct nfs_client for that server IP is created.
      
      During the SETCLIENTID operation, our client also presents an
      nfs_client_id4 string to servers, as an identifier on which the server
      can hang all of this client's NFSv4 state.  Our client's
      nfs_client_id4 string is unique for each server IP address.
      
      An NFSv4 server is obligated to wipe all NFSv4 state associated with
      an nfs_client_id4 string when the client presents the same
      nfs_client_id4 string along with a changed SETCLIENTID boot verifier.
      
      When our client unmounts the last of a server's shares, it destroys
      that server's struct nfs_client.  The next time the client mounts that
      NFS server, it creates a fresh struct nfs_client with a fresh boot
      verifier.  On seeing the fresh verifer, the server wipes any previous
      NFSv4 state associated with that nfs_client_id4.
      
      However, NFSv4.1 clients are supposed to present the same
      nfs_client_id4 string to all servers.  And, to support Transparent
      State Migration, the same nfs_client_id4 string should be presented
      to all NFSv4.0 servers so they recognize that migrated state for this
      client belongs with state a server may already have for this client.
      (This is known as the Uniform Client String model).
      
      If the nfs_client_id4 string is the same but the boot verifier changes
      for each server IP address, SETCLIENTID and EXCHANGE_ID operations
      from such a client could unintentionally result in a server wiping a
      client's previously obtained lease.
      
      Thus, if our NFS client is going to use a fixed nfs_client_id4 string,
      either for NFSv4.0 or NFSv4.1 mounts, our NFS client should use a
      boot verifier that does not change depending on server IP address.
      Replace our current per-nfs_client boot verifier with a per-nfs_net
      boot verifier.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      f092075d
    • C
      NFS: Use proper naming conventions for the nfs_client.net field · 73ea666c
      Chuck Lever 提交于
      Clean up:  When naming fields and data types, follow established
      conventions to facilitate accurate grep/cscope searches.
      
      Introduced by commit e50a7a1a "NFS: make NFS client allocated per
      network namespace context," Tue Jan 10, 2012.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      73ea666c
    • C
      NFS: Use proper naming conventions for nfs_client.impl_id field · 59155546
      Chuck Lever 提交于
      Clean up:  When naming fields and data types, follow established
      conventions to facilitate accurate grep/cscope searches.
      
      Additionally, for consistency, move the impl_id field into the NFSv4-
      specific part of the nfs_client, and free that memory in the logic
      that shuts down NFSv4 nfs_clients.
      
      Introduced by commit 7d2ed9ac "NFSv4: parse and display server
      implementation ids," Fri Feb 17, 2012.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      59155546
    • C
      NFS: Use proper naming conventions for NFSv4.1 server scope fields · 79d4e1f0
      Chuck Lever 提交于
      Clean up:  When naming fields and data types, follow established
      conventions to facilitate accurate grep/cscope searches.
      
      Additionally, for consistency, move the scope field into the NFSv4-
      specific part of the nfs_client, and free that memory in the logic
      that shuts down NFSv4 nfs_clients.
      
      Introduced by commit 99fe60d0 "nfs41: exchange_id operation", April
      1 2009.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      79d4e1f0