I first reproduced the initial issue with zfs-linux 0.8.3-1ubuntu12.17: $ arc_summary Traceback (most recent call last): File "/usr/sbin/arc_summary", line 875, in <module> main() File "/usr/sbin/arc_summary", line 826, in main kstats = get_kstats() File "/usr/sbin/arc_summary", line 259, in get_kstats with open(PROC_PATH+section, 'r') as proc_location: FileNotFoundError: [Errno 2] No such file or directory: '/proc/spl/kstat/zfs/xuio_stats'
After enabling focal-proposed, installed 0.8.3-1ubuntu12.18: # apt-get install zfsutils-linux Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: libnvpair1linux (0.8.3-1ubuntu12.18) libuutil1linux (0.8.3-1ubuntu12.18) libzfs2linux (0.8.3-1ubuntu12.18) libzpool2linux (0.8.3-1ubuntu12.18) Suggested packages: nfs-kernel-server (1:1.3.4-2.5ubuntu3.7) samba-common-bin (2:4.15.13+dfsg-0ubuntu0.20.04.8) zfs-initramfs (0.8.3-1ubuntu12.18) | zfs-dracut (0.8.3-1ubuntu12.17) Recommended packages: zfs-zed (0.8.3-1ubuntu12.18) The following packages will be upgraded: libnvpair1linux (0.8.3-1ubuntu12.17 => 0.8.3-1ubuntu12.18) libuutil1linux (0.8.3-1ubuntu12.17 => 0.8.3-1ubuntu12.18) libzfs2linux (0.8.3-1ubuntu12.17 => 0.8.3-1ubuntu12.18) libzpool2linux (0.8.3-1ubuntu12.17 => 0.8.3-1ubuntu12.18) zfsutils-linux (0.8.3-1ubuntu12.17 => 0.8.3-1ubuntu12.18) 5 upgraded, 0 newly installed, 0 to remove and 27 not upgraded. Need to get 1,463 kB of archives. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] Get:1 http://us.archive.ubuntu.com/ubuntu focal-proposed/main amd64 zfsutils-linux amd64 0.8.3-1ubuntu12.18 [354 kB] Get:2 http://us.archive.ubuntu.com/ubuntu focal-proposed/main amd64 libuutil1linux amd64 0.8.3-1ubuntu12.18 [41.8 kB] Get:3 http://us.archive.ubuntu.com/ubuntu focal-proposed/main amd64 libzfs2linux amd64 0.8.3-1ubuntu12.18 [207 kB] Get:4 http://us.archive.ubuntu.com/ubuntu focal-proposed/main amd64 libzpool2linux amd64 0.8.3-1ubuntu12.18 [812 kB] Get:5 http://us.archive.ubuntu.com/ubuntu focal-proposed/main amd64 libnvpair1linux amd64 0.8.3-1ubuntu12.18 [48.4 kB] And it now works: $ arc_summary ------------------------------------------------------------------------ ZFS Subsystem Report Mon Aug 05 08:58:13 2024 Linux 5.15.0-117-generic 2.1.5-1ubuntu6~22.04.4 Machine: mars (x86_64) 2.1.5-1ubuntu6~22.04.4 ARC status: HEALTHY Memory throttle count: 0 ARC size (current): 82.7 % 1.5 GiB Target size (adaptive): 85.6 % 1.6 GiB Min size (hard limit): 6.2 % 119.3 MiB Max size (high water): 16:1 1.9 GiB Most Frequently Used (MFU) cache size: 92.1 % 1.3 GiB Most Recently Used (MRU) cache size: 7.9 % 116.4 MiB Metadata cache size (hard limit): 75.0 % 1.4 GiB Metadata cache size (current): 94.9 % 1.3 GiB Dnode cache size (hard limit): 10.0 % 143.2 MiB Dnode cache size (current): 8.9 % 12.8 MiB ARC hash breakdown: Elements max: 249.5k Elements current: 99.7 % 248.6k Collisions: 178.0k Chain max: 6 Chains: 43.0k ARC misc: Deleted: 12 Mutex misses: 0 Eviction skips: 1 ARC total accesses (hits + misses): 9.4M Cache hit ratio: 97.4 % 9.2M Cache miss ratio: 2.6 % 249.3k Actual hit ratio (MFU + MRU hits): 97.3 % 9.2M Data demand efficiency: 98.7 % 418.0k Data prefetch efficiency: 5.5 % 993 Cache hits by cache type: Most frequently used (MFU): 93.0 % 8.5M Most recently used (MRU): 7.0 % 640.4k Most frequently used (MFU) ghost: 0.0 % 0 Most recently used (MRU) ghost: 0.0 % 0 Anonymously used: < 0.1 % 1.6k Cache hits by data type: Demand data: 4.5 % 412.4k Demand prefetch data: < 0.1 % 55 Demand metadata: 94.4 % 8.7M Demand prefetch metadata: 1.1 % 96.6k Cache misses by data type: Demand data: 2.2 % 5.5k Demand prefetch data: 0.4 % 938 Demand metadata: 0.9 % 2.3k Demand prefetch metadata: 96.5 % 240.5k DMU prefetch efficiency: 44.8k Hit ratio: 15.7 % 7.0k Miss ratio: 84.3 % 37.8k L2ARC not detected, skipping section Solaris Porting Layer (SPL): spl_hostid 0 spl_hostid_path /etc/hostid spl_kmem_alloc_max 1048576 spl_kmem_alloc_warn 65536 spl_kmem_cache_kmem_threads 4 spl_kmem_cache_magazine_size 0 spl_kmem_cache_max_size 32 spl_kmem_cache_obj_per_slab 8 spl_kmem_cache_reclaim 0 spl_kmem_cache_slab_limit 16384 spl_max_show_tasks 512 spl_panic_halt 0 spl_schedule_hrtimeout_slack_us 0 spl_taskq_kick 0 spl_taskq_thread_bind 0 spl_taskq_thread_dynamic 1 spl_taskq_thread_priority 1 spl_taskq_thread_sequential 4 Tunables: dbuf_cache_hiwater_pct 10 dbuf_cache_lowater_pct 10 dbuf_cache_max_bytes 18446744073709551615 dbuf_cache_shift 5 dbuf_metadata_cache_max_bytes 18446744073709551615 dbuf_metadata_cache_shift 6 dmu_object_alloc_chunk_shift 7 dmu_prefetch_max 134217728 ignore_hole_birth 1 l2arc_feed_again 1 l2arc_feed_min_ms 200 l2arc_feed_secs 1 l2arc_headroom 2 l2arc_headroom_boost 200 l2arc_meta_percent 33 l2arc_mfuonly 0 l2arc_noprefetch 1 l2arc_norw 0 l2arc_rebuild_blocks_min_l2size 1073741824 l2arc_rebuild_enabled 1 l2arc_trim_ahead 0 l2arc_write_boost 8388608 l2arc_write_max 8388608 metaslab_aliquot 1048576 metaslab_bias_enabled 1 metaslab_debug_load 0 metaslab_debug_unload 0 metaslab_df_max_search 16777216 metaslab_df_use_largest_segment 0 metaslab_force_ganging 16777217 metaslab_fragmentation_factor_enabled 1 metaslab_lba_weighting_enabled 1 metaslab_preload_enabled 1 metaslab_unload_delay 32 metaslab_unload_delay_ms 600000 send_holes_without_birth_time 1 spa_asize_inflation 24 spa_config_path /etc/zfs/zpool.cache spa_load_print_vdev_tree 0 spa_load_verify_data 1 spa_load_verify_metadata 1 spa_load_verify_shift 4 spa_slop_shift 5 vdev_file_logical_ashift 9 vdev_file_physical_ashift 9 vdev_removal_max_span 32768 vdev_validate_skip 0 zap_iterate_prefetch 1 zfetch_array_rd_sz 1048576 zfetch_max_distance 67108864 zfetch_max_idistance 67108864 zfetch_max_sec_reap 2 zfetch_max_streams 8 zfetch_min_distance 4194304 zfetch_min_sec_reap 1 zfs_abd_scatter_enabled 1 zfs_abd_scatter_max_order 10 zfs_abd_scatter_min_size 1536 zfs_admin_snapshot 0 zfs_allow_redacted_dataset_mount 0 zfs_arc_average_blocksize 8192 zfs_arc_dnode_limit 0 zfs_arc_dnode_limit_percent 10 zfs_arc_dnode_reduce_percent 10 zfs_arc_evict_batch_limit 10 zfs_arc_eviction_pct 200 zfs_arc_grow_retry 0 zfs_arc_lotsfree_percent 10 zfs_arc_max 0 zfs_arc_meta_adjust_restarts 4096 zfs_arc_meta_limit 0 zfs_arc_meta_limit_percent 75 zfs_arc_meta_min 0 zfs_arc_meta_prune 10000 zfs_arc_meta_strategy 1 zfs_arc_min 0 zfs_arc_min_prefetch_ms 0 zfs_arc_min_prescient_prefetch_ms 0 zfs_arc_p_dampener_disable 1 zfs_arc_p_min_shift 0 zfs_arc_pc_percent 0 zfs_arc_prune_task_threads 1 zfs_arc_shrink_shift 0 zfs_arc_shrinker_limit 10000 zfs_arc_sys_free 0 zfs_async_block_max_blocks 18446744073709551615 zfs_autoimport_disable 1 zfs_checksum_events_per_second 20 zfs_commit_timeout_pct 5 zfs_compressed_arc_enabled 1 zfs_condense_indirect_commit_entry_delay_ms 0 zfs_condense_indirect_obsolete_pct 25 zfs_condense_indirect_vdevs_enable 1 zfs_condense_max_obsolete_bytes 1073741824 zfs_condense_min_mapping_bytes 131072 zfs_dbgmsg_enable 1 zfs_dbgmsg_maxsize 4194304 zfs_dbuf_state_index 0 zfs_ddt_data_is_special 1 zfs_deadman_checktime_ms 60000 zfs_deadman_enabled 1 zfs_deadman_failmode wait zfs_deadman_synctime_ms 600000 zfs_deadman_ziotime_ms 300000 zfs_dedup_prefetch 0 zfs_delay_min_dirty_percent 60 zfs_delay_scale 500000 zfs_delete_blocks 20480 zfs_dirty_data_max 400404070 zfs_dirty_data_max_max 1001010176 zfs_dirty_data_max_max_percent 25 zfs_dirty_data_max_percent 10 zfs_dirty_data_sync_percent 20 zfs_disable_ivset_guid_check 0 zfs_dmu_offset_next_sync 1 zfs_embedded_slog_min_ms 64 zfs_expire_snapshot 300 zfs_fallocate_reserve_percent 110 zfs_flags 0 zfs_free_bpobj_enabled 1 zfs_free_leak_on_eio 0 zfs_free_min_time_ms 1000 zfs_history_output_max 1048576 zfs_immediate_write_sz 32768 zfs_initialize_chunk_size 1048576 zfs_initialize_value 16045690984833335022 zfs_keep_log_spacemaps_at_export 0 zfs_key_max_salt_uses 400000000 zfs_livelist_condense_new_alloc 0 zfs_livelist_condense_sync_cancel 0 zfs_livelist_condense_sync_pause 0 zfs_livelist_condense_zthr_cancel 0 zfs_livelist_condense_zthr_pause 0 zfs_livelist_max_entries 500000 zfs_livelist_min_percent_shared 75 zfs_lua_max_instrlimit 100000000 zfs_lua_max_memlimit 104857600 zfs_max_async_dedup_frees 100000 zfs_max_log_walking 5 zfs_max_logsm_summary_length 10 zfs_max_missing_tvds 0 zfs_max_nvlist_src_size 0 zfs_max_recordsize 1048576 zfs_metaslab_find_max_tries 100 zfs_metaslab_fragmentation_threshold 70 zfs_metaslab_max_size_cache_sec 3600 zfs_metaslab_mem_limit 25 zfs_metaslab_segment_weight_enabled 1 zfs_metaslab_switch_threshold 2 zfs_metaslab_try_hard_before_gang 0 zfs_mg_fragmentation_threshold 95 zfs_mg_noalloc_threshold 0 zfs_min_metaslabs_to_flush 1 zfs_multihost_fail_intervals 10 zfs_multihost_history 0 zfs_multihost_import_intervals 20 zfs_multihost_interval 1000 zfs_multilist_num_sublists 0 zfs_no_scrub_io 0 zfs_no_scrub_prefetch 0 zfs_nocacheflush 0 zfs_nopwrite_enabled 1 zfs_object_mutex_size 64 zfs_obsolete_min_time_ms 500 zfs_override_estimate_recordsize 0 zfs_pd_bytes_max 52428800 zfs_per_txg_dirty_frees_percent 5 zfs_prefetch_disable 0 zfs_read_history 0 zfs_read_history_hits 0 zfs_rebuild_max_segment 1048576 zfs_rebuild_scrub_enabled 1 zfs_rebuild_vdev_limit 33554432 zfs_reconstruct_indirect_combinations_max 4096 zfs_recover 0 zfs_recv_queue_ff 20 zfs_recv_queue_length 16777216 zfs_recv_write_batch_size 1048576 zfs_removal_ignore_errors 0 zfs_removal_suspend_progress 0 zfs_remove_max_segment 16777216 zfs_resilver_disable_defer 0 zfs_resilver_min_time_ms 3000 zfs_scan_blkstats 0 zfs_scan_checkpoint_intval 7200 zfs_scan_fill_weight 3 zfs_scan_ignore_errors 0 zfs_scan_issue_strategy 0 zfs_scan_legacy 0 zfs_scan_max_ext_gap 2097152 zfs_scan_mem_lim_fact 20 zfs_scan_mem_lim_soft_fact 20 zfs_scan_strict_mem_lim 0 zfs_scan_suspend_progress 0 zfs_scan_vdev_limit 4194304 zfs_scrub_min_time_ms 1000 zfs_send_corrupt_data 0 zfs_send_no_prefetch_queue_ff 20 zfs_send_no_prefetch_queue_length 1048576 zfs_send_queue_ff 20 zfs_send_queue_length 16777216 zfs_send_unmodified_spill_blocks 1 zfs_slow_io_events_per_second 20 zfs_spa_discard_memory_limit 16777216 zfs_special_class_metadata_reserve_pct 25 zfs_sync_pass_deferred_free 2 zfs_sync_pass_dont_compress 8 zfs_sync_pass_rewrite 2 zfs_sync_taskq_batch_pct 75 zfs_traverse_indirect_prefetch_limit 32 zfs_trim_extent_bytes_max 134217728 zfs_trim_extent_bytes_min 32768 zfs_trim_metaslab_skip 0 zfs_trim_queue_limit 10 zfs_trim_txg_batch 32 zfs_txg_history 100 zfs_txg_timeout 5 zfs_unflushed_log_block_max 131072 zfs_unflushed_log_block_min 1000 zfs_unflushed_log_block_pct 400 zfs_unflushed_log_txg_max 1000 zfs_unflushed_max_mem_amt 1073741824 zfs_unflushed_max_mem_ppm 1000 zfs_unlink_suspend_progress 0 zfs_user_indirect_is_special 1 zfs_vdev_aggregate_trim 0 zfs_vdev_aggregation_limit 1048576 zfs_vdev_aggregation_limit_non_rotating 131072 zfs_vdev_async_read_max_active 3 zfs_vdev_async_read_min_active 1 zfs_vdev_async_write_active_max_dirty_percent 60 zfs_vdev_async_write_active_min_dirty_percent 30 zfs_vdev_async_write_max_active 10 zfs_vdev_async_write_min_active 2 zfs_vdev_cache_bshift 16 zfs_vdev_cache_max 16384 zfs_vdev_cache_size 0 zfs_vdev_default_ms_count 200 zfs_vdev_default_ms_shift 29 zfs_vdev_initializing_max_active 1 zfs_vdev_initializing_min_active 1 zfs_vdev_max_active 1000 zfs_vdev_max_auto_ashift 16 zfs_vdev_min_auto_ashift 9 zfs_vdev_min_ms_count 16 zfs_vdev_mirror_non_rotating_inc 0 zfs_vdev_mirror_non_rotating_seek_inc 1 zfs_vdev_mirror_rotating_inc 0 zfs_vdev_mirror_rotating_seek_inc 5 zfs_vdev_mirror_rotating_seek_offset 1048576 zfs_vdev_ms_count_limit 131072 zfs_vdev_nia_credit 5 zfs_vdev_nia_delay 5 zfs_vdev_queue_depth_pct 1000 zfs_vdev_raidz_impl cycle [fastest] original scalar sse2 ssse3 zfs_vdev_read_gap_limit 32768 zfs_vdev_rebuild_max_active 3 zfs_vdev_rebuild_min_active 1 zfs_vdev_removal_max_active 2 zfs_vdev_removal_min_active 1 zfs_vdev_scheduler unused zfs_vdev_scrub_max_active 3 zfs_vdev_scrub_min_active 1 zfs_vdev_sync_read_max_active 10 zfs_vdev_sync_read_min_active 10 zfs_vdev_sync_write_max_active 10 zfs_vdev_sync_write_min_active 10 zfs_vdev_trim_max_active 2 zfs_vdev_trim_min_active 1 zfs_vdev_write_gap_limit 4096 zfs_vnops_read_chunk_size 1048576 zfs_zevent_len_max 512 zfs_zevent_retain_expire_secs 900 zfs_zevent_retain_max 2000 zfs_zil_clean_taskq_maxalloc 1048576 zfs_zil_clean_taskq_minalloc 1024 zfs_zil_clean_taskq_nthr_pct 100 zil_maxblocksize 131072 zil_nocacheflush 0 zil_replay_disable 0 zil_slog_bulk 786432 zio_deadman_log_all 0 zio_dva_throttle_enabled 1 zio_requeue_io_start_cut_in_line 1 zio_slow_io_ms 30000 zio_taskq_batch_pct 80 zio_taskq_batch_tpq 0 zvol_inhibit_dev 0 zvol_major 230 zvol_max_discard_blocks 16384 zvol_prefetch_bytes 131072 zvol_request_sync 0 zvol_threads 32 zvol_volmode 1 VDEV cache disabled, skipping section ZIL committed transactions: 13.6k Commit requests: 2.3k Flushes to stable storage: 2.3k Transactions to SLOG storage pool: 0 Bytes 0 Transactions to non-SLOG storage pool: 10.7 MiB 1.2k Thanks! -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to zfs-linux in Ubuntu. https://bugs.launchpad.net/bugs/1980848 Title: arc_summary doesn't work with HWE kernel 5.15 Status in zfs-linux package in Ubuntu: Fix Released Status in zfs-linux source package in Focal: Fix Committed Bug description: [ Impact ] The arc_summary command doesn't work on HWE kernels for Focal [ Test Plan ] 1) setup 20.04 with HWE kernel 5.15 2) install `zfsutils-linux` 3) run `arc_summary`, this should not cause any errors $ arc_summary Traceback (most recent call last): File "/usr/sbin/arc_summary", line 875, in <module> main() File "/usr/sbin/arc_summary", line 826, in main kstats = get_kstats() File "/usr/sbin/arc_summary", line 259, in get_kstats with open(PROC_PATH+section, 'r') as proc_location: FileNotFoundError: [Errno 2] No such file or directory: '/proc/spl/kstat/zfs/xuio_stats' [ Where problems could occur ] Given that upstream does not have to deal with two kernel versions like Ubuntu (GA vs HWE), our SAUCE patch will skip any non-existent files under /proc/spl/kstat/zfs. This ensures that arc_summary works as expected under both GA and HWE kernels. Users expecting the HWE kernel to contain output from xuio_stats like we had in GA will not see it in the ARC summary output. Any new stats that get introduced into the HWE kernel will also be skipped due to this patch, if they're missing from the GA kernel. -- # Issue description `arc_summary` no longer works with kernel 5.15. It used to work with previous kernel like 5.13. # Steps to reproduce 1) setup 20.04 with HWE kernel 5.15 2) install `zfsutils-linux` 3) run `arc_summary` $ arc_summary Traceback (most recent call last): File "/usr/sbin/arc_summary", line 875, in <module> main() File "/usr/sbin/arc_summary", line 826, in main kstats = get_kstats() File "/usr/sbin/arc_summary", line 259, in get_kstats with open(PROC_PATH+section, 'r') as proc_location: FileNotFoundError: [Errno 2] No such file or directory: '/proc/spl/kstat/zfs/xuio_stats' Indeed, the xuio_stats file isn't there anymore: $ ll /proc/spl/kstat/zfs/ total 0 dr-xr-xr-x 21 root root 0 Jul 6 10:49 ./ dr-xr-xr-x 4 root root 0 Jul 6 10:49 ../ -rw-r--r-- 1 root root 0 Jul 6 10:49 abdstats -rw-r--r-- 1 root root 0 Jul 6 10:49 arcstats dr-xr-xr-x 20 root root 0 Jul 6 10:49 data/ -rw------- 1 root root 0 Jul 6 10:49 dbgmsg -rw------- 1 root root 0 Jul 6 10:49 dbufs -rw-r--r-- 1 root root 0 Jul 6 10:49 dbufstats dr-xr-xr-x 70 root root 0 Jul 6 10:49 default/ -rw-r--r-- 1 root root 0 Jul 6 10:49 dmu_tx -rw-r--r-- 1 root root 0 Jul 6 10:49 dnodestats -rw-r--r-- 1 root root 0 Jul 6 10:49 fletcher_4_bench -rw-r--r-- 1 root root 0 Jul 6 10:49 fm -rw-r--r-- 1 root root 0 Jul 6 10:49 import_progress -rw-r--r-- 1 root root 0 Jul 6 10:49 metaslab_stats -rw-r--r-- 1 root root 0 Jul 6 10:49 vdev_cache_stats -rw-r--r-- 1 root root 0 Jul 6 10:49 vdev_mirror_stats -rw-r--r-- 1 root root 0 Jul 6 10:49 vdev_raidz_bench -rw-r--r-- 1 root root 0 Jul 6 10:49 zfetchstats -rw-r--r-- 1 root root 0 Jul 6 10:49 zil -rw-r--r-- 1 root root 0 Jul 6 10:49 zstd # Workaround This (naive) patch sidesteps the problem: $ diff -Naur /usr/sbin/arc_summary.old /usr/sbin/arc_summary --- /usr/sbin/arc_summary.old 2022-07-06 10:59:50.752833101 -0400 +++ /usr/sbin/arc_summary 2022-07-06 10:59:22.449113169 -0400 @@ -255,6 +255,8 @@ secs = SECTION_PATHS.values() for section in secs: + if not os.path.exists(PROC_PATH+section): + continue with open(PROC_PATH+section, 'r') as proc_location: lines = [line for line in proc_location] # Additional information $ lsb_release -rd Description: Ubuntu 20.04.4 LTS Release: 20.04 $ uname -r 5.15.0-41-generic $ apt-cache policy zfsutils-linux linux-image-generic-hwe-20.04 zfsutils-linux: Installed: 0.8.3-1ubuntu12.14 Candidate: 0.8.3-1ubuntu12.14 Version table: *** 0.8.3-1ubuntu12.14 500 500 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages 100 /var/lib/dpkg/status 0.8.3-1ubuntu12.9 500 500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages 0.8.3-1ubuntu12 500 500 http://us.archive.ubuntu.com/ubuntu focal/main amd64 Packages linux-image-generic-hwe-20.04: Installed: 5.15.0.41.44~20.04.13 Candidate: 5.15.0.41.44~20.04.13 Version table: *** 5.15.0.41.44~20.04.13 400 400 http://us.archive.ubuntu.com/ubuntu focal-proposed/main amd64 Packages 100 /var/lib/dpkg/status 5.13.0.52.59~20.04.31 500 500 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages 500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages 5.4.0.26.32 500 500 http://us.archive.ubuntu.com/ubuntu focal/main amd64 Packages To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1980848/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp