mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-18 10:35:55 +00:00
Teach MTX_EXIT_RECURSE that the recursion count is a 32-bit integer,
not a 16-bit one.
This commit is contained in:
parent
d9c1afbeab
commit
c60db3e23a
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=66211
@ -775,10 +775,10 @@ _mtx_exit(struct mtx *mtxp, int type, const char *file, int line)
|
||||
8:
|
||||
|
||||
#define MTX_EXIT_WITH_RECURSION(lck,reg) \
|
||||
movw lck+MTX_RECURSECNT,%ax; \
|
||||
decw %ax; \
|
||||
movl lck+MTX_RECURSECNT,%eax; \
|
||||
decl %eax; \
|
||||
js 9f; \
|
||||
movw %ax,lck+MTX_RECURSECNT; \
|
||||
movl %eax,lck+MTX_RECURSECNT; \
|
||||
jmp 8f; \
|
||||
9: movl lck+MTX_LOCK,%eax; \
|
||||
movl $ MTX_UNOWNED,reg; \
|
||||
|
@ -775,10 +775,10 @@ _mtx_exit(struct mtx *mtxp, int type, const char *file, int line)
|
||||
8:
|
||||
|
||||
#define MTX_EXIT_WITH_RECURSION(lck,reg) \
|
||||
movw lck+MTX_RECURSECNT,%ax; \
|
||||
decw %ax; \
|
||||
movl lck+MTX_RECURSECNT,%eax; \
|
||||
decl %eax; \
|
||||
js 9f; \
|
||||
movw %ax,lck+MTX_RECURSECNT; \
|
||||
movl %eax,lck+MTX_RECURSECNT; \
|
||||
jmp 8f; \
|
||||
9: movl lck+MTX_LOCK,%eax; \
|
||||
movl $ MTX_UNOWNED,reg; \
|
||||
|
Loading…
Reference in New Issue
Block a user