android_kernel_motorola_sm6375/drivers/macintosh
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Mike Rapoport 7e1c4e2792 memblock: stop using implicit alignment to SMP_CACHE_BYTES
When a memblock allocation APIs are called with align = 0, the alignment
is implicitly set to SMP_CACHE_BYTES.

Implicit alignment is done deep in the memblock allocator and it can
come as a surprise.  Not that such an alignment would be wrong even
when used incorrectly but it is better to be explicit for the sake of
clarity and the prinicple of the least surprise.

Replace all such uses of memblock APIs with the 'align' parameter
explicitly set to SMP_CACHE_BYTES and stop implicit alignment assignment
in the memblock internal allocation functions.

For the case when memblock APIs are used via helper functions, e.g.  like
iommu_arena_new_node() in Alpha, the helper functions were detected with
Coccinelle's help and then manually examined and updated where
appropriate.

The direct memblock APIs users were updated using the semantic patch below:

@@
expression size, min_addr, max_addr, nid;
@@
(
|
- memblock_alloc_try_nid_raw(size, 0, min_addr, max_addr, nid)
+ memblock_alloc_try_nid_raw(size, SMP_CACHE_BYTES, min_addr, max_addr,
nid)
|
- memblock_alloc_try_nid_nopanic(size, 0, min_addr, max_addr, nid)
+ memblock_alloc_try_nid_nopanic(size, SMP_CACHE_BYTES, min_addr, max_addr,
nid)
|
- memblock_alloc_try_nid(size, 0, min_addr, max_addr, nid)
+ memblock_alloc_try_nid(size, SMP_CACHE_BYTES, min_addr, max_addr, nid)
|
- memblock_alloc(size, 0)
+ memblock_alloc(size, SMP_CACHE_BYTES)
|
- memblock_alloc_raw(size, 0)
+ memblock_alloc_raw(size, SMP_CACHE_BYTES)
|
- memblock_alloc_from(size, 0, min_addr)
+ memblock_alloc_from(size, SMP_CACHE_BYTES, min_addr)
|
- memblock_alloc_nopanic(size, 0)
+ memblock_alloc_nopanic(size, SMP_CACHE_BYTES)
|
- memblock_alloc_low(size, 0)
+ memblock_alloc_low(size, SMP_CACHE_BYTES)
|
- memblock_alloc_low_nopanic(size, 0)
+ memblock_alloc_low_nopanic(size, SMP_CACHE_BYTES)
|
- memblock_alloc_from_nopanic(size, 0, min_addr)
+ memblock_alloc_from_nopanic(size, SMP_CACHE_BYTES, min_addr)
|
- memblock_alloc_node(size, 0, nid)
+ memblock_alloc_node(size, SMP_CACHE_BYTES, nid)
)

[[email protected]: changelog update]
[[email protected]: coding-style fixes]
[[email protected]: fix missed uses of implicit alignment]
  Link: http://lkml.kernel.org/r/20181016133656.GA10925@rapoport-lnx
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Mike Rapoport <[email protected]>
Suggested-by: Michal Hocko <[email protected]>
Acked-by: Paul Burton <[email protected]>	[MIPS]
Acked-by: Michael Ellerman <[email protected]>	[powerpc]
Acked-by: Michal Hocko <[email protected]>
Cc: Catalin Marinas <[email protected]>
Cc: Chris Zankel <[email protected]>
Cc: Geert Uytterhoeven <[email protected]>
Cc: Guan Xuetao <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Matt Turner <[email protected]>
Cc: Michal Simek <[email protected]>
Cc: Richard Weinberger <[email protected]>
Cc: Russell King <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Tony Luck <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
2018-10-31 08:54:16 -07:00
..
ams macintosh/ams-input: Use true and false for boolean values 2018-01-28 17:21:17 +11:00
adb-iop.c macintosh/via-macii, macintosh/adb-iop: Clean up whitespace 2018-10-08 22:53:10 +11:00
adb.c macintosh/adb: Rework printk output again 2018-10-08 22:53:10 +11:00
adbhid.c macintosh/adb: Rework printk output again 2018-10-08 22:53:10 +11:00
ans-lcd.c macintosh: Add module license to ans-lcd 2018-03-13 15:10:14 +11:00
ans-lcd.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
apm_emu.c
Kconfig macintosh/via-pmu: Replace via-pmu68k driver with via-pmu driver 2018-07-31 19:56:42 +10:00
mac_hid.c
macio-adb.c macintosh/adb: Use C99 initializers for struct adb_driver instances 2018-03-31 00:10:32 +11:00
macio_asic.c macintosh: Convert to using %pOFn instead of device_node.name 2018-10-03 15:40:01 +10:00
macio_sysfs.c macintosh: Convert to using %pOFn instead of device_node.name 2018-10-03 15:40:01 +10:00
Makefile macintosh/via-pmu: Replace via-pmu68k driver with via-pmu driver 2018-07-31 19:56:42 +10:00
mediabay.c
rack-meter.c drivers: macintosh: rack-meter: really fix bogus memsets 2018-03-31 00:10:35 +11:00
smu.c memblock: stop using implicit alignment to SMP_CACHE_BYTES 2018-10-31 08:54:16 -07:00
therm_adt746x.c macintosh: change some data types from int to bool 2018-01-28 17:21:09 +11:00
therm_windtunnel.c macintosh: therm_windtunnel: drop using attach_adapter 2018-08-24 14:42:42 +02:00
via-cuda.c macintosh: Use common code to access RTC 2018-10-08 22:53:10 +11:00
via-macii.c macintosh/via-macii, macintosh/adb-iop: Clean up whitespace 2018-10-08 22:53:10 +11:00
via-pmu-backlight.c backlight: Fix old-style function definition 2018-01-21 23:37:44 +11:00
via-pmu-event.c
via-pmu-event.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
via-pmu-led.c powerpc: use the new LED disk activity trigger 2016-06-27 08:58:40 +02:00
via-pmu.c macintosh: Use common code to access RTC 2018-10-08 22:53:10 +11:00
windfarm.h
windfarm_ad7417_sensor.c
windfarm_core.c Make static usermode helper binaries constant 2017-01-19 12:59:45 +01:00
windfarm_cpufreq_clamp.c drivers/macintosh: Make wf_control_ops and wf_pid_param const 2017-08-14 21:57:56 +10:00
windfarm_fcu_controls.c macintosh: Convert to using %pOF instead of full_name 2017-09-01 16:42:52 +10:00
windfarm_lm75_sensor.c powerpc/macintosh: constify wf_sensor_ops structures 2017-09-01 16:42:54 +10:00
windfarm_lm87_sensor.c powerpc/macintosh: constify wf_sensor_ops structures 2017-09-01 16:42:54 +10:00
windfarm_max6690_sensor.c powerpc/macintosh: constify wf_sensor_ops structures 2017-09-01 16:42:54 +10:00
windfarm_mpu.h
windfarm_pid.c
windfarm_pid.h
windfarm_pm72.c macintosh: change some data types from int to bool 2018-01-28 17:21:09 +11:00
windfarm_pm81.c macintosh/windfarm: fix spelling mistake: "ttarged" -> "ttarget" 2018-05-14 23:10:33 +10:00
windfarm_pm91.c macintosh/windfarm: fix spelling mistake: "ttarged" -> "ttarget" 2018-05-14 23:10:33 +10:00
windfarm_pm112.c macintosh: change some data types from int to bool 2018-01-28 17:21:09 +11:00
windfarm_pm121.c macintosh/windfarm: fix spelling mistake: "ttarged" -> "ttarget" 2018-05-14 23:10:33 +10:00
windfarm_rm31.c macintosh: change some data types from int to bool 2018-01-28 17:21:09 +11:00
windfarm_smu_controls.c macintosh: Convert to using %pOFn instead of device_node.name 2018-10-03 15:40:01 +10:00
windfarm_smu_sat.c macintosh/windfarm_smu_sat: Fix debug output 2018-10-19 00:56:17 +11:00
windfarm_smu_sensors.c powerpc/macintosh: constify wf_sensor_ops structures 2017-09-01 16:42:54 +10:00