fw_send_request_with_tstamp(9)
π fw_send_request_with_tstamp β Kernel API Manual, section 9 β¨
okay so bestie, welcome to fw_send_request_with_tstamp(9) β the manual page for the little firewire helper that shoots a request packet off into the void and then very thoughtfully hits you back with a timestamp when the response lands. it's giving "i sent the text and i'm keeping receipts" energy, and honestly? we're obsessed. πΈ
β¨ NAME β¨
fw_send_request_with_tstamp β submit a request packet for transmission to generate callback for response with time stamp.
like, you hand it a request, it goes out, and the callback you get back comes with a timestamp attached. that's the whole vibe. no cap. π«Ά
π SYNOPSIS π
void fw_send_request_with_tstamp (struct fw_card *card , struct
fw_transaction *t , int tcode , int destination_id , int generation ,
int speed , unsigned long long offset , void *payload , size_t length ,
fw_transaction_callback_with_tstamp_t callback , void *callback_data );
yep, that's a long signature. eleven arguments. she's high-maintenance but she delivers. π
π ARGUMENTS π
cardβ the interface to send the request at. your firewire home base, basically. πtβ the transaction instance to which the request belongs. this is her transaction, she owns it.tcodeβ transaction code. the "what kind of transaction is this even" field.destination_idβ destination node ID, consisting ofbus_IDandphy_ID. like a little two-part address, iykyk. π¬generationβ bus generation in which request and response are valid. vibe check for the bus era, fr.speedβ transmission speed. zoom zoom. π₯offsetβ 48bit wide offset into destination's address space. forty-eight bits!! wide!! that's a lot of bits bestie.payloadβ data payload for the request subaction. the actual goods. πlengthβ length of the payload, in bytes. (bytes. not vibes. bytes.) β¨callbackβ function to be called when the transaction is completed. your main character callback. πcallback_dataβ data to be passed to the transaction completion callback. the little care package that rides along. π
π DESCRIPTION π
so this one is a variation of __fw_send_request to generate callback for response subaction with time stamp. same energy, extra timestamp. π
here's the part you actually need to know, bestie, and i'm not being dramatic:
The callback is invoked in the workqueue context in most cases. However, if an error is detected before queueing or the destination address refers to the local node, it is invoked in the current context instead.
read that again. most of the time it's workqueue context, but if an error is detected before queueing, or if the destination address refers to the local node, it gets invoked in the current context instead. so like... don't assume which context you're in, okay? check. always check. π that's the whole caveat and it's a real one.
π¦ SEE ALSO π¦
- Kernel file
./include/linux/firewire.h fw_send_request(9)β the original, the blueprint, the mother of this one πfw_iso_context_schedule_flush_completions(9)β also in the firewire cinematic universe π§
πΈ sign-off πΈ
this lil beauty lives in the kernel tree at ./include/linux, and the page is dated October 2026 β so yes, she's from the future, and she's thriving. slay, honestly. πβ¨π
π¦ 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