deadlock in dmGetEA

verpeaux

ADSM.ORG Member
Joined
Sep 17, 2002
Messages
5
Reaction score
5
Points
0
Website
Visit site
PREDATAR Control23

Hi,

We are using HSM on AIX. Since the last release, il is possible to migrate JFS2 extended attributes V2 filesystems. Since we converted one file system to EA V2, we experience deadlocks in the kernel:

bos.mp64 5.3.7.2
tivoli.tsm.client.hsm.jfs2 5.5.0.1

kdb session:

(0)> dla

Deadlock from tid 60001. This tid waits for the first line lock,
owned by Owner-Id that waits for the next line lock, and so on ...
LOCK NAME | ADDRESS | OWNER-ID | LOCK STATUS | WAITING FUNCTION
? ? ? | 0xF100010030506EE0 | Tid 18202F | 0x20000000 | slock
? ? ? | 0xF100010030506EE0 | Tid 18202F | 0x20000000 | slock
(0)> ttid 18202F
SLOT NAME STATE TID PRI RQ CPUID CL WCHAN

pvthread+018200 386 dsmc SLEEP 18202F 03C 3 0 F100010030506EE0 slist_table+000510

NAME................ dsmc
WTYPE............... WLOCK

(0)> sw 386
Switch to thread: <pvthread+018200>
(0)> f
pvthread+018200 STACK:
[002F7388]slock+0006A4 (00000000002F6FB4, 80000000000090B2 [??])
[00009558].simple_lock+000058 ()
[002666E0]vPut+00006C (??)
[00266884]iUnbind+0000C4 (??, ??)
[0026AED0]iRecycle+0000B8 (??, ??)
[00266F5C]iAlloc+00034C (??, ??)
[0026B440]iGet+0001D4 (??, ??, ??, ??)
[002A796C]eaLookup+0000DC (??, ??, ??, ??, ??)
[002B4364]dmGetEA+000064 (??, ??, ??, ??, ??)
[002B49C0]dmGetAttr+00008C (??, ??)
[002B6578]kvAlloc+000108 (??, ??)
[0026D130]vGet@AF79_20+0000BC (??, ??, ??, ??)
[0026B878]iGet+00060C (??, ??, ??, ??)
[002C49EC]j2_lookup+0001F4 (??, ??, ??, ??, ??, ??)
[04794870]hook_lookup+00009C (F1000100484893F8, F000000030046BB8,
F000000030046BC0, 0000000000000082, 0000000000000000, F10001003063597C)
[0040004C]vnop_lookup+000068 (??, ??, ??, ??, ??, ??)
[003CE19C]lookuppn+000508 (??, ??, ??, ??, ??, ??)
[003CE778]lookupname_cur+0000EC (??, ??, ??, ??, ??, ??, ??)
[003CE7D0]lookupname+00001C (??, ??, ??, ??, ??, ??)
[00440104]statx+000190 (??, ??, ??, ??)
[00003810].svc_instr+000110 ()
[D03516D0]lstat64+000014 (??, ??)
[1013DA40]1013DA40 ()
[1013CD58]1013CD58 ()
[10068954]10068954 ()
[1006C3B4]1006C3B4 ()
[1008D5B4]1008D5B4 ()
[103292BC]103292BC ()
[10329A74]10329A74 ()
[10329A74]10329A74 ()
[10327CF4]10327CF4 ()
[1032E3C4]1032E3C4 ()
[1032D63C]1032D63C ()
[103199EC]103199EC ()
[103194F4]103194F4 ()
[10319E7C]10319E7C ()
[10106A00]10106A00 ()
[10106940]10106940 ()
[D027A770]_pthread_body+000118 (??)
(0)> (0)> ttid 60001
SLOT NAME STATE TID PRI RQ CPUID CL WCHAN

pvthread+006000 96 cron SLEEP 060001 03C 2 0 F1000100303ED160 slist_table+000340
NAME................ cron(0)
WTYPE............... WLOCKREAD


(0)> sw 96

Switch to thread: <pvthread+006000>
(0)> f
pvthread+006000 STACK:
[002F2F9C]complex_lock_sleep_ppc+000168 (00000000D0353064, 000000000000F0B2,
0000000000000000, 000000002FF1E290 [??])
[002F35D4]lock_read_ppc+00028C (??)
[002A1738]j2_access+000040 (??, ??, ??, ??)
[00401C58]vnop_access+000054 (??, ??, ??, ??)
[004F621C]accessx+000228 (??, ??, ??)
[00003810].svc_instr+000110 ()
[D04A2384]tempnam+0000E0 (??, ??)
[10003110]ex+00023C (??)
[10004ED4]main+0005B4 (??, ??)
[10000198]__start+000098 ()


Deadlocks occur in various places, but the common point is that one the locked processes is in dmGetEA.

Pierre Verpeaux
 
PREDATAR Control23

For anyone interested ,nine years later, the fix is coming: IV92881 in AIX 7.2.2. I have not tested it yet.

Pierre Verpeaux
 
Top