aoe
87
About: AoE (ATA over Ethernet) Protocol Driver (Linux kernel 4.8.x and greater are not supported).
![]() ![]() |
#include <linux/ata.h>
#include <linux/hdreg.h>
#include <linux/blkdev.h>
#include <linux/skbuff.h>
#include <linux/netdevice.h>
#include <linux/genhd.h>
#include <linux/moduleparam.h>
#include <linux/workqueue.h>
#include <linux/kthread.h>
#include <net/net_namespace.h>
#include <asm/unaligned.h>
#include <linux/uio.h>
#include "aoe.h"
Go to the source code of this file.
Data Structures | |
struct | iocq_ktio |
Functions | |
static void | ktcomplete (struct frame *, struct sk_buff *) |
static int | count_targets (struct aoedev *d, int *untainted) |
static struct buf * | nextbuf (struct aoedev *) |
module_param (aoe_deadsecs, int, 0644) | |
MODULE_PARM_DESC (aoe_deadsecs, "After aoe_deadsecs seconds, give up and fail dev.") | |
module_param (aoe_maxout, int, 0644) | |
MODULE_PARM_DESC (aoe_maxout, "Only aoe_maxout outstanding packets for every MAC on eX.Y.") | |
module_param (aoe_maxioc, int, 0644) | |
MODULE_PARM_DESC (aoe_maxioc, "When nonzero, perform at most aoe_maxioc I/O completions before scheduling.") | |
static | DEFINE_MUTEX (ktio_spawn_lock) |
static struct sk_buff * | new_skb (ulong len) |
static struct frame * | getframe_deferred (struct aoedev *d, u32 tag) |
static struct frame * | getframe (struct aoedev *d, u32 tag) |
static int | newtag (struct aoedev *d) |
static u32 | aoehdr_atainit (struct aoedev *d, struct aoetgt *t, struct aoe_hdr *h) |
static void | put_lba (struct aoe_atahdr *ah, sector_t lba) |
static struct aoeif * | ifrotate (struct aoetgt *t) |
static void | skb_pool_put (struct aoedev *d, struct sk_buff *skb) |
static struct sk_buff * | skb_pool_get (struct aoedev *d) |
void | aoe_freetframe (struct frame *f) |
struct frame * | newtframe (struct aoedev *d, struct aoetgt *t) |
static struct frame * | newframe (struct aoedev *d) |
static void | skb_fillup (struct sk_buff *skb, struct bio *bio, struct bvec_iter iter) |
static void | fhash (struct frame *f) |
static void | ata_rw_frameinit (struct frame *f) |
static int | aoecmd_ata_rw (struct aoedev *d) |
static struct sk_buff * | aoecmd_cfg_pkts (ushort aoemajor, unsigned char aoeminor, struct sk_buff **tail) |
static void | resend (struct aoedev *d, struct frame *f) |
static int | tsince_hr (struct frame *f) |
static int | tsince (u32 tag) |
static struct aoeif * | getif (struct aoetgt *t, struct net_device *nd) |
static void | ejectif (struct aoetgt *t, struct aoeif *ifp) |
static struct frame * | reassign_frame (struct frame *f) |
static void | probe (struct aoetgt *t) |
static long | rto (struct aoedev *d) |
static void | rexmit_deferred (struct aoedev *d) |
static void | scorn (struct aoetgt *t) |
static void | rexmit_timer (ulong vp) |
static unsigned long | rqbiocnt (struct request *r) |
static void | bio_pageinc (struct bio *bio) |
static void | bufinit (struct buf *buf, struct request *rq, struct bio *bio) |
void | aoecmd_work (struct aoedev *d) |
void | aoecmd_sleepwork (struct work_struct *work) |
static void | ata_ident_fixstring (u16 *id, int ns) |
static void | ataid_complete (struct aoedev *d, struct aoetgt *t, unsigned char *id) |
static void | calc_rttavg (struct aoedev *d, struct aoe_hdr *h, struct frame *f, struct aoetgt *t, int rtt) |
static struct aoetgt * | gettgt (struct aoedev *d, char *addr) |
static void | bvcpy (struct sk_buff *skb, struct bio *bio, struct bvec_iter iter, long cnt) |
void | aoe_end_request (struct aoedev *d, struct request *rq, int fastfail) |
static void | aoe_end_buf (struct aoedev *d, struct buf *buf) |
static void | ktiocomplete (struct frame *f) |
static int | ktio (int id) |
static int | kthread (void *vp) |
void | aoe_ktstop (struct ktstate *k) |
int | aoe_ktstart (struct ktstate *k) |
struct sk_buff * | aoecmd_ata_rsp (struct sk_buff *skb) |
void | aoecmd_cfg (ushort aoemajor, unsigned char aoeminor) |
struct sk_buff * | aoecmd_ata_id (struct aoedev *d) |
static struct aoetgt ** | grow_targets (struct aoedev *d) |
static struct aoetgt * | addtgt (struct aoedev *d, char *addr, ulong nframes) |
static void | setdbcnt (struct aoedev *d) |
static void | setifbcnt (struct aoetgt *t, struct net_device *nd, int bcnt) |
void | aoecmd_cfg_rsp (struct sk_buff *skb) |
void | aoecmd_wreset (struct aoetgt *t) |
void | aoecmd_cleanslate (struct aoedev *d) |
void | aoe_failbuf (struct aoedev *d, struct buf *buf) |
void | aoe_flush_iocq (void) |
void | aoe_flush_iocq_by_index (int id) |
int __init | aoecmd_init (void) |
void | aoecmd_exit (void) |
Variables | |
static int | aoe_deadsecs = 60 * 3 |
static int | aoe_maxout = 128 |
static int | aoe_maxioc = 8192 |
static int | ncpus |
static wait_queue_head_t * | ktiowq |
static struct ktstate * | kts |
static struct iocq_ktio * | iocq |
static struct page * | empty_page |
Definition at line 1531 of file aoecmd.c.
References aoetgt::addr, aoe_kcalloc(), aoecmd_wreset(), aoetgt::d, aoetgt::ffree, grow_targets(), aoetgt::ifp, aoetgt::ifs, aoetgt::maxout, aoetgt::nframes, aoedev::ntargets, and aoedev::targets.
Referenced by aoecmd_cfg_rsp().
Definition at line 1139 of file aoecmd.c.
References aoe_bio_pagedec(), aoe_end_request(), buf::bio, aoedev::buf, aoedev::bufpool, aoedev::ip, and buf::rq.
Referenced by aoe_failbuf(), and ktiocomplete().
Definition at line 1119 of file aoecmd.c.
References aoedev::blkq, aoedev::ip, and aoedev::rq.
Referenced by aoe_end_buf(), aoe_failip(), aoeblk_request(), and aoedev_downdev().
Definition at line 1718 of file aoecmd.c.
References aoe_end_buf(), buf::bio, aoetgt::d, buf::iter, and buf::nframesout.
Referenced by aoe_failip(), aoe_flush_iocq_by_index(), and downdev_frame().
void aoe_flush_iocq | ( | void | ) |
Definition at line 1729 of file aoecmd.c.
References aoe_flush_iocq_by_index(), kts, and ncpus.
Referenced by aoecmd_exit().
void aoe_flush_iocq_by_index | ( | int | id | ) |
Definition at line 1740 of file aoecmd.c.
References aoe_failbuf(), aoe_freetframe(), aoedev_put(), frame::buf, aoetgt::d, iocq, aoedev::lock, buf::nframesout, frame::r_skb, and frame::t.
Referenced by aoe_flush_iocq().
void aoe_freetframe | ( | struct frame * | f | ) |
Definition at line 205 of file aoecmd.c.
References frame::buf, aoetgt::ffree, frame::flags, frame::head, frame::iter, frame::r_skb, and frame::t.
Referenced by aoe_flush_iocq_by_index(), downdev_frame(), ktiocomplete(), newtframe(), reassign_frame(), and rexmit_deferred().
Definition at line 1346 of file aoecmd.c.
References kthread(), ktstate::name, ktstate::rendez, and ktstate::task.
Referenced by aoecmd_init(), aoenet_init(), and ktio().
void aoe_ktstop | ( | struct ktstate * | k | ) |
Definition at line 1339 of file aoecmd.c.
References ktstate::rendez, and ktstate::task.
Referenced by aoecmd_exit(), and aoenet_exit().
struct sk_buff* aoecmd_ata_id | ( | struct aoedev * | d | ) |
Definition at line 1464 of file aoecmd.c.
References aoehdr_atainit(), aoe_atahdr::cmdstat, aoetgt::d, fhash(), aoetgt::ifp, aoe_atahdr::lba3, aoeif::nd, newframe(), aoetgt::nout, rexmit_timer(), aoedev::rttavg, RTTAVG_INIT, aoedev::rttdev, RTTDEV_INIT, aoe_atahdr::scnt, frame::sent, frame::sent_jiffs, frame::skb, frame::tag, aoedev::tgt, aoedev::timer, frame::waited, and frame::waited_total.
Referenced by aoecmd_cfg_rsp(), and revalidate().
struct sk_buff* aoecmd_ata_rsp | ( | struct sk_buff * | skb | ) |
Definition at line 1385 of file aoecmd.c.
References aoechr_error(), aoecmd_work(), aoedev_by_aoeaddr(), aoedev_put(), calc_rttavg(), aoe_hdr::dst, FFL_PROBE, frame::flags, getframe(), getframe_deferred(), gettgt(), ktcomplete(), aoedev::lock, aoetgt::lost, mac_addr(), aoe_hdr::major, aoe_hdr::minor, aoetgt::nout, aoetgt::nout_probes, aoe_hdr::src, frame::t, aoe_hdr::tag, tsince(), and tsince_hr().
Referenced by aoenet_rcv().
Definition at line 382 of file aoecmd.c.
References aoenet_xmit(), ata_rw_frameinit(), buf::bio, buf, frame::buf, aoedev::buf, DEFAULTBCNT, aoedev::ip, buf::iter, frame::iter, aoedev::maxbcnt, newframe(), nextbuf(), buf::nframesout, frame::sent, frame::sent_jiffs, frame::skb, and aoedev::tgt.
Referenced by aoecmd_work().
void aoecmd_cfg | ( | ushort | aoemajor, |
unsigned char | aoeminor | ||
) |
Definition at line 1454 of file aoecmd.c.
References aoecmd_cfg_pkts(), and aoenet_xmit().
Referenced by aoeblk_release(), discover(), discover_timer(), and revalidate().
|
static |
Definition at line 426 of file aoecmd.c.
References AOE_HVER, AOECMD_CFG, aoe_hdr::cmd, aoe_hdr::dst, ETH_P_AOE, is_aoe_netif(), aoe_hdr::major, aoe_hdr::minor, new_skb(), aoe_hdr::src, aoe_hdr::type, and aoe_hdr::verfl.
Referenced by aoecmd_cfg().
void aoecmd_cfg_rsp | ( | struct sk_buff * | skb | ) |
Definition at line 1618 of file aoecmd.c.
References addtgt(), aoe_maxout, aoecmd_ata_id(), aoecmd_wreset(), aoedev_by_aoeaddr(), aoedev_put(), aoenet_xmit(), aoe_cfghdr::bufcnt, DEFAULTBCNT, aoedev::fw_ver, aoe_cfghdr::fwver, gettgt(), aoedev::lock, aoe_hdr::major, aoe_hdr::minor, aoetgt::nframes, aoedev::nopen, aoe_cfghdr::scnt, setifbcnt(), and aoe_hdr::src.
Referenced by aoenet_rcv().
void aoecmd_cleanslate | ( | struct aoedev * | d | ) |
Definition at line 1703 of file aoecmd.c.
References aoecmd_wreset(), aoetgt::d, aoedev::maxbcnt, aoedev::ntargets, aoedev::rttavg, RTTAVG_INIT, aoedev::rttdev, RTTDEV_INIT, and aoedev::targets.
Referenced by revalidate().
void aoecmd_exit | ( | void | ) |
Definition at line 1837 of file aoecmd.c.
References aoe_flush_iocq(), aoe_ktstop(), empty_page, iocq, ktiowq, kts, and ncpus.
Referenced by aoe_exit(), and aoe_init().
int __init aoecmd_init | ( | void | ) |
Definition at line 1772 of file aoecmd.c.
References ktstate::active, aoe_kcalloc(), aoe_ktstart(), empty_page, ktstate::fn, ktstate::id, iocq, ktio(), ktiowq, kts, iocq_ktio::lock, ktstate::lock, ncpus, and ktstate::waitq.
Referenced by aoe_init().
void aoecmd_sleepwork | ( | struct work_struct * | work | ) |
Definition at line 966 of file aoecmd.c.
References aoeblk_gdalloc(), aoedbg_devinit(), DEVFL_GDALLOC, DEVFL_NEWSIZE, DEVFL_UP, aoedev::flags, aoedev::gd, aoedev::lock, and aoedev::work.
Referenced by aoedev_by_aoeaddr().
void aoecmd_work | ( | struct aoedev * | d | ) |
Definition at line 956 of file aoecmd.c.
References aoecmd_ata_rw(), and rexmit_deferred().
Referenced by aoeblk_request(), and aoecmd_ata_rsp().
void aoecmd_wreset | ( | struct aoetgt * | t | ) |
Definition at line 1695 of file aoecmd.c.
References aoetgt::maxout, aoetgt::next_cwnd, aoetgt::nframes, and aoetgt::ssthresh.
Referenced by addtgt(), aoecmd_cfg_rsp(), aoecmd_cleanslate(), and aoedev_downdev().
Definition at line 134 of file aoecmd.c.
References aoetgt::addr, AOE_HVER, AOECMD_ATA, aoedev::aoemajor, aoedev::aoeminor, aoe_hdr::cmd, aoe_hdr::dst, ETH_P_AOE, aoetgt::ifp, aoe_hdr::major, aoe_hdr::minor, aoeif::nd, newtag(), aoe_hdr::src, aoe_hdr::tag, aoe_hdr::type, and aoe_hdr::verfl.
Referenced by aoecmd_ata_id(), and ata_rw_frameinit().
Definition at line 994 of file aoecmd.c.
Referenced by ataid_complete().
|
static |
Definition at line 330 of file aoecmd.c.
References aoe_atahdr::aflags, AOEAFL_EXT, AOEAFL_WRITE, aoehdr_atainit(), buf::bio, frame::buf, aoe_atahdr::cmdstat, aoetgt::d, DEVFL_EXT, fhash(), aoedev::flags, aoetgt::ifp, frame::iter, aoe_atahdr::lba3, aoeif::nd, frame::nout, aoetgt::nout, put_lba(), aoetgt::rpkts, aoe_atahdr::scnt, frame::skb, skb_fillup(), frame::t, frame::tag, frame::waited, frame::waited_total, and aoetgt::wpkts.
Referenced by aoecmd_ata_rw(), and probe().
Definition at line 1005 of file aoecmd.c.
References aoetgt::addr, aoedev::aoemajor, aoedev::aoeminor, ata_ident_fixstring(), DEVFL_EXT, DEVFL_GDALLOC, DEVFL_NEWSIZE, aoedev::flags, aoedev::fw_ver, aoedev::gd, aoedev::geo, aoedev::ident, mac_addr(), aoedev::ssize, and aoedev::work.
Referenced by ktiocomplete().
|
static |
|
static |
|
static |
|
static |
Definition at line 1063 of file aoecmd.c.
References aoedbg_rtt(), aoetgt::maxout, aoetgt::next_cwnd, aoetgt::nframes, aoetgt::nout, aoedev::rttavg, aoedev::rttdev, RTTDSCALE, RTTSCALE, and aoetgt::ssthresh.
Referenced by aoecmd_ata_rsp().
Definition at line 756 of file aoecmd.c.
References aoedev::ntargets, aoetgt::taint, and aoedev::targets.
Referenced by ktiocomplete(), rexmit_deferred(), and rexmit_timer().
|
static |
Definition at line 582 of file aoecmd.c.
References aoetgt::ifs, NAOEIFS, and aoeif::nd.
Referenced by rexmit_timer().
|
static |
Definition at line 320 of file aoecmd.c.
References aoetgt::d, aoedev::factive, frame::head, NFACTIVE, frame::t, and frame::tag.
Referenced by aoecmd_ata_id(), ata_rw_frameinit(), and resend().
Definition at line 101 of file aoecmd.c.
References aoedev::factive, NFACTIVE, and frame::tag.
Referenced by aoecmd_ata_rsp().
Definition at line 84 of file aoecmd.c.
References frame::head, aoedev::rexmitq, and frame::tag.
Referenced by aoecmd_ata_rsp().
Definition at line 569 of file aoecmd.c.
References aoetgt::ifs, NAOEIFS, and aoeif::nd.
Referenced by ktiocomplete(), and rexmit_timer().
Definition at line 1091 of file aoecmd.c.
References aoetgt::addr, aoetgt::d, aoedev::ntargets, and aoedev::targets.
Referenced by aoecmd_ata_rsp(), and aoecmd_cfg_rsp().
Definition at line 1511 of file aoecmd.c.
References aoe_kcalloc(), aoetgt::d, aoedev::ntargets, aoedev::targets, and aoedev::tgt.
Referenced by addtgt().
Definition at line 162 of file aoecmd.c.
References aoetgt::ifp, aoetgt::ifs, NAOEIFS, and aoeif::nd.
Referenced by newframe(), probe(), and resend().
|
static |
Definition at line 1362 of file aoecmd.c.
References aoedev::aoeminor, aoetgt::d, frame::head, iocq_ktio::head, iocq, ktiowq, kts, ncpus, frame::r_skb, and frame::t.
Referenced by aoecmd_ata_rsp(), and resend().
|
static |
Definition at line 1310 of file aoecmd.c.
References ktstate::fn, ktstate::id, ktstate::lock, ktstate::rendez, and ktstate::waitq.
Referenced by aoe_ktstart().
Definition at line 1276 of file aoecmd.c.
References ktstate::active, aoe_ktstart(), aoe_maxioc, aoedev::aoeminor, aoetgt::d, iocq_ktio::head, iocq, ktiocomplete(), kts, ncpus, and frame::t.
Referenced by aoecmd_init().
|
static |
Definition at line 1156 of file aoecmd.c.
References aoe_end_buf(), aoe_freetframe(), aoedev_put(), aoedev::aoemajor, aoedev::aoeminor, ataid_complete(), buf::bio, buf, frame::buf, bvcpy(), aoe_atahdr::cmdstat, count_targets(), aoetgt::d, FFL_PROBE, frame::flags, getif(), buf::iter, frame::iter, aoedev::lock, aoeif::lost, aoe_hdr::major, aoe_hdr::minor, buf::nframesout, aoetgt::nout_probes, probe(), frame::r_skb, aoe_atahdr::scnt, frame::skb, frame::t, and aoetgt::taint.
Referenced by ktio().
module_param | ( | aoe_deadsecs | , |
int | , | ||
0644 | |||
) |
module_param | ( | aoe_maxioc | , |
int | , | ||
0644 | |||
) |
module_param | ( | aoe_maxout | , |
int | , | ||
0644 | |||
) |
MODULE_PARM_DESC | ( | aoe_deadsecs | , |
"After aoe_deadsecs | seconds, | ||
give up and fail dev." | |||
) |
MODULE_PARM_DESC | ( | aoe_maxioc | , |
"When | nonzero, | ||
perform at most aoe_maxioc I/O completions before scheduling." | |||
) |
MODULE_PARM_DESC | ( | aoe_maxout | , |
"Only aoe_maxout outstanding packets for every MAC on eX.Y." | |||
) |
|
static |
Definition at line 62 of file aoecmd.c.
References ETH_P_AOE, and skb_reset_mac_header().
Referenced by aoecmd_cfg_pkts(), newtframe(), and skb_pool_get().
Definition at line 262 of file aoecmd.c.
References aoetgt::d, DEVFL_KICKME, aoedev::flags, aoetgt::ifp, ifrotate(), aoedev::kicked, aoetgt::maxout, aoeif::nd, newtframe(), aoetgt::nout, aoedev::ntargets, aoetgt::taint, aoedev::targets, and aoedev::tgt.
Referenced by aoecmd_ata_id(), aoecmd_ata_rw(), and reassign_frame().
Definition at line 125 of file aoecmd.c.
References aoedev::lasttag.
Referenced by aoehdr_atainit(), and resend().
Definition at line 218 of file aoecmd.c.
References aoe_freetframe(), aoe_kcalloc(), aoetgt::falloc, aoetgt::ffree, new_skb(), NSKBPOOLMAX, frame::skb, skb_pool_get(), skb_pool_put(), and frame::t.
Referenced by newframe(), and probe().
Definition at line 918 of file aoecmd.c.
References aoedev::blkq, buf, aoedev::buf, bufinit(), aoedev::bufpool, aoedev::ip, aoedev::nxbio, aoedev::rq, and rqbiocnt().
Referenced by aoecmd_ata_rw().
|
static |
Definition at line 624 of file aoecmd.c.
References aoetgt::addr, aoedev::aoemajor, aoedev::aoeminor, aoenet_xmit(), ata_rw_frameinit(), aoetgt::d, DEFAULTBCNT, empty_page, FFL_PROBE, frame::flags, ifrotate(), frame::iter, mac_addr(), aoedev::maxbcnt, newtframe(), frame::sent, frame::sent_jiffs, and frame::skb.
Referenced by ktiocomplete(), and rexmit_deferred().
|
inlinestatic |
Definition at line 151 of file aoecmd.c.
References aoe_atahdr::lba0, aoe_atahdr::lba1, aoe_atahdr::lba2, aoe_atahdr::lba3, aoe_atahdr::lba4, and aoe_atahdr::lba5.
Referenced by ata_rw_frameinit().
Definition at line 597 of file aoecmd.c.
References aoe_freetframe(), frame::buf, aoetgt::d, frame::iter, newframe(), frame::sent, frame::sent_jiffs, frame::skb, frame::t, frame::waited, and frame::waited_total.
Referenced by rexmit_deferred().
Definition at line 476 of file aoecmd.c.
References aoetgt::addr, aoechr_error(), aoedev::aoemajor, aoedev::aoeminor, aoenet_xmit(), frame::buf, aoetgt::d, aoe_hdr::dst, FFL_PROBE, fhash(), frame::flags, aoetgt::ifp, ifrotate(), ktcomplete(), mac_addr(), aoeif::nd, newtag(), frame::nout, aoetgt::nout, frame::sent, frame::sent_jiffs, frame::skb, aoe_hdr::src, frame::t, aoe_hdr::tag, and frame::tag.
Referenced by rexmit_deferred().
|
static |
Definition at line 681 of file aoecmd.c.
References aoe_freetframe(), count_targets(), aoetgt::d, DEVFL_KICKME, FFL_PROBE, frame::flags, aoedev::flags, frame::head, aoetgt::maxout, aoetgt::nout, aoetgt::nout_probes, probe(), reassign_frame(), resend(), aoedev::rexmitq, rto(), frame::t, aoetgt::taint, tsince_hr(), frame::waited, and frame::waited_total.
Referenced by aoecmd_work(), and rexmit_timer().
|
static |
Definition at line 770 of file aoecmd.c.
References aoe_deadsecs, aoedev_downdev(), aoedev::blkq, count_targets(), DEVFL_KICKME, DEVFL_TKILL, ejectif(), aoedev::factive, FFL_PROBE, frame::flags, aoedev::flags, getif(), HARD_SCORN_SECS, aoetgt::ifs, aoedev::lock, aoeif::lost, aoetgt::lost, aoetgt::maxout, aoeif::nd, NFACTIVE, aoetgt::nframes, aoetgt::nout, aoetgt::nout_probes, rexmit_deferred(), aoedev::rexmitq, rto(), scorn(), frame::skb, aoetgt::ssthresh, frame::t, timeout, aoedev::timer, TIMERTICK, tsince_hr(), frame::waited, and frame::waited_total.
Referenced by aoecmd_ata_id().
|
static |
|
static |
Definition at line 668 of file aoecmd.c.
References aoedev::rttavg, aoedev::rttdev, RTTDSCALE, and RTTSCALE.
Referenced by rexmit_deferred(), and rexmit_timer().
|
static |
Definition at line 743 of file aoecmd.c.
References MAX_TAINT, and aoetgt::taint.
Referenced by rexmit_timer().
|
static |
Definition at line 1564 of file aoecmd.c.
References aoedev::aoemajor, aoedev::aoeminor, aoetgt::d, aoedev::maxbcnt, aoedev::ntargets, and aoedev::targets.
Referenced by setifbcnt().
Definition at line 1583 of file aoecmd.c.
References aoeif::bcnt, aoetgt::d, aoetgt::ifs, aoetgt::minbcnt, NAOEIFS, aoeif::nd, and setdbcnt().
Referenced by aoecmd_cfg_rsp().
|
static |
|
static |
Definition at line 186 of file aoecmd.c.
References new_skb(), aoedev::nskbpool, NSKBPOOLMAX, and aoedev::skbpool_hd.
Referenced by newtframe().
|
static |
Definition at line 176 of file aoecmd.c.
References aoedev::skbpool_hd, and aoedev::skbpool_tl.
Referenced by newtframe().
Definition at line 557 of file aoecmd.c.
Referenced by aoecmd_ata_rsp().
Definition at line 525 of file aoecmd.c.
References frame::sent, and frame::sent_jiffs.
Referenced by aoecmd_ata_rsp(), rexmit_deferred(), and rexmit_timer().
|
static |
Definition at line 26 of file aoecmd.c.
Referenced by rexmit_timer().
|
static |
Definition at line 30 of file aoecmd.c.
Referenced by aoecmd_cfg_rsp().
|
static |
Definition at line 59 of file aoecmd.c.
Referenced by aoecmd_exit(), aoecmd_init(), and probe().
|
static |
Definition at line 56 of file aoecmd.c.
Referenced by aoe_flush_iocq_by_index(), aoecmd_exit(), aoecmd_init(), ktcomplete(), and ktio().
|
static |
Definition at line 48 of file aoecmd.c.
Referenced by aoecmd_exit(), aoecmd_init(), and ktcomplete().
|
static |
Definition at line 49 of file aoecmd.c.
Referenced by aoe_flush_iocq(), aoecmd_exit(), aoecmd_init(), ktcomplete(), and ktio().
|
static |
Definition at line 43 of file aoecmd.c.
Referenced by aoe_flush_iocq(), aoecmd_exit(), aoecmd_init(), ktcomplete(), and ktio().