Annotation of XNU/osfmk/ddb/db_watch.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
                      3:  *
                      4:  * @APPLE_LICENSE_HEADER_START@
                      5:  * 
                      6:  * The contents of this file constitute Original Code as defined in and
                      7:  * are subject to the Apple Public Source License Version 1.1 (the
                      8:  * "License").  You may not use this file except in compliance with the
                      9:  * License.  Please obtain a copy of the License at
                     10:  * http://www.apple.com/publicsource and read it before using this file.
                     11:  * 
                     12:  * This Original Code and all software distributed under the License are
                     13:  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
                     14:  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
                     15:  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
                     16:  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
                     17:  * License for the specific language governing rights and limitations
                     18:  * under the License.
                     19:  * 
                     20:  * @APPLE_LICENSE_HEADER_END@
                     21:  */
                     22: /*
                     23:  * @OSF_COPYRIGHT@
                     24:  */
                     25: /*
                     26:  * HISTORY
                     27:  * 
                     28:  * Revision 1.1.1.1  1998/09/22 21:05:48  wsanchez
                     29:  * Import of Mac OS X kernel (~semeria)
                     30:  *
                     31:  * Revision 1.1.1.1  1998/03/07 02:26:09  wsanchez
                     32:  * Import of OSF Mach kernel (~mburg)
                     33:  *
                     34:  * Revision 1.1.6.1  1994/09/23  01:23:04  ezf
                     35:  *     change marker to not FREE
                     36:  *     [1994/09/22  21:11:39  ezf]
                     37:  *
                     38:  * Revision 1.1.2.4  1993/07/27  18:28:34  elliston
                     39:  *     Add ANSI prototypes.  CR #9523.
                     40:  *     [1993/07/27  18:13:34  elliston]
                     41:  * 
                     42:  * Revision 1.1.2.3  1993/06/07  22:07:00  jeffc
                     43:  *     CR9176 - ANSI C violations: trailing tokens on CPP
                     44:  *     directives, extra semicolons after decl_ ..., asm keywords
                     45:  *     [1993/06/07  18:57:38  jeffc]
                     46:  * 
                     47:  * Revision 1.1.2.2  1993/06/02  23:13:21  jeffc
                     48:  *     Added to OSF/1 R1.3 from NMK15.0.
                     49:  *     [1993/06/02  20:57:59  jeffc]
                     50:  * 
                     51:  * Revision 1.1  1992/09/30  02:24:28  robert
                     52:  *     Initial revision
                     53:  * 
                     54:  * $EndLog$
                     55:  */
                     56: /* CMU_HIST */
                     57: /*
                     58:  * Revision 2.5  91/10/09  16:04:47  af
                     59:  *      Revision 2.4.3.1  91/10/05  13:09:14  jeffreyh
                     60:  *             Changed "map" field of db_watchpoint structure to "task",
                     61:  *             and also changed paramters of function declarations.
                     62:  *             [91/08/29            tak]
                     63:  * 
                     64:  * Revision 2.4.3.1  91/10/05  13:09:14  jeffreyh
                     65:  *     Changed "map" field of db_watchpoint structure to "task",
                     66:  *     and also changed paramters of function declarations.
                     67:  *     [91/08/29            tak]
                     68:  * 
                     69:  * Revision 2.4  91/05/14  15:37:46  mrt
                     70:  *     Correcting copyright
                     71:  * 
                     72:  * Revision 2.3  91/02/05  17:07:31  mrt
                     73:  *     Changed to new Mach copyright
                     74:  *     [91/01/31  16:20:09  mrt]
                     75:  * 
                     76:  * Revision 2.2  90/10/25  14:44:21  rwd
                     77:  *     Generalized the watchpoint support.
                     78:  *     [90/10/16            rwd]
                     79:  *     Created.
                     80:  *     [90/10/16            rpd]
                     81:  * 
                     82:  */
                     83: /* CMU_ENDHIST */
                     84: /* 
                     85:  * Mach Operating System
                     86:  * Copyright (c) 1991,1990 Carnegie Mellon University
                     87:  * All Rights Reserved.
                     88:  * 
                     89:  * Permission to use, copy, modify and distribute this software and its
                     90:  * documentation is hereby granted, provided that both the copyright
                     91:  * notice and this permission notice appear in all copies of the
                     92:  * software, derivative works or modified versions, and any portions
                     93:  * thereof, and that both notices appear in supporting documentation.
                     94:  * 
                     95:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     96:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     97:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     98:  * 
                     99:  * Carnegie Mellon requests users of this software to return to
                    100:  * 
                    101:  *  Software Distribution Coordinator  or  [email protected]
                    102:  *  School of Computer Science
                    103:  *  Carnegie Mellon University
                    104:  *  Pittsburgh PA 15213-3890
                    105:  * 
                    106:  * any improvements or extensions that they make and grant Carnegie Mellon
                    107:  * the rights to redistribute these changes.
                    108:  */
                    109: /*
                    110:  */
                    111: /*
                    112:  *     Author: David B. Golub, Carnegie Mellon University
                    113:  *     Date:   10/90
                    114:  */
                    115: 
                    116: #ifndef        _DDB_DB_WATCH_H_
                    117: #define        _DDB_DB_WATCH_H_
                    118: 
                    119: #include <mach/machine/vm_types.h>
                    120: #include <kern/task.h>
                    121: #include <machine/db_machdep.h>
                    122: 
                    123: /*
                    124:  * Watchpoint.
                    125:  */
                    126: 
                    127: typedef struct db_watchpoint {
                    128:        task_t    task;                 /* in this map */
                    129:        db_addr_t loaddr;               /* from this address */
                    130:        db_addr_t hiaddr;               /* to this address */
                    131:        struct db_watchpoint *link;     /* link in in-use or free chain */
                    132: } *db_watchpoint_t;
                    133: 
                    134: 
                    135: 
                    136: /* Prototypes for functions exported by this module.
                    137:  */
                    138: 
                    139: void db_deletewatch_cmd(
                    140:        db_expr_t       addr,
                    141:        int             have_addr,
                    142:        db_expr_t       count,
                    143:        char *          modif);
                    144: 
                    145: void db_watchpoint_cmd(
                    146:        db_expr_t       addr,
                    147:        int             have_addr,
                    148:        db_expr_t       count,
                    149:        char *          modif);
                    150: 
                    151: void db_listwatch_cmd(void);
                    152: 
                    153: void db_clear_watchpoints(void);
                    154: 
                    155: void db_set_watchpoints(void);
                    156: 
                    157: boolean_t db_find_watchpoint(
                    158:        vm_map_t        map,
                    159:        db_addr_t       addr,
                    160:        db_regs_t       *regs);
                    161: 
                    162: #endif /* !_DDB_DB_WATCH_H_ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.