devl_param_...it_value_get(9)
π devl_param_...it_value_get(9) β from the Kernel API Manual β¨
Okay bestie, buckle up, because this one is a little niche but honestly kind of iconic once you get it. It's giving "kernel internals but make it readable." π¦
πΈ NAME πΈ
devl_param_driverinit_value_get β literally just: get the configuration parameter value for driver initializing. That's it. That's the whole vibe. π
β SYNOPSIS β
int devl_param_driverinit_value_get (struct devlink *devlink , u32
param_id , union devlink_param_value *val );
No cap, there it is. π
π ARGUMENTS π
devlinkβ thedevlink. Yeah. It's the devlink. Immaculate, no notes. πparam_idβ the parameter ID, i.e. which parameter we're talking about. π·οΈvalβ a pointer where the value of the parameter gets stored, specifically indriverinitconfiguration mode. So this is where the tea (the value) lands. π
β¨ DESCRIPTION β¨
So here's the sitch: your driver should use this function to grab the driverinit configuration for initialization after a reload command. Like, reload happens, and then you come back and ask "hey what was my config again?" and this function answers. π«Ά
β οΈ Okay now the important part, don't scroll past this β the lockless call of this function relies on the driver to maintain the following basic sane behavior. This is a trust fall, bestie. π
- The driver ensures a call to this function cannot race with registering/unregistering the parameter with the same parameter ID. No racing. We don't do that here. π«π
- The driver ensures a call to this function cannot race with a
devl_param_driverinit_value_setcall with the same parameter ID. Same energy. Keep it clean. π - The driver ensures a call to this function cannot race with a reload operation. And listen β if the driver is not able to comply, it has to take the
devlink->lockwhile calling this. That's not optional, that's the rule. π
π₯ SEE ALSO π₯
- Kernel file
./net/devlink/param.c devl_params_register(9)devl_params_unregister(9)devl_param_driverinit_value_set(9)devl_param_value_changed(9)
Go read those too, iykyk. ππ
π And that's the whole page, bestie! This little gem lives in ./net/devlink, dated October 2026, and it's page devl_param_...it_value_get(9) of the Kernel API Manual β go forth and get those parameter values responsibly. πβ¨π
π¦ 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