STRUCT QED_FCOE_OPS(9)
π struct qed_fcoe_ops(9) β the Kernel API Manual, bestie edition π
okay so this is a page from the Kernel API Manual and it's all about struct qed_fcoe_ops β literally the FCoE operations table for qed. it's giving "here's your function-pointer lineup, don't lose it" π
β¨ NAME β¨
struct qed_fcoe_ops β qed FCoE operations. that's it, that's the whole vibe. π¦
πΈ SYNOPSIS πΈ
struct qed_fcoe_ops {
const struct qed_common_ops *common;
int (*fill_dev_info)(struct qed_dev *cdev, struct qed_dev_fcoe_info *info);
void (*register_ops)(struct qed_dev *cdev, struct qed_fcoe_cb_ops *ops, void *cookie);
const struct qed_ll2_ops *ll2;
int (*start)(struct qed_dev *cdev, struct qed_fcoe_tid *tasks);
int (*stop)(struct qed_dev *cdev);
int (*acquire_conn)(struct qed_dev *cdev, u32 *handle, u32 *fw_cid, void __iomem **p_doorbell);
int (*release_conn)(struct qed_dev *cdev, u32 handle);
int (*offload_conn)(struct qed_dev *cdev, u32 handle, struct qed_fcoe_params_offload *conn_info);
int (*destroy_conn)(struct qed_dev *cdev, u32 handle, dma_addr_t terminate_params);
int (*get_stats)(struct qed_dev *cdev, struct qed_fcoe_stats *stats);
};
no cap, that's the whole struct. eleven members, all iconic, all doing their little job π
π«Ά MEMBERS π«Ά
let's go member by member, bestie, don't skip a single one π
commonβ the common operations pointer. lowkey the backbone, y'know?fill_dev_infoβ fills in the FCoE-specific information.- param
cdev - param
info - return
0on success, otherwise an error value. slay or fail, no in between β¨
- param
register_opsβ registers the FCoE operations.- param
cdev - param
opsβ specified usingqed_iscsi_cb_ops(yes, iscsi, that's literally what the manpage says, we don't ask questions π) - param
cookieβ driver private
- param
ll2β light L2 operations pointer. light L2, heavy vibes π₯startβ starts fcoe in FW.- param
cdev - param
tasksβ qed will fill in information about the tasks - return
0on success, otherwise an error value.
- param
stopβ stops fcoe in FW.- param
cdev - return
0on success, otherwise an error value.
- param
acquire_connβ acquires a new fcoe connection.- param
cdev - param
handleβ qed will fill in a handle that should be used henceforth as the identifier of the connection. - param
p_doorbellβ qed will fill in the address of the doorbell. - return
0on success, otherwise an error value. π
- param
release_connβ releases a previously acquired fcoe connection.- param
cdev - param
handleβ the connection handle. - return
0on success, otherwise an error value. bye bestie π
- param
offload_connβ configures an offloaded connection.- param
cdev - param
handleβ the connection handle. - param
conn_infoβ the configuration to use for the offload. - return
0on success, otherwise an error value.
- param
destroy_connβ stops an offloaded connection.- param
cdev - param
handleβ the connection handle. - param
terminate_params - return
0on success, otherwise an error value. it's giving cleanup era π§Ή
- param
get_statsβ gets the FCoE-related statistics.- param
cdev - param
statsβ pointer to the struct that would be filled with the stats - return
0on success, error otherwise. π
- param
lowkey important reminder: basically every single one of these returns 0 on success and "otherwise an error value" β so always check your returns, bestie, do NOT ignore them π
π¦ SEE ALSO π¦
- Kernel file
./include/linux/qed/qed_fcoe_if.hβ go read it, iykyk π
and that's the whole page, periodt π
πΈ so anyway, this little masterpiece lives in ./include/linux/qed and it's dated October 2026 β star it, bookmark it, send it to your group chat, love that for us πβ¨π«Ά
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms