1. A valve failure protection device for use in a fluid filter element of the type including a filter media that defines an inner passage having first and second ends and a bypass assembly positioned in the second flow path for selectively permitting flow through the first end and the inner passage to the second end, and comprising a perforated safety barrier adapted to be positioned in the inner passage downstream of the bypass assembly, wherein the safety barrier is dimensioned to prevent the bypass assembly or pieces thereof from passing therethrough while permitting the flow of fluid along the inner passage to the second end.
2. A valve failure protection device according to claim 1, wherein the safety barrier is cup-shaped.
3. A valve failure protection device according to claim 2, wherein the cup-shaped safety barrier has tapered sides that have openings formed therethrough.
4. A valve failure protection device according to claim 1 wherein the safety barrier is integrally formed with a tube adapted to be disposed within the inner passage.
5. A valve failure protection device according to claim 4 wherein the tube comprises a first section and a second section and the safety barrier is integrally formed with the first section.
6. A valve failure protection device according to claim 1 wherein the safety barrier is attached to a cap which is adapted to be positioned at the first end of the inner passage.
7. A valve failure protection device according to claim 7 wherein the safety barrier and the cap are integrally formed.
8. A filter element comprising:
a filter media that defines an inner passage having first and second ends;
a first flow path defined through the filter media and the inner passage to the second end;
a second flow path that bypasses the filter media defined through the first end and the inner passage to the second end;
a bypass assembly positioned in the second flow path for diverting flow from the first flow path through the second flow path; and
a perforated safety barrier positioned in the second flow path downstream of the bypass assembly wherein the safety barrier is dimensioned to prevent the bypass assembly or pieces thereof from passing therethrough while permitting the flow of fluid along the second flow path to the second end.
9. A filter element according to claim 9, wherein the safety barrier is cup-shaped.
10. A filter element according to claim 10, wherein the cup-shaped safety barrier has tapered sides that have openings formed therethrough.
11. A filter element according to claim 9 further comprising a tube having openings formed through a wall thereof disposed within the inner region passage such that fluid flowing along the first fluid path flows through the openings.
12. A filter element according to claim 12 wherein the safety barrier is integrally formed with the tube.
13. A filter element according to claim 12 wherein the tube comprises a first section and a second section and the safety barrier is integrally formed with the first section.
14. A filter element according to claim 9 further comprising a cap positioned at the inlet first end of the inner passage that is dimensioned to receive the bypass assembly.
15. A filter element according to claim 15 wherein the safety barrier and the cap are integrally formed.
16. A filter element according to claim 9 further comprising a cap positioned at the second end of the inner region that is dimensioned to receive the bypass assembly.
17. A filter element according to claim 17 wherein the safety barrier and the cap are integrally formed.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method, in a data processing system, for cross-allocated block repair in a mounted file system, the method comprising:
identifying, by a processor in the data processing system, a set of cross-allocated blocks from a plurality of blocks within an inode of the mounted file system, based on a corresponding bit associated with each cross-allocated block in a duplicated block information bitmap being in a first identified state, wherein the duplicated block information bitmap is populated by the method comprising:
capturing, by the processor, a snapshot of the mounted file system, wherein the snapshot is a point-in-time copy of a file system state of the mounted file system;
scanning, by the processor, an entire inode range of the snapshot;
for each inode in the inode range, identifying, by the processor, file system blocks associated with the inode;
responsive to identifying each file system block associated with the inode, determining, by the processor, whether a corresponding bit in an allocation information bitmap is in a second identified state;
responsive to the corresponding bit in the allocation information bitmap being in the second identified state, updating, by the processor, the corresponding bit in the duplicated block information bitmap to the first identified state; and
responsive to the corresponding bit in the allocation information bitmap failing to be in the second identified state, updating, by the processor, the corresponding bit in the allocation information bitmap to the second identified state;
repairing, by the processor, the set of cross-allocated blocks using a user-defined repair process; and
deallocating, by the processor, one or more of the set of cross-allocated blocks based on results of the user-defined repair process.
2. The method of claim 1, wherein the user defined repair process is marking all of the set of cross-allocated blocks as free.
3. The method of claim 1, wherein the user defined repair process is marking all but one of the set of cross-allocated blocks as free.
4. The method of claim 1, wherein, prior to identifying the file system blocks associated with the inode, the inode is locked to ensure that no modifications are made to the inode or the inode’s block allocation while the identification is being performed.
5. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to:
identify a set of cross-allocated blocks from a plurality of blocks within an inode of the mounted file system, based on a corresponding bit associated with each cross-allocated block in a duplicated block information bitmap being in a first identified state, wherein the computer readable program populates the duplicated block information bitmap by causing the computing device to:
capture a snapshot of the mounted file system, wherein the snapshot is a point-in-time copy of a file system state of the mounted file system;
scan an entire inode range of the snapshot;
for each inode in the inode range, identify file system blocks associated with the inode;
responsive to identifying each file system block associated with the inode, determine whether a corresponding bit in an allocation information bitmap is in a second identified state;
responsive to the corresponding bit in the allocation information bitmap being in the second identified state, update the corresponding bit in the duplicated block information bitmap to the first identified state; and
responsive to the corresponding bit in the allocation information bitmap failing to be in the second identified state, update the corresponding bit in the allocation information bitmap to the second identified state;
repair the set of cross-allocated blocks using a user-defined repair process; and
deallocate one or more of the set of cross-allocated blocks based on results of the user-defined repair process.
6. The computer program product of claim 5, wherein the user defined repair process is marking all of the set of cross-allocated blocks as free.
7. The computer program product of claim 5, wherein the user defined repair process is marking all but one of the set of cross-allocated blocks as free.
8. The computer program product of claim 5, wherein, prior to identifying the file system blocks associated with the inode, the computer readable program causes the computing device to lock the inode to ensure that no modifications are made to the inode or the inode’s block allocation while the identification is being performed.
9. An apparatus, comprising:
a processor, and
a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to:
identify a set of cross-allocated blocks from a plurality of blocks within an inode of the mounted file system, based on a corresponding bit associated with each cross-allocated block in a duplicated block information bitmap being in a first identified state, wherein the instructions populate the duplicated block information bitmap by causing the processor to:
capture a snapshot of the mounted file system, wherein the snapshot is a point-in-time copy of a file system state of the mounted file system;
scan an entire inode range of the snapshot;
for each inode in the inode range, identify file system blocks associated with the inode;
responsive to identifying each file system block associated with the inode, determine whether a corresponding bit in an allocation information bitmap is in a second identified state;
responsive to the corresponding bit in the allocation information bitmap being in the second identified state, update the corresponding bit in the duplicated block information bitmap to the first identified state; and
responsive to the corresponding bit in the allocation information bitmap failing to be in the second identified state, update the corresponding bit in the allocation information bitmap to the second identified state;
repair the set of cross-allocated blocks using a user-defined repair process; and
deallocate one or more of the set of cross-allocated blocks based on results of the user-defined repair process.
10. The apparatus of claim 9, wherein the user defined repair process is marking all of the set of cross-allocated blocks as free.
11. The apparatus of claim 9, wherein the user defined repair process is marking all but one of the set of cross-allocated blocks as free.
12. The apparatus of claim 9, wherein, prior to identifying the file system blocks associated with the inode, the instructions causes the processor to lock the inode to ensure that no modifications are made to the inode or the inode’s block allocation while the identification is being performed.