New -zisofs parameter bpt_free_ratio=
This commit is contained in:
@ -664,6 +664,13 @@ int Xorriso_set_zisofs_params(struct XorrisO *xorriso, int flag)
|
||||
|
||||
memset(&ctrl, 0, sizeof(ctrl));
|
||||
ctrl.version= 1;
|
||||
ret= iso_zisofs_get_params(&ctrl, 0);
|
||||
if(ret < 0) {
|
||||
Xorriso_report_iso_error(xorriso, "", ret,
|
||||
"Error when inquiring zisofs parameters before setting some",
|
||||
0, "FAILURE", 1);
|
||||
return(0);
|
||||
}
|
||||
|
||||
ctrl.compression_level= xorriso->zlib_level;
|
||||
if(xorriso->zisofs_block_size == (1 << 16))
|
||||
@ -681,6 +688,7 @@ int Xorriso_set_zisofs_params(struct XorrisO *xorriso, int flag)
|
||||
if(xorriso->zisofs_v2_block_size == (1 << i))
|
||||
ctrl.v2_block_size_log2= i;
|
||||
ctrl.block_number_target= xorriso->zisofs_block_number_target;
|
||||
ctrl.bpt_discard_free_ratio= xorriso->zisofs_bpt_discard_free_ratio;
|
||||
|
||||
ret= iso_zisofs_set_params(&ctrl, 0);
|
||||
Xorriso_process_msg_queues(xorriso,0);
|
||||
@ -750,19 +758,26 @@ int Xorriso_status_zisofs(struct XorrisO *xorriso, char *filter, FILE *fp,
|
||||
(double) xorriso->zisofs_block_number_target);
|
||||
Xorriso_status_result(xorriso, filter, fp, flag & 2);
|
||||
}
|
||||
|
||||
used_blocks= Xorriso_zisofs_current_blocks(xorriso, 0);
|
||||
if(always || !(
|
||||
xorriso->zisofs_max_total_blocks ==
|
||||
xorriso->zisofs_max_total_blocks ==
|
||||
xorriso->zisofs_max_total_blocks_default &&
|
||||
xorriso->zisofs_max_file_blocks ==
|
||||
xorriso->zisofs_max_file_blocks ==
|
||||
xorriso->zisofs_max_file_blocks_default &&
|
||||
used_blocks == 0)) {
|
||||
xorriso->zisofs_bpt_discard_free_ratio ==
|
||||
xorriso->zisofs_bpt_discard_free_ratio_default)) {
|
||||
sprintf(xorriso->result_line,
|
||||
"-zisofs max_bpt=%.f:bpt_used=%.f:max_bpt_f=%.f\n",
|
||||
(double) xorriso->zisofs_max_total_blocks * 8.0,
|
||||
"-zisofs max_bpt=%.f:max_bpt_f=%.f:bpt_free_ratio=%.3f\n",
|
||||
(double) xorriso->zisofs_max_total_blocks * 8.0,
|
||||
(double) xorriso->zisofs_max_file_blocks * 8.0,
|
||||
xorriso->zisofs_bpt_discard_free_ratio);
|
||||
Xorriso_status_result(xorriso, filter, fp, flag & 2);
|
||||
}
|
||||
if(always || !(used_blocks == 0)) {
|
||||
sprintf(xorriso->result_line,
|
||||
"-zisofs bpt_used=%.f:bpt_ratio_used=%.3f\n",
|
||||
(double) used_blocks * 8.0,
|
||||
(double) xorriso->zisofs_max_file_blocks * 8.0);
|
||||
((double) used_blocks) / (double) xorriso->zisofs_max_total_blocks);
|
||||
Xorriso_status_result(xorriso, filter, fp, flag & 2);
|
||||
}
|
||||
if(always || !(
|
||||
|
Reference in New Issue
Block a user