tools/virtio/ringtest/noring.c
Source file repositories/reference/linux-study-clean/tools/virtio/ringtest/noring.c
File Facts
- System
- Linux kernel
- Corpus path
tools/virtio/ringtest/noring.c- Extension
.c- Size
- 971 bytes
- Lines
- 73
- Domain
- Support Tooling And Documentation
- Bucket
- tools
- Inferred role
- Support Tooling And Documentation: implementation source
- Status
- source implementation candidate
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
Dependency Surface
main.hassert.h
Detected Declarations
function alloc_ringfunction used_emptyfunction disable_callfunction enable_callfunction kick_availablefunction disable_kickfunction enable_kickfunction avail_emptyfunction use_buffunction call_used
Annotated Snippet
// SPDX-License-Identifier: GPL-2.0
#define _GNU_SOURCE
#include "main.h"
#include <assert.h>
/* stub implementation: useful for measuring overhead */
void alloc_ring(void)
{
}
/* guest side */
int add_inbuf(unsigned len, void *buf, void *datap)
{
return 0;
}
/*
* skb_array API provides no way for producer to find out whether a given
* buffer was consumed. Our tests merely require that a successful get_buf
* implies that add_inbuf succeed in the past, and that add_inbuf will succeed,
* fake it accordingly.
*/
void *get_buf(unsigned *lenp, void **bufp)
{
return "Buffer";
}
bool used_empty()
{
return false;
}
void disable_call()
{
assert(0);
}
bool enable_call()
{
assert(0);
}
void kick_available(void)
{
assert(0);
}
/* host side */
void disable_kick()
{
assert(0);
}
bool enable_kick()
{
assert(0);
}
bool avail_empty()
{
return false;
}
bool use_buf(unsigned *lenp, void **bufp)
{
return true;
}
void call_used(void)
{
assert(0);
}
Annotation
- Immediate include surface: `main.h`, `assert.h`.
- Detected declarations: `function alloc_ring`, `function used_empty`, `function disable_call`, `function enable_call`, `function kick_available`, `function disable_kick`, `function enable_kick`, `function avail_empty`, `function use_buf`, `function call_used`.
- Atlas domain: Support Tooling And Documentation / tools.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.