Print this page
13902 Fix for 13717 may break 8-disk raidz2
13915 installctx() blocking allocate causes problems
Portions contributed by: Jerry Jelinek <gjelinek@gmail.com>
Change-Id: I934d69946cec42630fc541fa8c7385b862b69ca2

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/sys/proc.h
          +++ new/usr/src/uts/common/sys/proc.h
↓ open down ↓ 13 lines elided ↑ open up ↑
  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  /*
  23   23   * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved.
  24      - * Copyright 2018 Joyent, Inc.
       24 + * Copyright 2021 Joyent, Inc.
  25   25   * Copyright 2020 Oxide Computer Company
  26   26   */
  27   27  
  28   28  /*      Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
  29   29  /*        All Rights Reserved   */
  30   30  
  31   31  #ifndef _SYS_PROC_H
  32   32  #define _SYS_PROC_H
  33   33  
  34   34  #include <sys/time.h>
↓ open down ↓ 676 lines elided ↑ open up ↑
 711  711          void            *arg,
 712  712          size_t          len,
 713  713          proc_t          *pp,
 714  714          int             state,
 715  715          pri_t           pri);
 716  716  extern  void    thread_exit(void) __NORETURN;
 717  717  extern  void    thread_free(kthread_t *);
 718  718  extern  void    thread_rele(kthread_t *);
 719  719  extern  void    thread_join(kt_did_t);
 720  720  extern  int     reaper(void);
      721 +extern  struct ctxop *installctx_preallocate(void);
 721  722  extern  void    installctx(kthread_t *, void *, void (*)(), void (*)(),
 722      -    void (*)(), void (*)(), void (*)(), void (*)());
      723 +    void (*)(), void (*)(), void (*)(), void (*)(), struct ctxop *);
 723  724  extern  int     removectx(kthread_t *, void *, void (*)(), void (*)(),
 724  725      void (*)(), void (*)(), void (*)(), void (*)());
 725  726  extern  void    savectx(kthread_t *);
 726  727  extern  void    restorectx(kthread_t *);
 727  728  extern  void    forkctx(kthread_t *, kthread_t *);
 728  729  extern  void    lwp_createctx(kthread_t *, kthread_t *);
 729  730  extern  void    exitctx(kthread_t *);
 730  731  extern  void    freectx(kthread_t *, int);
 731  732  extern  void    installpctx(proc_t *, void *, void (*)(), void (*)(),
 732  733      void (*)(), void (*)(), void (*)());
↓ open down ↓ 114 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX