mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-25 19:57:43 +03:00
Add linux kernel memory support
Required kmem/vmem changes Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
+3
-3
@@ -1270,7 +1270,7 @@ load_nvlist(spa_t *spa, uint64_t obj, nvlist_t **value)
|
||||
nvsize = *(uint64_t *)db->db_data;
|
||||
dmu_buf_rele(db, FTAG);
|
||||
|
||||
packed = kmem_alloc(nvsize, KM_SLEEP);
|
||||
packed = kmem_alloc(nvsize, KM_SLEEP | KM_NODEBUG);
|
||||
error = dmu_read(spa->spa_meta_objset, obj, 0, nvsize, packed,
|
||||
DMU_READ_PREFETCH);
|
||||
if (error == 0)
|
||||
@@ -5217,7 +5217,7 @@ spa_sync_nvlist(spa_t *spa, uint64_t obj, nvlist_t *nv, dmu_tx_t *tx)
|
||||
* saves us a pre-read to get data we don't actually care about.
|
||||
*/
|
||||
bufsize = P2ROUNDUP(nvsize, SPA_CONFIG_BLOCKSIZE);
|
||||
packed = kmem_alloc(bufsize, KM_SLEEP);
|
||||
packed = vmem_alloc(bufsize, KM_SLEEP);
|
||||
|
||||
VERIFY(nvlist_pack(nv, &packed, &nvsize, NV_ENCODE_XDR,
|
||||
KM_SLEEP) == 0);
|
||||
@@ -5225,7 +5225,7 @@ spa_sync_nvlist(spa_t *spa, uint64_t obj, nvlist_t *nv, dmu_tx_t *tx)
|
||||
|
||||
dmu_write(spa->spa_meta_objset, obj, 0, bufsize, packed, tx);
|
||||
|
||||
kmem_free(packed, bufsize);
|
||||
vmem_free(packed, bufsize);
|
||||
|
||||
VERIFY(0 == dmu_bonus_hold(spa->spa_meta_objset, obj, FTAG, &db));
|
||||
dmu_buf_will_dirty(db, tx);
|
||||
|
||||
Reference in New Issue
Block a user