Print this page
NEX-7362 CIFS hang with threads stuck in door calls to idmapd
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Revert "CIFS hang with threads stuck in door calls to idmapd"
Missing bug ID
This reverts commit 2fb0016d3d875206dacdd244256bdc4bf7eb41c2.
CIFS hang with threads stuck in door calls to idmapd
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-2483 idmap is wedged
Revert "NEX-2278 Joining AD with IDMU does not provide mappings for nfsv4"
This reverts commit 975b410d1bdb6ae907d3a97c7ed61d5844f452b9.
The fix for NEX-2278 worked in some cases, but caused idmap hangs.
(needs more work)
NEX-2278 Joining AD with IDMU does not provide mappings for nfsv4

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/idmap/idmapd/dbutils.c
          +++ new/usr/src/cmd/idmap/idmapd/dbutils.c
↓ open down ↓ 12 lines elided ↑ open up ↑
  13   13   * When distributing Covered Code, include this CDDL HEADER in each
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  23      - * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
       23 + * Copyright 2016 Nexenta Systems, Inc.  All rights reserved.
  24   24   */
  25   25  
  26   26  /*
  27   27   * Database related utility routines
  28   28   */
  29   29  
  30   30  #include <stdio.h>
  31   31  #include <stdlib.h>
  32   32  #include <string.h>
  33   33  #include <errno.h>
↓ open down ↓ 4173 lines elided ↑ open up ↑
4207 4207                              1,
4208 4208                              _idmapdstate.cfg->pgcfg.directory_based_mapping,
4209 4209                              _idmapdstate.cfg->pgcfg.default_domain,
4210 4210                              &qs);
4211 4211                          if (retcode != IDMAP_SUCCESS) {
4212 4212                                  if (retcode == IDMAP_ERR_RETRIABLE_NET_ERR &&
4213 4213                                      retries++ < ADUTILS_DEF_NUM_RETRIES)
4214 4214                                          goto retry;
4215 4215                                  degrade_svc(1, "failed to create request for "
4216 4216                                      "AD lookup by winname");
     4217 +                                UNLOCK_CONFIG();
4217 4218                                  return (retcode);
4218 4219                          }
4219 4220  
4220 4221                          restore_svc();
4221 4222  
4222 4223                          if (state != NULL && i == 0) {
4223 4224                                  /*
4224 4225                                   * Directory based name mapping is only
4225 4226                                   * performed within the joined forest (i == 0).
4226 4227                                   * We don't trust other "trusted" forests to
↓ open down ↓ 715 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX