[PATCH net-next 0/1] netvsc: fix deadlock in VF unregister
There was a race in VF unregister (in net-next only) which can be triggered if SR-IOV is disabled on host side, which causes PCI hotplug removal. Stephen Hemminger (1): netvsc: fix rtnl deadlock on unregister of vf drivers/net/hyperv/netvsc_drv.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) -- 2.11.0 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH net-next 1/1] netvsc: fix rtnl deadlock on unregister of vf
With new transparent VF support, it is possible to get a deadlock when some of the deferred work is running and the unregister_vf is trying to cancel the work element. The solution is to use trylock and reschedule (similar to bonding and team device). Reported-by: Vitaly KuznetsovFixes: 0c195567a8f6 ("netvsc: transparent VF management") Signed-off-by: Stephen Hemminger --- drivers/net/hyperv/netvsc_drv.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c index c71728d82049..e75c0f852a63 100644 --- a/drivers/net/hyperv/netvsc_drv.c +++ b/drivers/net/hyperv/netvsc_drv.c @@ -1601,7 +1601,11 @@ static void netvsc_vf_setup(struct work_struct *w) struct net_device *ndev = hv_get_drvdata(ndev_ctx->device_ctx); struct net_device *vf_netdev; - rtnl_lock(); + if (!rtnl_trylock()) { + schedule_work(w); + return; + } + vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev); if (vf_netdev) __netvsc_vf_setup(ndev, vf_netdev); @@ -1655,7 +1659,11 @@ static void netvsc_vf_update(struct work_struct *w) struct net_device *vf_netdev; bool vf_is_up; - rtnl_lock(); + if (!rtnl_trylock()) { + schedule_work(w); + return; + } + vf_netdev = rtnl_dereference(ndev_ctx->vf_netdev); if (!vf_netdev) goto unlock; -- 2.11.0 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] mtd: nand: Rename nand.h into rawnand.h
Hi Boris, On 04.08.2017 18:29, Boris Brezillon wrote: > We are planning to share more code between different NAND based > devices (SPI NAND, OneNAND and raw NANDs), but before doing that > we need to move the existing include/linux/mtd/nand.h file into > include/linux/mtd/rawnand.h so we can later create a nand.h header > containing all common structure and function prototypes. > > Signed-off-by: Boris Brezillon> Signed-off-by: Peter Pan > Cc: Jonathan Corbet > Cc: Sekhar Nori > Cc: Kevin Hilman > Cc: Jason Cooper > Cc: Andrew Lunn > Cc: Sebastian Hesselbarth > Cc: Gregory Clement > Cc: Hartley Sweeten > Cc: Alexander Sverdlin > Cc: Shawn Guo > Cc: Sascha Hauer > Cc: Fabio Estevam > Cc: Imre Kaloz > Cc: Krzysztof Halasa > Cc: Eric Miao > Cc: Haojian Zhuang > Cc: Aaro Koskinen > Cc: Tony Lindgren > Cc: Alexander Clouter > Cc: Daniel Mack > Cc: Robert Jarzmik > Cc: Marek Vasut > Cc: Kukjin Kim > Cc: Krzysztof Kozlowski > Cc: Simtec Linux Team > Cc: Steven Miao > Cc: Mikael Starvik > Cc: Jesper Nilsson > Cc: Ralf Baechle > Cc: Yoshinori Sato > Cc: Rich Felker > Cc: Wenyou Yang > Cc: Josh Wu > Cc: Kamal Dasu > Cc: Masahiro Yamada > Cc: Han Xu > Cc: Harvey Hunt > Cc: Vladimir Zapolskiy > Cc: Sylvain Lemieux > Cc: Matthias Brugger > Cc: Wan ZongShun > Cc: Neil Armstrong > Cc: Ezequiel Garcia > Cc: Maxim Levitsky > Cc: Marc Gonzalez > Cc: Stefan Agner > Cc: Greg Kroah-Hartman > Cc: Mauro Carvalho Chehab > Cc: linux-...@vger.kernel.org > Cc: linux-arm-ker...@lists.infradead.org > Cc: linux-o...@vger.kernel.org > Cc: linux-samsung-...@vger.kernel.org > Cc: adi-buildroot-de...@lists.sourceforge.net > Cc: linux-cris-ker...@axis.com > Cc: linux-m...@linux-mips.org > Cc: linux...@vger.kernel.org > Cc: bcm-kernel-feedback-l...@broadcom.com > Cc: linux-media...@lists.infradead.org > Cc: linux-ox...@lists.tuxfamily.org > Cc: linuxppc-...@lists.ozlabs.org > Cc: de...@driverdev.osuosl.org > --- > Hi All, > > Sorry for the huge Cc list, but I'd like to collect as much acks as > possible for this patch which is actually part of a bigger series [1]. > > Note that there's nothing complicated here, it's just a mechanical > s/nand\.h/rawnand\.h/ replacement, but it impacts several architectures, > the doc and staging directories. > > Regards, > > Boris > > [1]https://lwn.net/Articles/723694/ > --- [snip] > drivers/mtd/nand/lpc32xx_mlc.c | 2 +- > drivers/mtd/nand/lpc32xx_slc.c | 2 +- For LPC32xx drivers Acked-by: Vladimir Zapolskiy -- With best wishes, Vladimir ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] mtd: nand: Rename nand.h into rawnand.h
Hello Boris, you could easily split this patch per architecture/subsystem if you in a first patch move the content of nand.h to rawnand.h and make nand.h just #include rawnand.h. Then you can switch one user at a time and when all are converted to use rawnand.h you can drop the #include. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König| Industrial Linux Solutions | http://www.pengutronix.de/ | ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 1/2] wireless: move prism54 out to staging
On Thu, Aug 03, 2017 at 05:42:15PM -0700, Greg KH wrote: > On Thu, Aug 03, 2017 at 04:59:36PM -0700, Luis R. Rodriguez wrote: > > prism54 is deprecated in favor of the p54pci device driver. Although > > only *one soul* had reported issues with it long ago Linux most Linux > > distributions these days just disable the device driver given the > > conflicts with the PCI IDs of p54pci and the *very* unlikely situation > > of folks really need this driver anymore. > > > > Before trying to due away with prism54 once more stuff it into staging, > > which is our hospice for dying drivers. > > > > Signed-off-by: Luis R. Rodriguez> > --- > > MAINTAINERS | 4 ++-- > > drivers/net/wireless/intersil/Kconfig| 20 > > > > drivers/net/wireless/intersil/Makefile | 1 - > > drivers/staging/Kconfig | 2 ++ > > drivers/staging/Makefile | 1 + > > Can I get a TODO file that says it will be deleted in a kernel release > or two so don't worry about touching anything in these files? Sure, will respin with it. Luis ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] mtd: nand: Rename nand.h into rawnand.h
On 08/04/2017 05:29 PM, Boris Brezillon wrote: > We are planning to share more code between different NAND based > devices (SPI NAND, OneNAND and raw NANDs), but before doing that > we need to move the existing include/linux/mtd/nand.h file into > include/linux/mtd/rawnand.h so we can later create a nand.h header > containing all common structure and function prototypes. > > Signed-off-by: Boris Brezillon> Signed-off-by: Peter Pan > Cc: Jonathan Corbet > Cc: Sekhar Nori > Cc: Kevin Hilman > Cc: Jason Cooper > Cc: Andrew Lunn > Cc: Sebastian Hesselbarth > Cc: Gregory Clement > Cc: Hartley Sweeten > Cc: Alexander Sverdlin > Cc: Shawn Guo > Cc: Sascha Hauer > Cc: Fabio Estevam > Cc: Imre Kaloz > Cc: Krzysztof Halasa > Cc: Eric Miao > Cc: Haojian Zhuang > Cc: Aaro Koskinen > Cc: Tony Lindgren > Cc: Alexander Clouter > Cc: Daniel Mack > Cc: Robert Jarzmik > Cc: Marek Vasut > Cc: Kukjin Kim > Cc: Krzysztof Kozlowski > Cc: Simtec Linux Team > Cc: Steven Miao > Cc: Mikael Starvik > Cc: Jesper Nilsson > Cc: Ralf Baechle > Cc: Yoshinori Sato > Cc: Rich Felker > Cc: Wenyou Yang > Cc: Josh Wu > Cc: Kamal Dasu > Cc: Masahiro Yamada > Cc: Han Xu > Cc: Harvey Hunt > Cc: Vladimir Zapolskiy > Cc: Sylvain Lemieux > Cc: Matthias Brugger > Cc: Wan ZongShun > Cc: Neil Armstrong > Cc: Ezequiel Garcia > Cc: Maxim Levitsky > Cc: Marc Gonzalez > Cc: Stefan Agner > Cc: Greg Kroah-Hartman > Cc: Mauro Carvalho Chehab > Cc: linux-...@vger.kernel.org > Cc: linux-arm-ker...@lists.infradead.org > Cc: linux-o...@vger.kernel.org > Cc: linux-samsung-...@vger.kernel.org > Cc: adi-buildroot-de...@lists.sourceforge.net > Cc: linux-cris-ker...@axis.com > Cc: linux-m...@linux-mips.org > Cc: linux...@vger.kernel.org > Cc: bcm-kernel-feedback-l...@broadcom.com > Cc: linux-media...@lists.infradead.org > Cc: linux-ox...@lists.tuxfamily.org > Cc: linuxppc-...@lists.ozlabs.org > Cc: de...@driverdev.osuosl.org > --- > Hi All, > > Sorry for the huge Cc list, but I'd like to collect as much acks as > possible for this patch which is actually part of a bigger series [1]. > > Note that there's nothing complicated here, it's just a mechanical > s/nand\.h/rawnand\.h/ replacement, but it impacts several architectures, > the doc and staging directories. > > Regards, > > Boris > > [1]https://lwn.net/Articles/723694/ > --- > Documentation/driver-api/mtdnand.rst| 8 > MAINTAINERS | 2 +- > arch/arm/mach-davinci/board-da850-evm.c | 2 +- > arch/arm/mach-davinci/board-dm355-evm.c | 2 +- > arch/arm/mach-davinci/board-dm355-leopard.c | 2 +- > arch/arm/mach-davinci/board-dm365-evm.c | 2 +- > arch/arm/mach-davinci/board-dm644x-evm.c| 2 +- > arch/arm/mach-davinci/board-dm646x-evm.c| 2 +- > arch/arm/mach-davinci/board-sffsdr.c| 2 +- > arch/arm/mach-dove/dove-db-setup.c | 2 +- > arch/arm/mach-ep93xx/snappercl15.c | 2 +- > arch/arm/mach-ep93xx/ts72xx.c | 2 +- > arch/arm/mach-imx/mach-qong.c | 2 +- > arch/arm/mach-ixp4xx/ixdp425-setup.c| 2 +- > arch/arm/mach-mmp/aspenite.c| 2 +- > arch/arm/mach-omap1/board-fsample.c | 2 +- > arch/arm/mach-omap1/board-h2.c | 2 +- > arch/arm/mach-omap1/board-h3.c | 2 +- > arch/arm/mach-omap1/board-nand.c| 2 +- > arch/arm/mach-omap1/board-perseus2.c| 2 +- > arch/arm/mach-orion5x/db88f5281-setup.c | 2 +- > arch/arm/mach-orion5x/kurobox_pro-setup.c | 2 +- > arch/arm/mach-orion5x/ts209-setup.c | 2 +- > arch/arm/mach-orion5x/ts78xx-setup.c| 2 +- > arch/arm/mach-pxa/balloon3.c| 2 +- >
Re: [PATCH] mtd: nand: Rename nand.h into rawnand.h
Hi Boris, On ven., août 04 2017, Boris Brezillonwrote: > We are planning to share more code between different NAND based > devices (SPI NAND, OneNAND and raw NANDs), but before doing that > we need to move the existing include/linux/mtd/nand.h file into > include/linux/mtd/rawnand.h so we can later create a nand.h header > containing all common structure and function prototypes. > > Signed-off-by: Boris Brezillon > Signed-off-by: Peter Pan > Cc: Jonathan Corbet > Cc: Sekhar Nori > Cc: Kevin Hilman > Cc: Jason Cooper > Cc: Andrew Lunn > Cc: Sebastian Hesselbarth > Cc: Gregory Clement > Cc: Hartley Sweeten > Cc: Alexander Sverdlin > Cc: Shawn Guo > Cc: Sascha Hauer > Cc: Fabio Estevam > Cc: Imre Kaloz > Cc: Krzysztof Halasa > Cc: Eric Miao > Cc: Haojian Zhuang > Cc: Aaro Koskinen > Cc: Tony Lindgren > Cc: Alexander Clouter > Cc: Daniel Mack > Cc: Robert Jarzmik > Cc: Marek Vasut > Cc: Kukjin Kim > Cc: Krzysztof Kozlowski > Cc: Simtec Linux Team > Cc: Steven Miao > Cc: Mikael Starvik > Cc: Jesper Nilsson > Cc: Ralf Baechle > Cc: Yoshinori Sato > Cc: Rich Felker > Cc: Wenyou Yang > Cc: Josh Wu > Cc: Kamal Dasu > Cc: Masahiro Yamada > Cc: Han Xu > Cc: Harvey Hunt > Cc: Vladimir Zapolskiy > Cc: Sylvain Lemieux > Cc: Matthias Brugger > Cc: Wan ZongShun > Cc: Neil Armstrong > Cc: Ezequiel Garcia > Cc: Maxim Levitsky > Cc: Marc Gonzalez > Cc: Stefan Agner > Cc: Greg Kroah-Hartman > Cc: Mauro Carvalho Chehab > Cc: linux-...@vger.kernel.org > Cc: linux-arm-ker...@lists.infradead.org > Cc: linux-o...@vger.kernel.org > Cc: linux-samsung-...@vger.kernel.org > Cc: adi-buildroot-de...@lists.sourceforge.net > Cc: linux-cris-ker...@axis.com > Cc: linux-m...@linux-mips.org > Cc: linux...@vger.kernel.org > Cc: bcm-kernel-feedback-l...@broadcom.com > Cc: linux-media...@lists.infradead.org > Cc: linux-ox...@lists.tuxfamily.org > Cc: linuxppc-...@lists.ozlabs.org > Cc: de...@driverdev.osuosl.org > --- > Hi All, > > Sorry for the huge Cc list, but I'd like to collect as much acks as > possible for this patch which is actually part of a bigger series [1]. > > Note that there's nothing complicated here, it's just a mechanical > s/nand\.h/rawnand\.h/ replacement, but it impacts several architectures, > the doc and staging directories. > > Regards, > > Boris > > [1]https://lwn.net/Articles/723694/ > --- [...] > arch/arm/mach-orion5x/db88f5281-setup.c | 2 +- > arch/arm/mach-orion5x/kurobox_pro-setup.c | 2 +- > arch/arm/mach-orion5x/ts209-setup.c | 2 +- > arch/arm/mach-orion5x/ts78xx-setup.c| 2 +- For the orion5x file you have my Acked-by: Gregory CLEMENT Indeed there is anything controversial, and I don't expect any change on these file for the next release so no merge conflict to fear of! Thanks, Gregory -- Gregory Clement, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] mtd: nand: Rename nand.h into rawnand.h
We are planning to share more code between different NAND based devices (SPI NAND, OneNAND and raw NANDs), but before doing that we need to move the existing include/linux/mtd/nand.h file into include/linux/mtd/rawnand.h so we can later create a nand.h header containing all common structure and function prototypes. Signed-off-by: Boris BrezillonSigned-off-by: Peter Pan Cc: Jonathan Corbet Cc: Sekhar Nori Cc: Kevin Hilman Cc: Jason Cooper Cc: Andrew Lunn Cc: Sebastian Hesselbarth Cc: Gregory Clement Cc: Hartley Sweeten Cc: Alexander Sverdlin Cc: Shawn Guo Cc: Sascha Hauer Cc: Fabio Estevam Cc: Imre Kaloz Cc: Krzysztof Halasa Cc: Eric Miao Cc: Haojian Zhuang Cc: Aaro Koskinen Cc: Tony Lindgren Cc: Alexander Clouter Cc: Daniel Mack Cc: Robert Jarzmik Cc: Marek Vasut Cc: Kukjin Kim Cc: Krzysztof Kozlowski Cc: Simtec Linux Team Cc: Steven Miao Cc: Mikael Starvik Cc: Jesper Nilsson Cc: Ralf Baechle Cc: Yoshinori Sato Cc: Rich Felker Cc: Wenyou Yang Cc: Josh Wu Cc: Kamal Dasu Cc: Masahiro Yamada Cc: Han Xu Cc: Harvey Hunt Cc: Vladimir Zapolskiy Cc: Sylvain Lemieux Cc: Matthias Brugger Cc: Wan ZongShun Cc: Neil Armstrong Cc: Ezequiel Garcia Cc: Maxim Levitsky Cc: Marc Gonzalez Cc: Stefan Agner Cc: Greg Kroah-Hartman Cc: Mauro Carvalho Chehab Cc: linux-...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-o...@vger.kernel.org Cc: linux-samsung-...@vger.kernel.org Cc: adi-buildroot-de...@lists.sourceforge.net Cc: linux-cris-ker...@axis.com Cc: linux-m...@linux-mips.org Cc: linux...@vger.kernel.org Cc: bcm-kernel-feedback-l...@broadcom.com Cc: linux-media...@lists.infradead.org Cc: linux-ox...@lists.tuxfamily.org Cc: linuxppc-...@lists.ozlabs.org Cc: de...@driverdev.osuosl.org --- Hi All, Sorry for the huge Cc list, but I'd like to collect as much acks as possible for this patch which is actually part of a bigger series [1]. Note that there's nothing complicated here, it's just a mechanical s/nand\.h/rawnand\.h/ replacement, but it impacts several architectures, the doc and staging directories. Regards, Boris [1]https://lwn.net/Articles/723694/ --- Documentation/driver-api/mtdnand.rst| 8 MAINTAINERS | 2 +- arch/arm/mach-davinci/board-da850-evm.c | 2 +- arch/arm/mach-davinci/board-dm355-evm.c | 2 +- arch/arm/mach-davinci/board-dm355-leopard.c | 2 +- arch/arm/mach-davinci/board-dm365-evm.c | 2 +- arch/arm/mach-davinci/board-dm644x-evm.c| 2 +- arch/arm/mach-davinci/board-dm646x-evm.c| 2 +- arch/arm/mach-davinci/board-sffsdr.c| 2 +- arch/arm/mach-dove/dove-db-setup.c | 2 +- arch/arm/mach-ep93xx/snappercl15.c | 2 +- arch/arm/mach-ep93xx/ts72xx.c | 2 +- arch/arm/mach-imx/mach-qong.c | 2 +- arch/arm/mach-ixp4xx/ixdp425-setup.c| 2 +- arch/arm/mach-mmp/aspenite.c| 2 +- arch/arm/mach-omap1/board-fsample.c | 2 +- arch/arm/mach-omap1/board-h2.c | 2 +- arch/arm/mach-omap1/board-h3.c | 2 +- arch/arm/mach-omap1/board-nand.c| 2 +- arch/arm/mach-omap1/board-perseus2.c| 2 +- arch/arm/mach-orion5x/db88f5281-setup.c | 2 +- arch/arm/mach-orion5x/kurobox_pro-setup.c | 2 +- arch/arm/mach-orion5x/ts209-setup.c | 2 +- arch/arm/mach-orion5x/ts78xx-setup.c| 2 +- arch/arm/mach-pxa/balloon3.c| 2 +- arch/arm/mach-pxa/em-x270.c | 2 +- arch/arm/mach-pxa/eseries.c | 2 +- arch/arm/mach-pxa/palmtx.c | 2 +- arch/arm/mach-pxa/tosa.c| 2 +- arch/arm/mach-s3c24xx/common-smdk.c | 2 +-
[PATCH] mtd: nand: Rename nand.h into rawnand.h
We are planning to share more code between different NAND based devices (SPI NAND, OneNAND and raw NANDs), but before doing that we need to move the existing include/linux/mtd/nand.h file into include/linux/mtd/rawnand.h so we can later create a nand.h header containing all common structure and function prototypes. Signed-off-by: Boris BrezillonSigned-off-by: Peter Pan Cc: Jonathan Corbet Cc: Sekhar Nori Cc: Kevin Hilman Cc: Jason Cooper Cc: Andrew Lunn Cc: Sebastian Hesselbarth Cc: Gregory Clement Cc: Hartley Sweeten Cc: Alexander Sverdlin Cc: Shawn Guo Cc: Sascha Hauer Cc: Fabio Estevam Cc: Imre Kaloz Cc: Krzysztof Halasa Cc: Eric Miao Cc: Haojian Zhuang Cc: Aaro Koskinen Cc: Tony Lindgren Cc: Alexander Clouter Cc: Daniel Mack Cc: Robert Jarzmik Cc: Marek Vasut Cc: Kukjin Kim Cc: Krzysztof Kozlowski Cc: Simtec Linux Team Cc: Steven Miao Cc: Mikael Starvik Cc: Jesper Nilsson Cc: Ralf Baechle Cc: Yoshinori Sato Cc: Rich Felker Cc: Wenyou Yang Cc: Josh Wu Cc: Kamal Dasu Cc: Masahiro Yamada Cc: Han Xu Cc: Harvey Hunt Cc: Vladimir Zapolskiy Cc: Sylvain Lemieux Cc: Matthias Brugger Cc: Wan ZongShun Cc: Neil Armstrong Cc: Ezequiel Garcia Cc: Maxim Levitsky Cc: Marc Gonzalez Cc: Stefan Agner Cc: Greg Kroah-Hartman Cc: Mauro Carvalho Chehab Cc: linux-...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-o...@vger.kernel.org Cc: linux-samsung-...@vger.kernel.org Cc: adi-buildroot-de...@lists.sourceforge.net Cc: linux-cris-ker...@axis.com Cc: linux-m...@linux-mips.org Cc: linux...@vger.kernel.org Cc: bcm-kernel-feedback-l...@broadcom.com Cc: linux-media...@lists.infradead.org Cc: linux-ox...@lists.tuxfamily.org Cc: linuxppc-...@lists.ozlabs.org Cc: de...@driverdev.osuosl.org --- Hi All, Sorry for the huge Cc list, but I'd like to collect as much acks as possible for this patch which is actually part of a bigger series [1]. Note that there's nothing complicated here, it's just a mechanical s/nand\.h/rawnand\.h/ replacement, but it impacts several architectures, the doc and staging directories. Regards, Boris [1]https://lwn.net/Articles/723694/ --- Documentation/driver-api/mtdnand.rst| 8 MAINTAINERS | 2 +- arch/arm/mach-davinci/board-da850-evm.c | 2 +- arch/arm/mach-davinci/board-dm355-evm.c | 2 +- arch/arm/mach-davinci/board-dm355-leopard.c | 2 +- arch/arm/mach-davinci/board-dm365-evm.c | 2 +- arch/arm/mach-davinci/board-dm644x-evm.c| 2 +- arch/arm/mach-davinci/board-dm646x-evm.c| 2 +- arch/arm/mach-davinci/board-sffsdr.c| 2 +- arch/arm/mach-dove/dove-db-setup.c | 2 +- arch/arm/mach-ep93xx/snappercl15.c | 2 +- arch/arm/mach-ep93xx/ts72xx.c | 2 +- arch/arm/mach-imx/mach-qong.c | 2 +- arch/arm/mach-ixp4xx/ixdp425-setup.c| 2 +- arch/arm/mach-mmp/aspenite.c| 2 +- arch/arm/mach-omap1/board-fsample.c | 2 +- arch/arm/mach-omap1/board-h2.c | 2 +- arch/arm/mach-omap1/board-h3.c | 2 +- arch/arm/mach-omap1/board-nand.c| 2 +- arch/arm/mach-omap1/board-perseus2.c| 2 +- arch/arm/mach-orion5x/db88f5281-setup.c | 2 +- arch/arm/mach-orion5x/kurobox_pro-setup.c | 2 +- arch/arm/mach-orion5x/ts209-setup.c | 2 +- arch/arm/mach-orion5x/ts78xx-setup.c| 2 +- arch/arm/mach-pxa/balloon3.c| 2 +- arch/arm/mach-pxa/em-x270.c | 2 +- arch/arm/mach-pxa/eseries.c | 2 +- arch/arm/mach-pxa/palmtx.c | 2 +- arch/arm/mach-pxa/tosa.c| 2 +- arch/arm/mach-s3c24xx/common-smdk.c | 2 +-
[PATCH] Staging: bcm2048: fix bare use of 'unsigned' in radio-bcm2048.c
This is a patch to the radio-bcm2048.c file that fixes up a warning found by the checkpatch.pl tool. Signed-off-by: Branislav Radocaj--- drivers/staging/media/bcm2048/radio-bcm2048.c | 50 +-- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/drivers/staging/media/bcm2048/radio-bcm2048.c b/drivers/staging/media/bcm2048/radio-bcm2048.c index 38f72d069e27..90b8f05201ba 100644 --- a/drivers/staging/media/bcm2048/radio-bcm2048.c +++ b/drivers/staging/media/bcm2048/radio-bcm2048.c @@ -2000,9 +2000,9 @@ static ssize_t bcm2048_##prop##_read(struct device *dev, \ return sprintf(buf, mask "\n", value); \ } -#define DEFINE_SYSFS_PROPERTY(prop, signal, size, mask, check) \ -property_write(prop, signal size, mask, check) \ -property_read(prop, size, mask) +#define DEFINE_SYSFS_PROPERTY(prop, signal_size, size, mask, check)\ +property_write(prop, signal_size, mask, check) \ +property_read(prop, size, mask) \ #define property_str_read(prop, size) \ static ssize_t bcm2048_##prop##_read(struct device *dev, \ @@ -2028,27 +2028,27 @@ static ssize_t bcm2048_##prop##_read(struct device *dev,\ return count; \ } -DEFINE_SYSFS_PROPERTY(power_state, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(mute, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(audio_route, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(dac_output, unsigned, int, "%u", 0) - -DEFINE_SYSFS_PROPERTY(fm_hi_lo_injection, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_frequency, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_af_frequency, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_deemphasis, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_rds_mask, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_best_tune_mode, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_search_rssi_threshold, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_search_mode_direction, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(fm_search_tune_mode, unsigned, int, "%u", value > 3) - -DEFINE_SYSFS_PROPERTY(rds, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(rds_b_block_mask, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(rds_b_block_match, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(rds_pi_mask, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(rds_pi_match, unsigned, int, "%u", 0) -DEFINE_SYSFS_PROPERTY(rds_wline, unsigned, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(power_state, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(mute, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(audio_route, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(dac_output, unsigned int, int, "%u", 0) + +DEFINE_SYSFS_PROPERTY(fm_hi_lo_injection, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_frequency, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_af_frequency, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_deemphasis, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_rds_mask, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_best_tune_mode, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_search_rssi_threshold, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_search_mode_direction, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(fm_search_tune_mode, unsigned int, int, "%u", value > 3) + +DEFINE_SYSFS_PROPERTY(rds, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(rds_b_block_mask, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(rds_b_block_match, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(rds_pi_mask, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(rds_pi_match, unsigned int, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(rds_wline, unsigned int, int, "%u", 0) property_read(rds_pi, unsigned int, "%x") property_str_read(rds_rt, (BCM2048_MAX_RDS_RT + 1)) property_str_read(rds_ps, (BCM2048_MAX_RDS_PS + 1)) @@ -2060,7 +2060,7 @@ property_read(region_bottom_frequency, unsigned int, "%u") property_read(region_top_frequency, unsigned int, "%u") property_signed_read(fm_carrier_error, int, "%d") property_signed_read(fm_rssi, int, "%d") -DEFINE_SYSFS_PROPERTY(region, unsigned, int, "%u", 0) +DEFINE_SYSFS_PROPERTY(region, unsigned int, int, "%u", 0) static struct device_attribute attrs[] = { __ATTR(power_state, 0644, bcm2048_power_state_read, -- 2.11.0 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 0/5] constify videobuf_queue_ops structures
These videobuf_queue_ops structures are only passed as the second argument to videobuf_queue_vmalloc_init, which is declared as const. Thus the videobuf_queue_ops structures themselves can be const. Done with the help of Coccinelle. --- drivers/media/pci/cx18/cx18-streams.c |2 +- drivers/media/usb/cx231xx/cx231xx-417.c |2 +- drivers/media/usb/cx231xx/cx231xx-video.c |2 +- drivers/media/usb/tm6000/tm6000-video.c |2 +- drivers/media/usb/zr364xx/zr364xx.c |2 +- drivers/staging/media/atomisp/pci/atomisp2/atomisp_fops.c |4 ++-- 6 files changed, 7 insertions(+), 7 deletions(-) ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 2/5] [media] atomisp: constify videobuf_queue_ops structures
These videobuf_queue_ops structures are only passed as the second argument to videobuf_queue_vmalloc_init, which is declared as const. Thus the videobuf_queue_ops structures themselves can be const. Done with the help of Coccinelle. // @r disable optional_qualifier@ identifier i; position p; @@ static struct videobuf_queue_ops i@p = { ... }; @ok1@ identifier r.i; expression e1; position p; @@ videobuf_queue_vmalloc_init(e1,@p,...) @bad@ position p != {r.p,ok1.p}; identifier r.i; struct videobuf_queue_ops e; @@ e@i@p @depends on !bad disable optional_qualifier@ identifier r.i; @@ static +const struct videobuf_queue_ops i = { ... }; // Signed-off-by: Julia Lawall--- drivers/staging/media/atomisp/pci/atomisp2/atomisp_fops.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/atomisp2/atomisp_fops.c b/drivers/staging/media/atomisp/pci/atomisp2/atomisp_fops.c index c151c84..d8cfed3 100644 --- a/drivers/staging/media/atomisp/pci/atomisp2/atomisp_fops.c +++ b/drivers/staging/media/atomisp/pci/atomisp2/atomisp_fops.c @@ -643,14 +643,14 @@ static void atomisp_buf_release_output(struct videobuf_queue *vq, vb->state = VIDEOBUF_NEEDS_INIT; } -static struct videobuf_queue_ops videobuf_qops = { +static const struct videobuf_queue_ops videobuf_qops = { .buf_setup = atomisp_buf_setup, .buf_prepare= atomisp_buf_prepare, .buf_queue = atomisp_buf_queue, .buf_release= atomisp_buf_release, }; -static struct videobuf_queue_ops videobuf_qops_output = { +static const struct videobuf_queue_ops videobuf_qops_output = { .buf_setup = atomisp_buf_setup_output, .buf_prepare= atomisp_buf_prepare_output, .buf_queue = atomisp_buf_queue_output, ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[RESEND PATCH] staging: vboxvideo: remove dead gamma lut code
The redundant fb helpers .load_lut, .gamma_set and .gamma_get are no longer used. Remove the dead code that was not doing anything sensible anyway. Signed-off-by: Peter Rosin--- drivers/staging/vboxvideo/vbox_fb.c | 15 --- drivers/staging/vboxvideo/vbox_mode.c | 5 - 2 files changed, 20 deletions(-) [This time with an improved Cc list, sorry for the noise. For new people, please refer to https://lkml.org/lkml/2017/7/13/593 for context] Hi Daniel, Here it goes, but do you really need me to resend v5 14/14? Cheers, peda diff --git a/drivers/staging/vboxvideo/vbox_fb.c b/drivers/staging/vboxvideo/vbox_fb.c index 35f6d9f8c203..bf6635826159 100644 --- a/drivers/staging/vboxvideo/vbox_fb.c +++ b/drivers/staging/vboxvideo/vbox_fb.c @@ -317,22 +317,7 @@ static int vboxfb_create(struct drm_fb_helper *helper, return 0; } -static void vbox_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green, - u16 blue, int regno) -{ -} - -static void vbox_fb_gamma_get(struct drm_crtc *crtc, u16 *red, u16 *green, - u16 *blue, int regno) -{ - *red = regno; - *green = regno; - *blue = regno; -} - static struct drm_fb_helper_funcs vbox_fb_helper_funcs = { - .gamma_set = vbox_fb_gamma_set, - .gamma_get = vbox_fb_gamma_get, .fb_probe = vboxfb_create, }; diff --git a/drivers/staging/vboxvideo/vbox_mode.c b/drivers/staging/vboxvideo/vbox_mode.c index f2b85f3256fa..996da1c79158 100644 --- a/drivers/staging/vboxvideo/vbox_mode.c +++ b/drivers/staging/vboxvideo/vbox_mode.c @@ -134,10 +134,6 @@ static int vbox_set_view(struct drm_crtc *crtc) return 0; } -static void vbox_crtc_load_lut(struct drm_crtc *crtc) -{ -} - static void vbox_crtc_dpms(struct drm_crtc *crtc, int mode) { struct vbox_crtc *vbox_crtc = to_vbox_crtc(crtc); @@ -330,7 +326,6 @@ static const struct drm_crtc_helper_funcs vbox_crtc_helper_funcs = { .mode_set = vbox_crtc_mode_set, /* .mode_set_base = vbox_crtc_mode_set_base, */ .disable = vbox_crtc_disable, - .load_lut = vbox_crtc_load_lut, .prepare = vbox_crtc_prepare, .commit = vbox_crtc_commit, }; -- 2.11.0 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: vboxvideo: remove dead gamma lut code
The redundant fb helpers .load_lut, .gamma_set and .gamma_get are no longer used. Remove the dead code that was not doing anything sensible anyway. Signed-off-by: Peter Rosin--- drivers/staging/vboxvideo/vbox_fb.c | 15 --- drivers/staging/vboxvideo/vbox_mode.c | 5 - 2 files changed, 20 deletions(-) Hi Daniel, Here it goes, but do you really need me to resend v5 14/14? Cheers, peda diff --git a/drivers/staging/vboxvideo/vbox_fb.c b/drivers/staging/vboxvideo/vbox_fb.c index 35f6d9f8c203..bf6635826159 100644 --- a/drivers/staging/vboxvideo/vbox_fb.c +++ b/drivers/staging/vboxvideo/vbox_fb.c @@ -317,22 +317,7 @@ static int vboxfb_create(struct drm_fb_helper *helper, return 0; } -static void vbox_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green, - u16 blue, int regno) -{ -} - -static void vbox_fb_gamma_get(struct drm_crtc *crtc, u16 *red, u16 *green, - u16 *blue, int regno) -{ - *red = regno; - *green = regno; - *blue = regno; -} - static struct drm_fb_helper_funcs vbox_fb_helper_funcs = { - .gamma_set = vbox_fb_gamma_set, - .gamma_get = vbox_fb_gamma_get, .fb_probe = vboxfb_create, }; diff --git a/drivers/staging/vboxvideo/vbox_mode.c b/drivers/staging/vboxvideo/vbox_mode.c index f2b85f3256fa..996da1c79158 100644 --- a/drivers/staging/vboxvideo/vbox_mode.c +++ b/drivers/staging/vboxvideo/vbox_mode.c @@ -134,10 +134,6 @@ static int vbox_set_view(struct drm_crtc *crtc) return 0; } -static void vbox_crtc_load_lut(struct drm_crtc *crtc) -{ -} - static void vbox_crtc_dpms(struct drm_crtc *crtc, int mode) { struct vbox_crtc *vbox_crtc = to_vbox_crtc(crtc); @@ -330,7 +326,6 @@ static const struct drm_crtc_helper_funcs vbox_crtc_helper_funcs = { .mode_set = vbox_crtc_mode_set, /* .mode_set_base = vbox_crtc_mode_set_base, */ .disable = vbox_crtc_disable, - .load_lut = vbox_crtc_load_lut, .prepare = vbox_crtc_prepare, .commit = vbox_crtc_commit, }; -- 2.11.0 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] staging: lustre: grab the cld->cld_lock mutex unconditionally
On Thu, Aug 03, 2017 at 08:31:15PM +0300, Cihangir Akturk wrote: > On Thu, Aug 03, 2017 at 05:52:44PM +0100, James Simmons wrote: > > > > > Instead of using the locked variable as a helper to determine the state > > > of the mutex cld->cld_lock, expand the scope of the recover_cld variable > > > and assign to the cld->cld_recover variable depending on whether the > > > value of the recover_cld variable is valid or not. > > > > > > As a bonus, code size is slightly reduced. > > > > > > before: > > > textdata bss dec hex filename > > > 2618822564208 326527f8c > > > drivers/staging/lustre/lustre/mgc/mgc_request.o > > > > > > after: > > > textdata bss dec hex filename > > > 2614022564208 326047f5c > > > drivers/staging/lustre/lustre/mgc/mgc_request.o > > > > > > Additionally silences the following warning reported by coccinelle: > > > > > > drivers/staging/lustre/lustre/mgc/mgc_request.c:359:2-12: second lock on > > > line 365 > > > > > > Signed-off-by: Cihangir Akturk> > > --- > > > drivers/staging/lustre/lustre/mgc/mgc_request.c | 13 - > > > 1 file changed, 4 insertions(+), 9 deletions(-) > > > > > > diff --git a/drivers/staging/lustre/lustre/mgc/mgc_request.c > > > b/drivers/staging/lustre/lustre/mgc/mgc_request.c > > > index eee0b66..6718474 100644 > > > --- a/drivers/staging/lustre/lustre/mgc/mgc_request.c > > > +++ b/drivers/staging/lustre/lustre/mgc/mgc_request.c > > > @@ -288,7 +288,7 @@ config_log_add(struct obd_device *obd, char *logname, > > > struct config_llog_data *cld; > > > struct config_llog_data *sptlrpc_cld; > > > struct config_llog_data *params_cld; > > > - bool locked = false; > > > + struct config_llog_data *recover_cld = ERR_PTR(-EINVAL); > > > charseclogname[32]; > > > char*ptr; > > > int rc; > > > > Why not just set it to NULL? > > Hi, > > Because config_recover_log_add() function does not return NULL on > error. And I don't think IS_ERR on NULL pointer returns true. Sorry, I've just realized I was wrong. Setting it to null makes perfect sense. Thanks. > > Thanks. > > > > @@ -338,8 +338,6 @@ config_log_add(struct obd_device *obd, char *logname, > > > > > > LASSERT(lsi->lsi_lmd); > > > if (!(lsi->lsi_lmd->lmd_flags & LMD_FLG_NOIR)) { > > > - struct config_llog_data *recover_cld; > > > - > > > ptr = strrchr(seclogname, '-'); > > > if (ptr) { > > > *ptr = 0; > > > @@ -355,14 +353,11 @@ config_log_add(struct obd_device *obd, char > > > *logname, > > > rc = PTR_ERR(recover_cld); > > > goto out_cld; > > > } > > > - > > > - mutex_lock(>cld_lock); > > > - locked = true; > > > - cld->cld_recover = recover_cld; > > > } > > > > > > - if (!locked) > > > - mutex_lock(>cld_lock); > > > + mutex_lock(>cld_lock); > > > + if (!IS_ERR(recover_cld)) > > > > Don't need this test if by default recover_cld = NULL. > > > > > + cld->cld_recover = recover_cld; > > > cld->cld_params = params_cld; > > > cld->cld_sptlrpc = sptlrpc_cld; > > > mutex_unlock(>cld_lock); > > > -- > > > 2.7.4 > > > > > > ___ > > > devel mailing list > > > de...@linuxdriverproject.org > > > http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel > > > ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 1/2] wireless: move prism54 out to staging
"Luis R. Rodriguez"writes: > prism54 is deprecated in favor of the p54pci device driver. Although > only *one soul* had reported issues with it long ago Linux most Linux > distributions these days just disable the device driver given the > conflicts with the PCI IDs of p54pci and the *very* unlikely situation > of folks really need this driver anymore. > > Before trying to due away with prism54 once more stuff it into staging, > which is our hospice for dying drivers. > > Signed-off-by: Luis R. Rodriguez Acked-by: Kalle Valo -- Kalle Valo ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 0/2] wireless: move prism54 to staging
"Luis R. Rodriguez"writes: > This moves the prism54 diver to staging. The reason for this are > stated on the driver's own commit log. Let me know what tree you'd > prefer this to go through. Nice. For me it's better if Greg can take this, I suspect less conflicts that way, but I can take this as well if needed. -- Kalle Valo ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel