Skip to content

Configurable networking#38

Merged
lacraig2 merged 8 commits intomainfrom
net
Mar 30, 2026
Merged

Configurable networking#38
lacraig2 merged 8 commits intomainfrom
net

Conversation

@lacraig2
Copy link
Copy Markdown
Contributor

This pull request adds a new virtual network device (igloonet) and introduces new portal operations for network device registration and lookup, as well as a new operation to retrieve the current task's register state (pt_regs). It also includes some refactoring and minor improvements for kernel compatibility and debugging.

Key changes include:

Networking: Virtual Network Device and Portal Integration

  • Added a new virtual network device driver igloonet in src/netdevs/igloonet.c with kernel version compatibility, stats handling, and registration logic. ([src/netdevs/igloonet.cR1-R231](https://github.com/rehosting/igloo_driver/pull/38/files#diff-ff7aefdfa5fd278c30e5e878238ccfa6959373b2c1c952e7d69d8dabdcb888e2R1-R231))
  • Declared the igloonet_init_one function in src/netdevs/igloonet.h for network device initialization. ([src/netdevs/igloonet.hR1](https://github.com/rehosting/igloo_driver/pull/38/files#diff-d9e6b5b79c8d131833380279115d47dc49f7580b36a9615e6be2cfb0edde308bR1))
  • Updated the src/Makefile to include the new igloonet.o object file. ([src/MakefileR19](https://github.com/rehosting/igloo_driver/pull/38/files#diff-3e2513390df543315686d7c85bd901ca9256268970032298815d2f893a9f0685R19))
  • Implemented portal handlers for registering and looking up network devices in src/portal/portal_net.c. ([src/portal/portal_net.cR1-R42](https://github.com/rehosting/igloo_driver/pull/38/files#diff-e81eff9393cf32bde1989d2928662e38a88f87cd64ce159adcd704735b4066e9R1-R42))
  • Registered new portal operations for network device management in src/portal/portal_op_list.h. ([src/portal/portal_op_list.hR28-R29](https://github.com/rehosting/igloo_driver/pull/38/files#diff-e828a599b2dac6cfa65bd84b9d8183262bce6d34d9a5c1806d3f07dc2de90cb0R28-R29))

Process State Inspection

  • Added a new portal operation and handler to retrieve the current process's pt_regs structure, enabling inspection of CPU register state from the portal. ([[1]](https://github.com/rehosting/igloo_driver/pull/38/files#diff-1e88c82aece923fb5ed7055baf8447ff2f402e4187bc72f43ec66aedf28f0b4aR878-R913), [[2]](https://github.com/rehosting/igloo_driver/pull/38/files#diff-e828a599b2dac6cfa65bd84b9d8183262bce6d34d9a5c1806d3f07dc2de90cb0R13), [[3]](https://github.com/rehosting/igloo_driver/pull/38/files#diff-1e88c82aece923fb5ed7055baf8447ff2f402e4187bc72f43ec66aedf28f0b4aR15))

FFI and Debugging Improvements

  • Changed the type of func_ptr in struct portal_ffi_call from void * to unsigned long for improved compatibility and correctness. ([src/portal/portal_types.hL102-R102](https://github.com/rehosting/igloo_driver/pull/38/files#diff-e6a749233e740a1ceea47b8ecf5edf43b5cbe40c1a1a31526c2cd3064989d8c1L102-R102))
  • Improved debug logging in FFI function pointer validation and invocation by explicitly casting pointers to void *. ([[1]](https://github.com/rehosting/igloo_driver/pull/38/files#diff-3408adeeb373fee66db55fd2148e6b0a79b66b1c44e1b34ceacefc7220d90680L64-R64), [[2]](https://github.com/rehosting/igloo_driver/pull/38/files#diff-3408adeeb373fee66db55fd2148e6b0a79b66b1c44e1b34ceacefc7220d90680L77-R77))

@lacraig2 lacraig2 merged commit 317e30f into main Mar 30, 2026
1 check passed
@lacraig2 lacraig2 deleted the net branch March 30, 2026 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant