@@ -255,11 +255,8 @@ dbuf_evict_user(dmu_buf_impl_t *db)
255
255
if (db -> db_level != 0 || db -> db_evict_func == NULL )
256
256
return ;
257
257
258
- if (db -> db_user_data_ptr_ptr )
259
- * db -> db_user_data_ptr_ptr = db -> db .db_data ;
260
258
db -> db_evict_func (& db -> db , db -> db_user_ptr );
261
259
db -> db_user_ptr = NULL ;
262
- db -> db_user_data_ptr_ptr = NULL ;
263
260
db -> db_evict_func = NULL ;
264
261
}
265
262
@@ -473,16 +470,6 @@ dbuf_verify(dmu_buf_impl_t *db)
473
470
}
474
471
#endif
475
472
476
- static void
477
- dbuf_update_data (dmu_buf_impl_t * db )
478
- {
479
- ASSERT (MUTEX_HELD (& db -> db_mtx ));
480
- if (db -> db_level == 0 && db -> db_user_data_ptr_ptr ) {
481
- ASSERT (!refcount_is_zero (& db -> db_holds ));
482
- * db -> db_user_data_ptr_ptr = db -> db .db_data ;
483
- }
484
- }
485
-
486
473
static void
487
474
dbuf_set_data (dmu_buf_impl_t * db , arc_buf_t * buf )
488
475
{
@@ -493,7 +480,6 @@ dbuf_set_data(dmu_buf_impl_t *db, arc_buf_t *buf)
493
480
db -> db .db_data = buf -> b_data ;
494
481
if (!arc_released (buf ))
495
482
arc_set_callback (buf , dbuf_do_evict , db );
496
- dbuf_update_data (db );
497
483
} else {
498
484
dbuf_evict_user (db );
499
485
db -> db .db_data = NULL ;
@@ -600,7 +586,6 @@ dbuf_read_impl(dmu_buf_impl_t *db, zio_t *zio, uint32_t *flags)
600
586
if (bonuslen )
601
587
bcopy (DN_BONUS (dn -> dn_phys ), db -> db .db_data , bonuslen );
602
588
DB_DNODE_EXIT (db );
603
- dbuf_update_data (db );
604
589
db -> db_state = DB_CACHED ;
605
590
mutex_exit (& db -> db_mtx );
606
591
return (0 );
@@ -1801,7 +1786,6 @@ dbuf_create(dnode_t *dn, uint8_t level, uint64_t blkid,
1801
1786
db -> db_blkptr = blkptr ;
1802
1787
1803
1788
db -> db_user_ptr = NULL ;
1804
- db -> db_user_data_ptr_ptr = NULL ;
1805
1789
db -> db_evict_func = NULL ;
1806
1790
db -> db_immediate_evict = 0 ;
1807
1791
db -> db_freed_in_flight = 0 ;
@@ -2052,7 +2036,6 @@ __dbuf_hold_impl(struct dbuf_hold_impl_data *dh)
2052
2036
}
2053
2037
2054
2038
(void ) refcount_add (& dh -> dh_db -> db_holds , dh -> dh_tag );
2055
- dbuf_update_data (dh -> dh_db );
2056
2039
DBUF_VERIFY (dh -> dh_db );
2057
2040
mutex_exit (& dh -> dh_db -> db_mtx );
2058
2041
@@ -2342,27 +2325,25 @@ dbuf_refcount(dmu_buf_impl_t *db)
2342
2325
}
2343
2326
2344
2327
void *
2345
- dmu_buf_set_user (dmu_buf_t * db_fake , void * user_ptr , void * user_data_ptr_ptr ,
2328
+ dmu_buf_set_user (dmu_buf_t * db_fake , void * user_ptr ,
2346
2329
dmu_buf_evict_func_t * evict_func )
2347
2330
{
2348
- return (dmu_buf_update_user (db_fake , NULL , user_ptr ,
2349
- user_data_ptr_ptr , evict_func ));
2331
+ return (dmu_buf_update_user (db_fake , NULL , user_ptr , evict_func ));
2350
2332
}
2351
2333
2352
2334
void *
2353
- dmu_buf_set_user_ie (dmu_buf_t * db_fake , void * user_ptr , void * user_data_ptr_ptr ,
2335
+ dmu_buf_set_user_ie (dmu_buf_t * db_fake , void * user_ptr ,
2354
2336
dmu_buf_evict_func_t * evict_func )
2355
2337
{
2356
2338
dmu_buf_impl_t * db = (dmu_buf_impl_t * )db_fake ;
2357
2339
2358
2340
db -> db_immediate_evict = TRUE;
2359
- return (dmu_buf_update_user (db_fake , NULL , user_ptr ,
2360
- user_data_ptr_ptr , evict_func ));
2341
+ return (dmu_buf_update_user (db_fake , NULL , user_ptr , evict_func ));
2361
2342
}
2362
2343
2363
2344
void *
2364
2345
dmu_buf_update_user (dmu_buf_t * db_fake , void * old_user_ptr , void * user_ptr ,
2365
- void * user_data_ptr_ptr , dmu_buf_evict_func_t * evict_func )
2346
+ dmu_buf_evict_func_t * evict_func )
2366
2347
{
2367
2348
dmu_buf_impl_t * db = (dmu_buf_impl_t * )db_fake ;
2368
2349
ASSERT (db -> db_level == 0 );
@@ -2373,10 +2354,7 @@ dmu_buf_update_user(dmu_buf_t *db_fake, void *old_user_ptr, void *user_ptr,
2373
2354
2374
2355
if (db -> db_user_ptr == old_user_ptr ) {
2375
2356
db -> db_user_ptr = user_ptr ;
2376
- db -> db_user_data_ptr_ptr = user_data_ptr_ptr ;
2377
2357
db -> db_evict_func = evict_func ;
2378
-
2379
- dbuf_update_data (db );
2380
2358
} else {
2381
2359
old_user_ptr = db -> db_user_ptr ;
2382
2360
}
0 commit comments