mirror of
https://github.com/torvalds/linux.git
synced 2025-11-08 12:40:51 +02:00
There is an undocumented upper bound for the total number of ff effects:
FF_GAIN (= 96).
This can be found as follows:
- user: write(EV_FF, effect_id, iterations)
calls kernel: ff->playback(effect_id, ...): starts effect "effect_id"
- user: write(EV_FF, FF_GAIN, gain)
calls kernel: ff->set_gain(gain, ...): sets gain
A collision occurs when effect_id equals FF_GAIN.
According to input_ff_event(),
FF_GAIN is the smallest value where a collision occurs.
Therefore the greatest safe value for effect_id is FF_GAIN - 1,
and thus the total number of effects should never exceed FF_GAIN.
Define FF_MAX_EFFECTS as FF_GAIN and check on this limit in ff-core.
Signed-off-by: Elias Vanderstuyft <elias.vds@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||
|---|---|---|
| .. | ||
| gameport | ||
| joystick | ||
| keyboard | ||
| misc | ||
| mouse | ||
| serio | ||
| tablet | ||
| touchscreen | ||
| apm-power.c | ||
| evbug.c | ||
| evdev.c | ||
| ff-core.c | ||
| ff-memless.c | ||
| input-compat.c | ||
| input-compat.h | ||
| input-leds.c | ||
| input-mt.c | ||
| input-polldev.c | ||
| input.c | ||
| joydev.c | ||
| Kconfig | ||
| Makefile | ||
| matrix-keymap.c | ||
| mousedev.c | ||
| sparse-keymap.c | ||