spi: Check presence the of ->transfer[_xxx]() before registering a controller
authorBoris Brezillon <boris.brezillon@bootlin.com>
Tue, 10 Apr 2018 22:44:30 +0000 (00:44 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 26 Apr 2018 12:53:29 +0000 (13:53 +0100)
commitbdf3a3b59a7ab1972e7d2242c9466ba7e79f0004
tree908e4ca051d1936ec6dbdca0f300165cd061cfcc
parent0d7412ed1f5dc0858eb4f29650a8c9c5cce8b285
spi: Check presence the of ->transfer[_xxx]() before registering a controller

Right now, no checks are done on the presence of a ->transfer[_xxx]()
method, which can lead to a NULL pointer dereference when someone
starts sending something on the bus.

Do the check at registration time and refuse to add the controller if
all ->transfer[_xxx]() pointers are NULL.

Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi.c