Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(102)

Side by Side Diff: dm-bht.h

Issue 6880209: verity: remove special-case logic for the root node (Closed) Base URL: http://git.chromium.org/git/dm-verity.git@master
Patch Set: Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | dm-bht.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 The Chromium OS Authors <chromium-os-dev@chromium.org> 2 * Copyright (C) 2010 The Chromium OS Authors <chromium-os-dev@chromium.org>
3 * 3 *
4 * Device-Mapper block hash tree interface. 4 * Device-Mapper block hash tree interface.
5 * See Documentation/device-mapper/dm-bht.txt for details. 5 * See Documentation/device-mapper/dm-bht.txt for details.
6 * 6 *
7 * This file is released under the GPLv2. 7 * This file is released under the GPLv2.
8 */ 8 */
9 #ifndef __LINUX_DM_BHT_H 9 #ifndef __LINUX_DM_BHT_H
10 #define __LINUX_DM_BHT_H 10 #define __LINUX_DM_BHT_H
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 /* Computed values */ 93 /* Computed values */
94 unsigned int node_count; /* Data size (in hashes) for each entry */ 94 unsigned int node_count; /* Data size (in hashes) for each entry */
95 unsigned int node_count_shift; /* first bit set - 1 */ 95 unsigned int node_count_shift; /* first bit set - 1 */
96 /* There is one per CPU so that verified can be simultaneous. */ 96 /* There is one per CPU so that verified can be simultaneous. */
97 struct hash_desc *hash_desc; /* Container for the hash alg */ 97 struct hash_desc *hash_desc; /* Container for the hash alg */
98 unsigned int digest_size; 98 unsigned int digest_size;
99 sector_t sectors; /* Number of disk sectors used */ 99 sector_t sectors; /* Number of disk sectors used */
100 100
101 /* bool verified; Full tree is verified */ 101 /* bool verified; Full tree is verified */
102 u8 *root_digest; /* hash_alg(levels[0].entries[*].nodes) */ 102 u8 *root_digest; /* hash_alg(levels[0].entries[*].nodes) */
103 atomic_t root_state; /* Uses UNALLOCATED, REQUESTED, and VERIFIED */
104 struct dm_bht_level *levels; /* in reverse order */ 103 struct dm_bht_level *levels; /* in reverse order */
105 mempool_t *entry_pool; 104 mempool_t *entry_pool;
106 /* Callbacks for reading and/or writing to the hash device */ 105 /* Callbacks for reading and/or writing to the hash device */
107 dm_bht_callback read_cb; 106 dm_bht_callback read_cb;
108 dm_bht_callback write_cb; 107 dm_bht_callback write_cb;
109 }; 108 };
110 109
111 /* Constructor for struct dm_bht instances. */ 110 /* Constructor for struct dm_bht instances. */
112 int dm_bht_create(struct dm_bht *bht, 111 int dm_bht_create(struct dm_bht *bht,
113 unsigned int block_count, 112 unsigned int block_count,
(...skipping 21 matching lines...) Expand all
135 */ 134 */
136 int dm_bht_compute(struct dm_bht *bht, void *read_cb_ctx); 135 int dm_bht_compute(struct dm_bht *bht, void *read_cb_ctx);
137 int dm_bht_sync(struct dm_bht *bht, void *write_cb_ctx); 136 int dm_bht_sync(struct dm_bht *bht, void *write_cb_ctx);
138 int dm_bht_store_block(struct dm_bht *bht, unsigned int block_index, 137 int dm_bht_store_block(struct dm_bht *bht, unsigned int block_index,
139 u8 *block_data); 138 u8 *block_data);
140 int dm_bht_zeroread_callback(void *ctx, sector_t start, u8 *dst, sector_t count, 139 int dm_bht_zeroread_callback(void *ctx, sector_t start, u8 *dst, sector_t count,
141 struct dm_bht_entry *entry); 140 struct dm_bht_entry *entry);
142 void dm_bht_read_completed(struct dm_bht_entry *entry, int status); 141 void dm_bht_read_completed(struct dm_bht_entry *entry, int status);
143 void dm_bht_write_completed(struct dm_bht_entry *entry, int status); 142 void dm_bht_write_completed(struct dm_bht_entry *entry, int status);
144 #endif /* __LINUX_DM_BHT_H */ 143 #endif /* __LINUX_DM_BHT_H */
OLDNEW
« no previous file with comments | « no previous file | dm-bht.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698