summaryrefslogtreecommitdiffhomepage
path: root/pkg/bits/bits.go
diff options
context:
space:
mode:
authorRahat Mahmood <rahat@google.com>2021-04-27 16:17:03 -0700
committergVisor bot <gvisor-bot@google.com>2021-04-27 16:20:01 -0700
commitf54d87b9eceee7f6069a4faf2628f19b8752ad06 (patch)
tree93cab74a7b455dfbf035c55e034ec8596f746d4a /pkg/bits/bits.go
parent9ec49aabd34ecf9eba982439abd2ada4617d576a (diff)
Remove uses of the binary package from networking code.
Co-Author: ayushranjan PiperOrigin-RevId: 370785009
Diffstat (limited to 'pkg/bits/bits.go')
-rw-r--r--pkg/bits/bits.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/pkg/bits/bits.go b/pkg/bits/bits.go
index a26433ad6..d16448c3d 100644
--- a/pkg/bits/bits.go
+++ b/pkg/bits/bits.go
@@ -14,3 +14,13 @@
// Package bits includes all bit related types and operations.
package bits
+
+// AlignUp rounds a length up to an alignment. align must be a power of 2.
+func AlignUp(length int, align uint) int {
+ return (length + int(align) - 1) & ^(int(align) - 1)
+}
+
+// AlignDown rounds a length down to an alignment. align must be a power of 2.
+func AlignDown(length int, align uint) int {
+ return length & ^(int(align) - 1)
+}