From: Marek Vasut <ma...@denx.de> Date: Sun, 13 Oct 2019 12:50:15 +0200
> On 10/13/19 2:21 AM, David Miller wrote: >> From: David Miller <da...@davemloft.net> >> Date: Sat, 12 Oct 2019 17:20:55 -0700 (PDT) >> >>> From: Marek Vasut <ma...@denx.de> >>> Date: Thu, 10 Oct 2019 20:25:08 +0200 >>> >>>> The KSZ driver uses one regmap per register width (8/16/32), each with >>>> it's own lock, but accessing the same set of registers. In theory, it >>>> is possible to create a race condition between these regmaps, although >>>> the underlying bus (SPI or I2C) locking should assure nothing bad will >>>> really happen and the accesses would be correct. >>>> >>>> To make the driver do the right thing, add one single shared mutex for >>>> all the regmaps used by the driver instead. This assures that even if >>>> some future hardware is on a bus which does not serialize the accesses >>>> the same way SPI or I2C does, nothing bad will happen. >>>> >>>> Note that the status_mutex was unused and only initied, hence it was >>>> renamed and repurposed as the regmap mutex. >>>> >>>> Signed-off-by: Marek Vasut <ma...@denx.de> >>> >>> Applied. >> >> Actually, both patches reverted. Please test your changes properly: >> >> ERROR: "ksz_regmap_unlock" [drivers/net/dsa/microchip/ksz8795_spi.ko] >> undefined! >> ERROR: "ksz_regmap_lock" [drivers/net/dsa/microchip/ksz8795_spi.ko] >> undefined! >> ERROR: "ksz_regmap_unlock" [drivers/net/dsa/microchip/ksz9477_spi.ko] >> undefined! >> ERROR: "ksz_regmap_lock" [drivers/net/dsa/microchip/ksz9477_spi.ko] >> undefined! >> ERROR: "ksz_regmap_unlock" [drivers/net/dsa/microchip/ksz9477_i2c.ko] >> undefined! >> ERROR: "ksz_regmap_lock" [drivers/net/dsa/microchip/ksz9477_i2c.ko] >> undefined! > > So the test is to compile it as a module ? The test is to compile it in all relevant possible configurations. As a module, statically, and with dependent modules both static and modular as is relevant.