[lustre-discuss] Lustre-Manual on lfsck - non-existing entries?

Thomas Roth t.roth at gsi.de
Wed Nov 1 09:50:01 PDT 2023


Thanks!
In the end, it was a typo.

But your explanation about parameters having wandered off to debugfs has 
helped me find some other info, long lost from /proc and not 
Lustre-related ;-)

Regards
Thomas

On 10/31/23 22:34, Andreas Dilger wrote:
> On Oct 31, 2023, at 13:12, Thomas Roth via lustre-discuss <lustre-discuss at lists.lustre.org> wrote:
>>
>> Hi all,
>>
>> after starting an `lctl lfsck_start -A  -C -o` and the oi_scrub having completed, I would check the layout scan as described in the Lustre manual, "36.4.3.3. LFSCK status of layout via procfs", by
>>
>>> lctl get_param -n mdd.FSNAME-MDT_target.lfsck_layout
>>
>> Doesn't work, and inspection of 'ls /sys/fs/lustre/mdd/FSNAME-MDT0000/' shows:
>>> ...
>>> lfsck_async_windows
>>> lfsck_speed_limit
>> ...
>>
>> as the only entries showing the string "lfsck".
>>
>>> lctl lfsck_query -M FSNAME-MDT0000 -t layout
>>
>> does show some info, although it is not what the manual describes as output of the `lctl get_param` command.
>>
>>
>> Issue with the manual or issue with our Lustre?
> 
> Are you perhaps running the "lctl get_param" as a non-root user?  One of the wonderful quirks of the kernel is that they don't want new parameters stored in procfs, and they don't want "complex" parameters (more than one value) stored in sysfs, so by necessity this means anything "complex" needs to go into debugfs (/sys/kernel/debug) but that was changed at some point to only be accessible by root.
> 
> As such, you need to be root to access any of the "complex" parameters/stats:
> 
>    $ lctl get_param mdd.*.lfsck_layout
>    error: get_param: param_path 'mdd/*/lfsck_layout': No such file or directory
> 
>    $ sudo lctl get_param mdd.*.lfsck_layout
>    mdd.myth-MDT0000.lfsck_layout=
>    name: lfsck_layout
>    magic: 0xb1732fed
>    version: 2
>    status: completed
>    flags:
>    param: all_targets
>    last_completed_time: 1694676243
>    time_since_last_completed: 4111337 seconds
>    latest_start_time: 1694675639
>    time_since_latest_start: 4111941 seconds
>    last_checkpoint_time: 1694676243
>    time_since_last_checkpoint: 4111337 seconds
>    latest_start_position: 12
>    last_checkpoint_position: 4194304
>    first_failure_position: 0
>    success_count: 6
>    repaired_dangling: 0
>    repaired_unmatched_pair: 0
>    repaired_multiple_referenced: 0
>    repaired_orphan: 0
>    repaired_inconsistent_owner: 0
>    repaired_others: 0
>    skipped: 0
>    failed_phase1: 0
>    failed_phase2: 0
>    checked_phase1: 3791402
>    checked_phase2: 0
>    run_time_phase1: 595 seconds
>    run_time_phase2: 8 seconds
>    average_speed_phase1: 6372 items/sec
>    average_speed_phase2: 0 objs/sec
>    real_time_speed_phase1: N/A
>    real_time_speed_phase2: N/A
>    current_position: N/A
> 
>    $ sudo ls /sys/kernel/debug/lustre/mdd/myth-MDT0000/
>    total 0
>    0 changelog_current_mask  0 changelog_users  0 lfsck_namespace
>    0 changelog_mask          0 lfsck_layout
> 
> Getting an update to the manual to clarify this requirement would be welcome.
> 
> Cheers, Andreas
> --
> Andreas Dilger
> Lustre Principal Architect
> Whamcloud
> 
> 
> 
> 
> 
> 
> 


More information about the lustre-discuss mailing list