[LU-7744] "ima_file_free: f3 open/free imbalance" opening file on inactive OST Created: 05/Feb/16  Updated: 13/Oct/21  Resolved: 13/Oct/21

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.5.3
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Andreas Dilger Assignee: WC Triage
Resolution: Cannot Reproduce Votes: 0
Labels: None
Environment:

Lustre: 2.5.3
Kernel: 2.6.32.26-175.fc12.x86_64


Attachments: File debug.echo    
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

When opening a file for write with objects on an inactive OST, the console prints the following message:

# lctl --device myth-OST0003-osc-ffff880037c4f800 deactivate
Lustre: setting import myth-OST0003_UUID INACTIVE by administrator request
# echo foo > /myth/tmp/ost3/f3
-bash: /myth/tmp/ost3/f3: Cannot send after transport endpoint shutdown

ima_file_free: f3 open/free imbalance (r:0 w:0 o:0 f:0)
Pid: 1752, comm: mythbackend Not tainted 2.6.32.26-175.fc12.x86_64 #1
Call Trace:
 [<ffffffff81202cd4>] ima_file_free+0xa7/0x10c
 [<ffffffff8111d379>] __fput+0x13a/0x1dc
 [<ffffffff8111d435>] fput+0x1a/0x1c
 [<ffffffff81126937>] release_open_intent+0x23/0x25
 [<ffffffff811298fc>] do_filp_open+0x59c/0x9d6
 [<ffffffff8104fcce>] ? finish_task_switch+0x48/0xb8
 [<ffffffff81230886>] ? might_fault+0x21/0x23
 [<ffffffff81133577>] ? alloc_fd+0x7b/0x124
 [<ffffffff81119a54>] do_sys_open+0x63/0x10f
 [<ffffffff81119b33>] sys_open+0x20/0x22
 [<ffffffff81011d32>] system_call_fastpath+0x16/0x1b

It is also printed with different values occasionally:

ima_file_free: 2025_20160204115700.mpg.png open/free imbalance (r:0 w:-1 o:-1 f:0)
ima_file_free: 2025_20160204115700.mpg.png open/free imbalance (r:0 w:-2 o:-2 f:0)
ima_file_free: 2025_20160204115700.mpg.png open/free imbalance (r:0 w:-3 o:-3 f:0)
ima_file_free: 2025_20160204142700.mpg.png open/free imbalance (r:0 w:0 o:0 f:0)

Running an "ls" or "cat" on a directory in this filesystem produces errors:

ls /myth/tmp
ls: cannot access /myth/tmp/list.after: Cannot send after transport endpoint shutdown
ls: cannot access /myth/tmp/readonly2: Cannot send after transport endpoint shutdown
ls: cannot access /myth/tmp/2M: Cannot send after transport endpoint shutdown
ls: cannot access /myth/tmp/3stripe: Cannot send after transport endpoint shutdown
ls: cannot access /myth/tmp/list.before: Cannot send after transport endpoint shutdown
ls: cannot access /myth/tmp/4stripe: Cannot send after transport endpoint shutdown

but did not generate the console errors.

It seems that there is some kind of imbalance in the error handling for files opened for write.


Generated at Sat Feb 10 02:11:33 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.