[PATCH RESEND 0/4] platform: fix accidently erasing .owner

From: Wolfram Sang
Date: Tue Oct 28 2014 - 12:41:09 EST


Since platform_register_driver() was converted to set the .owner of a driver,
there was a codepath on which the owner would have been erased. This series
fixes that and adds a warning to prevent such cases go unnoticed in the future.
For consistency, a semantic patch is also added which reports when .owner gets
unnecissarily set. More details in the patch descriptions. Thanks go to Russell
King for pointing out this problem and to Julia Lawall for help with the
semantic patch.

All these patches have been tested on a custom board.

This resend was rebased to rc2. It produced identical patches. IMO this should
go into v3.18 since it is a bugfix.

Please apply. The cleanup series for removing .owner in the kernel tree will
be resend later, too, as a seperate pull request.

Wolfram Sang (4):
core: platform: add warning if driver has no owner
core: platform: let platform_driver_probe initialize module owner
core: platform: let platform_create_bundle initialize module owner
coccinelle: api: add spatch to prevent unnecessary .owner

drivers/base/driver.c | 3 +
drivers/base/platform.c | 22 +++--
include/linux/platform_device.h | 12 ++-
scripts/coccinelle/api/platform_no_drv_owner.cocci | 106 +++++++++++++++++++++
4 files changed, 129 insertions(+), 14 deletions(-)
create mode 100644 scripts/coccinelle/api/platform_no_drv_owner.cocci

--
2.0.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/