mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 10:37:35 +03:00
Illumos 4914 - zfs on-disk bookmark structure should be named *_phys_t
4914 zfs on-disk bookmark structure should be named *_phys_t Reviewed by: George Wilson <george.wilson@delphix.com> Reviewed by: Christopher Siden <christopher.siden@delphix.com> Reviewed by: Richard Lowe <richlowe@richlowe.net> Reviewed by: Saso Kiselkov <skiselkov.ml@gmail.com> Approved by: Robert Mustacchi <rm@joyent.com> References: https://www.illumos.org/issues/4914 https://github.com/illumos/illumos-gate/commit/7802d7b Porting notes: There were a number of zfsonlinux-specific uses of zbookmark_t which needed to be updated. This should reduce the likelihood of further problems like issue #2094 from occurring. Ported by: Tim Chase <tim@chase2k.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #2558
This commit is contained in:
committed by
Brian Behlendorf
parent
1fa8f795d5
commit
5dbd68a352
+3
-3
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012, 2014 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
|
||||
*/
|
||||
|
||||
@@ -147,12 +147,12 @@ int arc_referenced(arc_buf_t *buf);
|
||||
|
||||
int arc_read(zio_t *pio, spa_t *spa, const blkptr_t *bp,
|
||||
arc_done_func_t *done, void *private, zio_priority_t priority, int flags,
|
||||
uint32_t *arc_flags, const zbookmark_t *zb);
|
||||
uint32_t *arc_flags, const zbookmark_phys_t *zb);
|
||||
zio_t *arc_write(zio_t *pio, spa_t *spa, uint64_t txg,
|
||||
blkptr_t *bp, arc_buf_t *buf, boolean_t l2arc, boolean_t l2arc_compress,
|
||||
const zio_prop_t *zp, arc_done_func_t *ready, arc_done_func_t *physdone,
|
||||
arc_done_func_t *done, void *private, zio_priority_t priority,
|
||||
int zio_flags, const zbookmark_t *zb);
|
||||
int zio_flags, const zbookmark_phys_t *zb);
|
||||
|
||||
arc_prune_t *arc_add_prune_callback(arc_prune_func_t *func, void *private);
|
||||
void arc_remove_prune_callback(arc_prune_t *p);
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
* CDDL HEADER END
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012, 2014 by Delphix. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef _SYS_BPTREE_H
|
||||
@@ -43,7 +43,7 @@ typedef struct bptree_phys {
|
||||
typedef struct bptree_entry_phys {
|
||||
blkptr_t be_bp;
|
||||
uint64_t be_birth_txg; /* only delete blocks born after this txg */
|
||||
zbookmark_t be_zb; /* holds traversal resume point if needed */
|
||||
zbookmark_phys_t be_zb; /* holds traversal resume point if needed */
|
||||
} bptree_entry_phys_t;
|
||||
|
||||
typedef int bptree_itor_t(void *arg, const blkptr_t *bp, dmu_tx_t *tx);
|
||||
|
||||
+1
-1
@@ -62,7 +62,7 @@ struct dsl_pool;
|
||||
struct dnode;
|
||||
struct drr_begin;
|
||||
struct drr_end;
|
||||
struct zbookmark;
|
||||
struct zbookmark_phys;
|
||||
struct spa;
|
||||
struct nvlist;
|
||||
struct arc_buf;
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2012 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012, 2014 by Delphix. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef _SYS_DMU_TRAVERSE_H
|
||||
@@ -40,7 +40,7 @@ struct zilog;
|
||||
struct arc_buf;
|
||||
|
||||
typedef int (blkptr_cb_t)(spa_t *spa, zilog_t *zilog, const blkptr_t *bp,
|
||||
const zbookmark_t *zb, const struct dnode_phys *dnp, void *arg);
|
||||
const zbookmark_phys_t *zb, const struct dnode_phys *dnp, void *arg);
|
||||
|
||||
#define TRAVERSE_PRE (1<<0)
|
||||
#define TRAVERSE_POST (1<<1)
|
||||
@@ -55,7 +55,7 @@ typedef int (blkptr_cb_t)(spa_t *spa, zilog_t *zilog, const blkptr_t *bp,
|
||||
int traverse_dataset(struct dsl_dataset *ds,
|
||||
uint64_t txg_start, int flags, blkptr_cb_t func, void *arg);
|
||||
int traverse_dataset_destroyed(spa_t *spa, blkptr_t *blkptr,
|
||||
uint64_t txg_start, zbookmark_t *resume, int flags,
|
||||
uint64_t txg_start, zbookmark_phys_t *resume, int flags,
|
||||
blkptr_cb_t func, void *arg);
|
||||
int traverse_pool(spa_t *spa,
|
||||
uint64_t txg_start, int flags, blkptr_cb_t func, void *arg);
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012, 2014 by Delphix. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef _SYS_DSL_SCAN_H
|
||||
@@ -62,7 +62,7 @@ typedef struct dsl_scan_phys {
|
||||
uint64_t scn_errors; /* scan I/O error count */
|
||||
uint64_t scn_ddt_class_max;
|
||||
ddt_bookmark_t scn_ddt_bookmark;
|
||||
zbookmark_t scn_bookmark;
|
||||
zbookmark_phys_t scn_bookmark;
|
||||
uint64_t scn_flags; /* dsl_scan_flags_t */
|
||||
} dsl_scan_phys_t;
|
||||
|
||||
|
||||
+4
-4
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2011, 2014 by Delphix. All rights reserved.
|
||||
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
@@ -51,7 +51,7 @@ typedef struct zilog zilog_t;
|
||||
typedef struct spa_aux_vdev spa_aux_vdev_t;
|
||||
typedef struct ddt ddt_t;
|
||||
typedef struct ddt_entry ddt_entry_t;
|
||||
typedef struct zbookmark zbookmark_t;
|
||||
typedef struct zbookmark_phys zbookmark_phys_t;
|
||||
|
||||
struct dsl_pool;
|
||||
struct dsl_dataset;
|
||||
@@ -720,7 +720,7 @@ typedef enum txg_state {
|
||||
|
||||
extern void spa_stats_init(spa_t *spa);
|
||||
extern void spa_stats_destroy(spa_t *spa);
|
||||
extern void spa_read_history_add(spa_t *spa, const zbookmark_t *zb,
|
||||
extern void spa_read_history_add(spa_t *spa, const zbookmark_phys_t *zb,
|
||||
uint32_t aflags);
|
||||
extern void spa_txg_history_add(spa_t *spa, uint64_t txg, hrtime_t birth_time);
|
||||
extern int spa_txg_history_set(spa_t *spa, uint64_t txg,
|
||||
@@ -842,7 +842,7 @@ extern void spa_history_log_internal_dd(dsl_dir_t *dd, const char *operation,
|
||||
dmu_tx_t *tx, const char *fmt, ...);
|
||||
|
||||
/* error handling */
|
||||
struct zbookmark;
|
||||
struct zbookmark_phys;
|
||||
extern void spa_log_error(spa_t *spa, zio_t *zio);
|
||||
extern void zfs_ereport_post(const char *class, spa_t *spa, vdev_t *vd,
|
||||
zio_t *zio, uint64_t stateoroffset, uint64_t length);
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2011, 2014 by Delphix. All rights reserved.
|
||||
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
@@ -46,9 +46,9 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct spa_error_entry {
|
||||
zbookmark_t se_bookmark;
|
||||
char *se_name;
|
||||
avl_node_t se_avl;
|
||||
zbookmark_phys_t se_bookmark;
|
||||
char *se_name;
|
||||
avl_node_t se_avl;
|
||||
} spa_error_entry_t;
|
||||
|
||||
typedef struct spa_history_phys {
|
||||
|
||||
+11
-11
@@ -22,7 +22,7 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012, 2014 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
|
||||
*/
|
||||
|
||||
@@ -263,11 +263,11 @@ extern const char *zio_type_name[ZIO_TYPES];
|
||||
* Note: this structure is called a bookmark because its original purpose
|
||||
* was to remember where to resume a pool-wide traverse.
|
||||
*
|
||||
* Note: this structure is passed between userland and the kernel.
|
||||
* Therefore it must not change size or alignment between 32/64 bit
|
||||
* compilation options.
|
||||
* Note: this structure is passed between userland and the kernel, and is
|
||||
* stored on disk (by virtue of being incorporated into other on-disk
|
||||
* structures, e.g. dsl_scan_phys_t).
|
||||
*/
|
||||
struct zbookmark {
|
||||
struct zbookmark_phys {
|
||||
uint64_t zb_objset;
|
||||
uint64_t zb_object;
|
||||
int64_t zb_level;
|
||||
@@ -383,7 +383,7 @@ typedef struct zio_link {
|
||||
|
||||
struct zio {
|
||||
/* Core information about this I/O */
|
||||
zbookmark_t io_bookmark;
|
||||
zbookmark_phys_t io_bookmark;
|
||||
zio_prop_t io_prop;
|
||||
zio_type_t io_type;
|
||||
enum zio_child io_child_type;
|
||||
@@ -464,17 +464,17 @@ extern zio_t *zio_root(spa_t *spa,
|
||||
|
||||
extern zio_t *zio_read(zio_t *pio, spa_t *spa, const blkptr_t *bp, void *data,
|
||||
uint64_t size, zio_done_func_t *done, void *private,
|
||||
zio_priority_t priority, enum zio_flag flags, const zbookmark_t *zb);
|
||||
zio_priority_t priority, enum zio_flag flags, const zbookmark_phys_t *zb);
|
||||
|
||||
extern zio_t *zio_write(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
|
||||
void *data, uint64_t size, const zio_prop_t *zp,
|
||||
zio_done_func_t *ready, zio_done_func_t *physdone, zio_done_func_t *done,
|
||||
void *private,
|
||||
zio_priority_t priority, enum zio_flag flags, const zbookmark_t *zb);
|
||||
zio_priority_t priority, enum zio_flag flags, const zbookmark_phys_t *zb);
|
||||
|
||||
extern zio_t *zio_rewrite(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
|
||||
void *data, uint64_t size, zio_done_func_t *done, void *private,
|
||||
zio_priority_t priority, enum zio_flag flags, zbookmark_t *zb);
|
||||
zio_priority_t priority, enum zio_flag flags, zbookmark_phys_t *zb);
|
||||
|
||||
extern void zio_write_override(zio_t *zio, blkptr_t *bp, int copies,
|
||||
boolean_t nopwrite);
|
||||
@@ -595,9 +595,9 @@ extern void zfs_ereport_post_checksum(spa_t *spa, vdev_t *vd,
|
||||
/* Called from spa_sync(), but primarily an injection handler */
|
||||
extern void spa_handle_ignored_writes(spa_t *spa);
|
||||
|
||||
/* zbookmark functions */
|
||||
/* zbookmark_phys functions */
|
||||
boolean_t zbookmark_is_before(const struct dnode_phys *dnp,
|
||||
const zbookmark_t *zb1, const zbookmark_t *zb2);
|
||||
const zbookmark_phys_t *zb1, const zbookmark_phys_t *zb2);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user