Print this page
5880 Increase IOV_MAX to at least 1024
Portions contributed by: Jerry Jelinek <jerry.jelinek@joyent.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/sys/stream.h
          +++ new/usr/src/uts/common/sys/stream.h
↓ open down ↓ 14 lines elided ↑ open up ↑
  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 2009 Sun Microsystems, Inc.  All rights reserved.
  23   23   * Use is subject to license terms.
  24   24   * Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
       25 + * Copyright 2015 Joyent, Inc.  All rights reserved.
  25   26   */
  26   27  
  27   28  /*      Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
  28   29  /*        All Rights Reserved   */
  29   30  
  30   31  
  31   32  #ifndef _SYS_STREAM_H
  32   33  #define _SYS_STREAM_H
  33   34  
  34   35  /*
↓ open down ↓ 602 lines elided ↑ open up ↑
 637  638  #define SO_STRHOLD      0x020000        /* No longer implemented */
 638  639  #define SO_ERROPT       0x040000        /* set error option */
 639  640  #define SO_COPYOPT      0x080000        /* copy option(s) present */
 640  641  #define SO_MAXBLK       0x100000        /* set maximum message block size */
 641  642  #define SO_TAIL         0x200000        /* set the extra allocated space */
 642  643  
 643  644  #if defined(_KERNEL) || defined(_FAKE_KERNEL)
 644  645  /*
 645  646   * Structure for rw (read/write) procedure calls. A pointer
 646  647   * to a struiod_t is passed as a parameter to the rwnext() call.
 647      - *
 648      - * Note: DEF_IOV_MAX is defined and used as it is in "fs/vncalls.c"
 649      - *       as there isn't a formal definition of IOV_MAX ???
 650  648   */
 651      -#define DEF_IOV_MAX     16
 652      -
 653  649  struct struiod {
 654  650          mblk_t          *d_mp;          /* pointer to mblk (chain) */
 655  651          uio_t           d_uio;          /* uio info */
 656      -        iovec_t d_iov[DEF_IOV_MAX];     /* iov referenced by uio */
      652 +        iovec_t         *d_iov;         /* iov referenced by uio */
 657  653  };
 658  654  
 659  655  /*
 660  656   * Structure for information procedure calls.
 661  657   */
 662  658  struct infod {
 663  659          unsigned char   d_cmd;          /* info info request command */
 664  660          unsigned char   d_res;          /* info info command results */
 665  661          int             d_bytes;        /* mblk(s) byte count */
 666  662          int             d_count;        /* count of mblk(s) */
↓ open down ↓ 200 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX