aboutsummaryrefslogtreecommitdiffstats
path: root/src/include/gpxe/aoe.h
Commit message (Collapse)AuthorAgeFilesLines
* [aoe] Use an AoE config query to identify the target MAC addressMichael Brown2008-11-191-5/+28
| | | | | | | | | | | | | | | | The AoE spec does not specify that the source MAC address of a received packet actually matches the MAC address of the AoE target. In principle an AoE server can respond to an AoE request on any interface available to it, which may not be an address configured to accept AoE requests. This issue is resolved by implementing AoE device discovery. The purpose of AoE discovery is to find out which addresses an AoE target can use for requests. An AoE configuration command is sent when the AoE attach is attempted. The AoE target must respond to that configuration query from an interface that can accept requests. Based on a patch from Ryan Thomas <ryan@coraid.com>
* [cleanup] Remove long-obsolete gpxe/async.h header fileMichael Brown2008-06-121-1/+0
|
* Quick hack to get AoE back in to the tree, on a par with the currentMichael Brown2007-07-291-17/+8
| | | | iSCSI hack.
* Kill off hotplug.h and just make net devices normal reference-countedMichael Brown2007-06-271-3/+0
| | | | | | structures. DHCP still broken and #if 0'd out.
* Gave asynchronous operations approximate POSIX signal semantics. ThisMichael Brown2007-01-151-3/+4
| | | | | | | | | | | will enable us to cascade async operations, which is necessary in order to properly support DNS. (For example, an HTTP request may have to redirect to a new location and will have to perform a new DNS lookup, so we can't just rely on doing the name lookup at the time of parsing the initial URL). Anything other than HTTP is probably broken right now; I'll fix the others up asap.
* Added missing #includeMichael Brown2007-01-041-0/+1
|
* An AoE session holds a persistent reference to a net device.Michael Brown2007-01-041-0/+3
|
* Improve tcpdump legibility.Michael Brown2006-06-011-0/+2
|
* ATA devices are now asynchronous. The ATA layer itself now performs theMichael Brown2006-05-311-1/+2
| | | | | | | | async_wait(), though we may wish to move this higher up the stack, and consider making the block device model asynchronous. (There is only a marginal cost for synchronous devices, since they can simply call async_done() before returning; async_wait() will work seamlessly in this situation).
* Added generic asynchronous operations code.Michael Brown2006-05-311-8/+12
| | | | | | | | | Removed data_in_len and data_out_len from ata_command structure; the lengths are implied by the sector count and the presence of the data_in or data_out pointers. Changed AoE code to use subcommands by default, and made aoe_issue() nonblocking (with completion via async_wait()).
* Handle multi-sector reads by splitting them into subcommands.Michael Brown2006-05-291-0/+2
|
* Initial AoE implementation. Limitations are:Michael Brown2006-05-281-0/+124
Cannot yet handle reads of more than two sectors No retransmission No way to find out a target's MAC address (this proof of concept uses broadcasts) These limitations shall not last long! :)