[PATCH 00/35] Reorganize kerneldoc parameter names
Reorganize kerneldoc parameter names to match the parameter order in the function header.
The misordered cases were identified using the following Coccinelle semantic patch:
// <smpl> @initialize:ocaml@ @@
let parse_doc l = let pieces = List.map String.trim (String.split_on_char '*' l) in let l = String.concat " " pieces in match String.split_on_char ':' l with x::xs -> x | _ -> ""
let params ps = List.rev (List.fold_left (fun prev (pm,_) -> let ty = String.trim(Pretty_print_c.string_of_fullType pm.Ast_c.p_type) in if ty = "void" && pm.Ast_c.p_namei = None then prev else let name = match pm.Ast_c.p_namei with Some name -> name | None -> failwith "function parameter has no name" in (String.trim (Pretty_print_c.string_of_name name),ty)::prev) [] ps)
@r@ comments c; identifier fn; position p; parameter list ps; type T; @@
T@c fn@p(ps) { ... }
@script:ocaml@ p << r.p; c << r.c; (_,ps) << r.ps; @@
let isdoc c ps = List.length ps > 1 && (let c = String.trim c in String.length c > 3 && String.sub c 0 3 = "/**" && String.get c 3 != '*') in
let subset l1 l2 = List.for_all (fun x -> List.mem x l2) l1 in
let (cb,cm,ca) = List.hd c in match List.rev cb with c::_ when isdoc c ps -> let pieces = String.split_on_char '@' c in (match pieces with _::tl -> let d_names = List.map parse_doc tl in (* check parameters *) let p_names = List.map fst (params ps) in if d_names <> [] && not(d_names = p_names) then begin if List.sort compare d_names = List.sort compare p_names then Coccilib.print_main "out of order" p else if subset d_names p_names then Coccilib.print_main "doc is missing a parameter" p else if subset d_names p_names then Coccilib.print_main "doc has an extra parameter" p end | _ -> ()) | _ -> () // </smpl>
---
arch/arm/mach-omap2/prm2xxx_3xxx.c | 1 - arch/powerpc/platforms/ps3/interrupt.c | 2 +- arch/powerpc/platforms/ps3/repository.c | 2 +- drivers/base/firmware_loader/main.c | 2 +- drivers/comedi/drivers/comedi_8254.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 2 +- drivers/gpu/drm/amd/display/dc/core/dc.c | 2 +- drivers/gpu/drm/drm_gem_framebuffer_helper.c | 3 +-- drivers/gpu/drm/drm_gpuvm.c | 2 +- drivers/gpu/drm/radeon/radeon_ib.c | 2 +- drivers/iommu/iommu.c | 2 +- drivers/leds/leds-gpio-register.c | 2 +- drivers/mfd/atmel-smc.c | 4 ++-- drivers/misc/mei/bus.c | 2 +- drivers/mtd/ubi/eba.c | 2 +- drivers/net/ethernet/broadcom/bnxt/bnxt_hwrm.c | 2 +- drivers/net/ethernet/intel/e1000/e1000_hw.c | 2 +- drivers/net/ethernet/intel/i40e/i40e_common.c | 7 +++---- drivers/net/ethernet/intel/ice/ice_common.c | 2 +- drivers/net/ethernet/intel/ixgbe/ixgbe_common.c | 2 +- drivers/nvdimm/dimm_devs.c | 2 +- drivers/pci/hotplug/pci_hotplug_core.c | 2 +- drivers/pinctrl/pinmux.c | 2 +- drivers/slimbus/messaging.c | 2 +- drivers/soc/qcom/qmi_interface.c | 2 +- drivers/soundwire/stream.c | 2 +- drivers/usb/gadget/config.c | 4 ++-- fs/char_dev.c | 2 +- fs/dcache.c | 4 ++-- fs/seq_file.c | 2 +- kernel/audit.c | 2 +- kernel/resource.c | 2 +- kernel/sysctl.c | 1 - kernel/trace/ring_buffer.c | 2 +- lib/lru_cache.c | 2 +- lib/maple_tree.c | 2 +- mm/mmu_notifier.c | 2 +- net/dccp/feat.c | 2 +- net/mac80211/mesh_hwmp.c | 6 +++--- net/mac80211/mesh_pathtbl.c | 10 +++++----- net/socket.c | 2 +- net/sunrpc/xprt.c | 2 +- net/tipc/link.c | 14 +++++++------- net/tipc/msg.c | 2 +- sound/pci/hda/hda_codec.c | 2 +- 45 files changed, 60 insertions(+), 64 deletions(-)
Reorganize kerneldoc parameter names to match the parameter order in the function header.
Problems identified using Coccinelle.
Signed-off-by: Julia Lawall Julia.Lawall@inria.fr
--- drivers/soundwire/stream.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/soundwire/stream.c b/drivers/soundwire/stream.c index 7aa4900dcf31..0e1875c31a3d 100644 --- a/drivers/soundwire/stream.c +++ b/drivers/soundwire/stream.c @@ -1977,9 +1977,9 @@ EXPORT_SYMBOL(sdw_stream_remove_master); * * @slave: SDW Slave instance * @stream_config: Stream configuration for audio stream - * @stream: SoundWire stream * @port_config: Port configuration for audio stream * @num_ports: Number of ports + * @stream: SoundWire stream * * It is expected that Slave is added before adding Master * to the Stream.
Reorganize kerneldoc parameter names to match the parameter order in the function header.
Problems identified using Coccinelle.
Signed-off-by: Julia Lawall Julia.Lawall@inria.fr
--- drivers/slimbus/messaging.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/slimbus/messaging.c b/drivers/slimbus/messaging.c index 242570a5e565..e7aa9bd4b44b 100644 --- a/drivers/slimbus/messaging.c +++ b/drivers/slimbus/messaging.c @@ -13,8 +13,8 @@ * * @ctrl: Controller handle * @reply: Reply received from the device - * @len: Length of the reply * @tid: Transaction ID received with which framework can associate reply. + * @len: Length of the reply * * Called by controller to inform framework about the response received. * This helps in making the API asynchronous, and controller-driver doesn't need
On Mon, 30 Sep 2024 13:20:46 +0200, Julia Lawall wrote:
Reorganize kerneldoc parameter names to match the parameter order in the function header.
The misordered cases were identified using the following Coccinelle semantic patch:
// <smpl> @initialize:ocaml@ @@
[...]
Applied, thanks!
[24/35] soc: qcom: qmi: Reorganize kerneldoc parameter names commit: eea73fa08e69fec9cdc915592022bec6a9ac8ad7
Best regards,
participants (2)
-
Bjorn Andersson
-
Julia Lawall