[BACK]Return to rf_dagflags.h CVS log [TXT][DIR] Up to [local] / sys / dev / raidframe

Annotation of sys/dev/raidframe/rf_dagflags.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: rf_dagflags.h,v 1.3 2002/12/16 07:01:03 tdeval Exp $  */
                      2: /*     $NetBSD: rf_dagflags.h,v 1.3 1999/02/05 00:06:08 oster Exp $    */
                      3:
                      4: /*
                      5:  * Copyright (c) 1995 Carnegie-Mellon University.
                      6:  * All rights reserved.
                      7:  *
                      8:  * Author: Mark Holland
                      9:  *
                     10:  * Permission to use, copy, modify and distribute this software and
                     11:  * its documentation is hereby granted, provided that both the copyright
                     12:  * notice and this permission notice appear in all copies of the
                     13:  * software, derivative works or modified versions, and any portions
                     14:  * thereof, and that both notices appear in supporting documentation.
                     15:  *
                     16:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     17:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
                     18:  * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     19:  *
                     20:  * Carnegie Mellon requests users of this software to return to
                     21:  *
                     22:  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
                     23:  *  School of Computer Science
                     24:  *  Carnegie Mellon University
                     25:  *  Pittsburgh PA 15213-3890
                     26:  *
                     27:  * any improvements or extensions that they make and grant Carnegie the
                     28:  * rights to redistribute these changes.
                     29:  */
                     30:
                     31: /*****************************************************************************
                     32:  *
                     33:  * dagflags.h -- Flags that can be given to DoAccess.
                     34:  * I pulled these out of dag.h because routines that call DoAccess may need
                     35:  * these flags, but certainly do not need the declarations related to the DAG
                     36:  * data structures.
                     37:  *
                     38:  *****************************************************************************/
                     39:
                     40:
                     41: #ifndef        _RF__RF_DAGFLAGS_H_
                     42: #define        _RF__RF_DAGFLAGS_H_
                     43:
                     44: /*
                     45:  * Bitmasks for the "flags" parameter (RF_RaidAccessFlags_t) used
                     46:  * by DoAccess, SelectAlgorithm, and the DAG creation routines.
                     47:  *
                     48:  * If USE_DAG or USE_ASM is specified, neither the DAG nor the ASM
                     49:  * will be modified, which means that you can't SUPRESS if you
                     50:  * specify USE_DAG.
                     51:  */
                     52:
                     53: #define        RF_DAG_FLAGS_NONE                   0   /* No flags */
                     54: #define        RF_DAG_SUPPRESS_LOCKS           (1<<0)  /*
                     55:                                                 * Supress all stripe locks in
                     56:                                                 * the DAG.
                     57:                                                 */
                     58: #define        RF_DAG_RETURN_ASM               (1<<1)  /*
                     59:                                                 * Create an ASM and return it
                     60:                                                 * instead of freeing it.
                     61:                                                 */
                     62: #define        RF_DAG_RETURN_DAG               (1<<2)  /*
                     63:                                                 * Create a DAG and return it
                     64:                                                 * instead of freeing it.
                     65:                                                 */
                     66: #define        RF_DAG_NONBLOCKING_IO           (1<<3)  /*
                     67:                                                 * Cause DoAccess to be
                     68:                                                 * non-blocking.
                     69:                                                 */
                     70: #define        RF_DAG_ACCESS_COMPLETE          (1<<4)  /*
                     71:                                                 * The access is complete.
                     72:                                                 */
                     73: #define        RF_DAG_DISPATCH_RETURNED        (1<<5)  /*
                     74:                                                 * Used to handle the case
                     75:                                                 * where the dag invokes no
                     76:                                                 * I/O.
                     77:                                                 */
                     78: #define        RF_DAG_TEST_ACCESS              (1<<6)  /*
                     79:                                                 * This access came through
                     80:                                                 * rf_ioctl instead of
                     81:                                                 * rf_strategy.
                     82:                                                 */
                     83:
                     84: #endif /* !_RF__RF_DAGFLAGS_H_ */

CVSweb