Message ID | 20241205-const_dfc_done-v3-0-1611f1486b5a@quicinc.com |
---|---|
Headers | show |
Series | driver core: Constify API device_find_child() | expand |
On 2024/12/5 08:10, Zijun Hu wrote: > This patch series is to constify the following API: This patch series is based on the lasted mainline commit Commit: feffde684ac2 ("Merge tag 'for-6.13-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux") to avoid potential conflict as much as possible. > struct device *device_find_child(struct device *dev, void *data, > int (*match)(struct device *dev, void *data)); > To : > struct device *device_find_child(struct device *dev, const void *data, > device_match_t match); > typedef int (*device_match_t)(struct device *dev, const void *data); > > Why to constify the API? > > - Protect caller's match data @*data which is for comparison and lookup > and the API does not actually need to modify @*data. > > - Make the API's parameters (@match)() and @data have the same type as > all of other device finding APIs (bus|class|driver)_find_device(). > > - All kinds of existing device matching functions can be directly taken > as the API's argument, they were exported by driver core. > > What to do? > > - Patches [1/11, 3/11] prepare for constifying the API. > > - Patch 4/11 constifies the API and adapt for its various subsystem usages. > > - Remaining do cleanup for several usages with benefits brought above.