lib/raid/raid6/unroll.awk

Source file repositories/reference/linux-study-clean/lib/raid/raid6/unroll.awk

File Facts

System
Linux kernel
Corpus path
lib/raid/raid6/unroll.awk
Extension
.awk
Size
423 bytes
Lines
21
Domain
Kernel Services
Bucket
lib
Inferred role
Kernel Services: lib
Status
atlas-only

Why This File Exists

Shared kernel service surface used by multiple subsystems, including helpers, cryptography, virtualization support, and async I/O infrastructure.

Dependency Surface

Detected Declarations

Annotated Snippet

# This filter requires one command line option of form -vN=n
# where n must be a decimal number.
#
# Repeat each input line containing $$ n times, replacing $$ with 0...n-1.
# Replace each $# with n, and each $* with a single $.

BEGIN {
	n = N + 0
}
{
	if (/\$\$/) { rep = n } else { rep = 1 }
	for (i = 0; i < rep; ++i) {
		tmp = $0
		gsub(/\$\$/, i, tmp)
		gsub(/\$#/, n, tmp)
		gsub(/\$\*/, "$", tmp)
		print tmp
	}
}

Annotation

Implementation Notes