Commit 073f197
committed
NFSD: fix use-after-free in __nfs42_ssc_open()
jira LE-1907
cve CVE-2022-4379
Rebuild_History Non-Buildable kernel-rt-5.14.0-284.30.1.rt14.315.el9_2
commit-author Dai Ngo <dai.ngo@oracle.com>
commit 75333d4
Problem caused by source's vfsmount being unmounted but remains
on the delayed unmount list. This happens when nfs42_ssc_open()
return errors.
Fixed by removing nfsd4_interssc_connect(), leave the vfsmount
for the laundromat to unmount when idle time expires.
We don't need to call nfs_do_sb_deactive when nfs42_ssc_open
return errors since the file was not opened so nfs_server->active
was not incremented. Same as in nfsd4_copy, if we fail to
launch nfsd4_do_async_copy thread then there's no need to
call nfs_do_sb_deactive
Reported-by: Xingyuan Mo <hdthky0@gmail.com>
Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
Tested-by: Xingyuan Mo <hdthky0@gmail.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
(cherry picked from commit 75333d4)
Signed-off-by: Jonathan Maple <jmaple@ciq.com>1 parent 3153cb6 commit 073f197
1 file changed
+5
-15
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1469 | 1469 | | |
1470 | 1470 | | |
1471 | 1471 | | |
1472 | | - | |
1473 | | - | |
1474 | | - | |
1475 | | - | |
1476 | | - | |
1477 | | - | |
1478 | | - | |
1479 | 1472 | | |
1480 | 1473 | | |
1481 | 1474 | | |
| |||
1578 | 1571 | | |
1579 | 1572 | | |
1580 | 1573 | | |
1581 | | - | |
1582 | | - | |
1583 | | - | |
1584 | | - | |
1585 | | - | |
1586 | 1574 | | |
1587 | 1575 | | |
1588 | 1576 | | |
| |||
1774 | 1762 | | |
1775 | 1763 | | |
1776 | 1764 | | |
1777 | | - | |
| 1765 | + | |
1778 | 1766 | | |
1779 | 1767 | | |
1780 | 1768 | | |
| |||
1855 | 1843 | | |
1856 | 1844 | | |
1857 | 1845 | | |
1858 | | - | |
1859 | | - | |
| 1846 | + | |
| 1847 | + | |
| 1848 | + | |
| 1849 | + | |
1860 | 1850 | | |
1861 | 1851 | | |
1862 | 1852 | | |
| |||
0 commit comments