Commit b4cc073
Al Viro
d_prune_aliases(): use a shrink list
Instead of dropping aliases one by one, restarting, etc., just
collect them into a shrink list and kill them off in one pass.
We don't really need the restarts - one alias can't pin another
(directory has only one alias, and couldn't be its own ancestor
anyway), so collecting everything that is not busy and taking it
out would take care of everything evictable that had been there
as we entered the function. And new aliases added while we'd
been dropping old ones could just as easily have appeared right
as we return to caller...
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>1 parent f5c8a8a commit b4cc073
1 file changed
Lines changed: 5 additions & 25 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
647 | 647 | | |
648 | 648 | | |
649 | 649 | | |
650 | | - | |
651 | | - | |
652 | | - | |
653 | | - | |
654 | | - | |
655 | | - | |
656 | | - | |
657 | | - | |
658 | | - | |
659 | | - | |
660 | | - | |
661 | | - | |
662 | | - | |
663 | | - | |
664 | 650 | | |
665 | 651 | | |
666 | 652 | | |
| |||
1090 | 1076 | | |
1091 | 1077 | | |
1092 | 1078 | | |
| 1079 | + | |
1093 | 1080 | | |
1094 | | - | |
| 1081 | + | |
1095 | 1082 | | |
1096 | 1083 | | |
1097 | 1084 | | |
1098 | | - | |
1099 | | - | |
1100 | | - | |
1101 | | - | |
1102 | | - | |
1103 | | - | |
1104 | | - | |
1105 | | - | |
1106 | | - | |
1107 | | - | |
| 1085 | + | |
| 1086 | + | |
1108 | 1087 | | |
1109 | 1088 | | |
1110 | 1089 | | |
| 1090 | + | |
1111 | 1091 | | |
1112 | 1092 | | |
1113 | 1093 | | |
| |||
0 commit comments