Message ID | 146853355115.12248.9093916202286597901.stgit@djiang5-desk3.ch.intel.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Hi Dave, Thank you for the patch. On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: > Convert driver to use the new helper function for callback > > Signed-off-by: Dave Jiang <dave.jiang@intel.com> > --- > drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- > 1 file changed, 6 insertions(+), 8 deletions(-) > > diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c > index dfb1792..ca39265 100644 > --- a/drivers/dma/sh/rcar-dmac.c > +++ b/drivers/dma/sh/rcar-dmac.c > @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int > irq, void *dev) { > struct rcar_dmac_chan *chan = dev; > struct rcar_dmac_desc *desc; > + struct dma_desc_callback cb; > > spin_lock_irq(&chan->lock); > > /* For cyclic transfers notify the user after every chunk. */ > if (chan->desc.running && chan->desc.running->cyclic) { > - dma_async_tx_callback callback; > - void *callback_param; > - > desc = chan->desc.running; > - callback = desc->async_tx.callback; > - callback_param = desc->async_tx.callback_param; > + dmaengine_desc_get_callback(&desc->async_tx, &cb); > > - if (callback) { > + if (cb->callback) { /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In function ‘rcar_dmac_isr_channel_thread’: /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c:1368:9: error: invalid type argument of ‘->’ (have ‘struct dma_desc_callback’) /home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: recipe for target 'drivers/dma/sh/rcar-dmac.o' failed make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 make[4]: *** Waiting for unfinished jobs.... Given that two of the two drivers I tried to compile failed, I think you should really get an ARM cross-compiler to test the series. They're quite widely available nowadays :-) > spin_unlock_irq(&chan->lock); > - callback(callback_param); > + dmaengine_desc_callback_invoke(&cb, NULL); > spin_lock_irq(&chan->lock); > } > } > @@ -1392,7 +1389,8 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int > irq, void *dev) * safely dereference it without holding the channel > * lock. > */ > - desc->async_tx.callback(desc- >async_tx.callback_param); > + dmaengine_desc_get_callback(&desc->async_tx, &cb); > + dmaengine_desc_callback_invoke(&cb, NULL); > spin_lock_irq(&chan->lock); > }
On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote: > Hi Dave, > > Thank you for the patch. > > On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: > > Convert driver to use the new helper function for callback > > > > Signed-off-by: Dave Jiang <dave.jiang@intel.com> > > --- > > drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- > > 1 file changed, 6 insertions(+), 8 deletions(-) > > > > diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c > > index dfb1792..ca39265 100644 > > --- a/drivers/dma/sh/rcar-dmac.c > > +++ b/drivers/dma/sh/rcar-dmac.c > > @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int > > irq, void *dev) { > > struct rcar_dmac_chan *chan = dev; > > struct rcar_dmac_desc *desc; > > + struct dma_desc_callback cb; > > > > spin_lock_irq(&chan->lock); > > > > /* For cyclic transfers notify the user after every chunk. */ > > if (chan->desc.running && chan->desc.running->cyclic) { > > - dma_async_tx_callback callback; > > - void *callback_param; > > - > > desc = chan->desc.running; > > - callback = desc->async_tx.callback; > > - callback_param = desc->async_tx.callback_param; > > + dmaengine_desc_get_callback(&desc->async_tx, &cb); > > > > - if (callback) { > > + if (cb->callback) { > > /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In function > ‘rcar_dmac_isr_channel_thread’: > /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c:1368:9: error: > invalid type argument of ‘->’ (have ‘struct dma_desc_callback’) > /home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: recipe for > target 'drivers/dma/sh/rcar-dmac.o' failed > make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 > make[4]: *** Waiting for unfinished jobs.... > > Given that two of the two drivers I tried to compile failed, I think you > should really get an ARM cross-compiler to test the series. They're quite > widely available nowadays :-) :-) And am surprised why Fengguang's bot didn't pick this up. Fengguang..? Btw I use crosstool [1] to compile not just arm, but mips and ppc ones in dmaengine. Even in arm, compile is bit painful, bunch of drivers need special arch configs to be able to compile. Multi doesn't seem to compile everything. Right now I have 5-6 to compile all arm drivers.. :( [1]: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/
On Fri, Jul 15, 2016 at 02:45:20PM +0530, Vinod Koul wrote: >On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote: >> Hi Dave, >> >> Thank you for the patch. >> >> On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: >> > Convert driver to use the new helper function for callback >> > >> > Signed-off-by: Dave Jiang <dave.jiang@intel.com> >> > --- >> > drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- >> > 1 file changed, 6 insertions(+), 8 deletions(-) >> > >> > diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c >> > index dfb1792..ca39265 100644 >> > --- a/drivers/dma/sh/rcar-dmac.c >> > +++ b/drivers/dma/sh/rcar-dmac.c >> > @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int >> > irq, void *dev) { >> > struct rcar_dmac_chan *chan = dev; >> > struct rcar_dmac_desc *desc; >> > + struct dma_desc_callback cb; >> > >> > spin_lock_irq(&chan->lock); >> > >> > /* For cyclic transfers notify the user after every chunk. */ >> > if (chan->desc.running && chan->desc.running->cyclic) { >> > - dma_async_tx_callback callback; >> > - void *callback_param; >> > - >> > desc = chan->desc.running; >> > - callback = desc->async_tx.callback; >> > - callback_param = desc->async_tx.callback_param; >> > + dmaengine_desc_get_callback(&desc->async_tx, &cb); >> > >> > - if (callback) { >> > + if (cb->callback) { >> >> /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In function >> ‘rcar_dmac_isr_channel_thread’: >> /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c:1368:9: error: >> invalid type argument of ‘->’ (have ‘struct dma_desc_callback’) >> /home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: recipe for >> target 'drivers/dma/sh/rcar-dmac.o' failed >> make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 >> make[4]: *** Waiting for unfinished jobs.... >> >> Given that two of the two drivers I tried to compile failed, I think you >> should really get an ARM cross-compiler to test the series. They're quite >> widely available nowadays :-) > >:-) > >And am surprised why Fengguang's bot didn't pick this up. Fengguang..? Sorry 0day bot doesn't see that build error. In which tree/branch does it happen? >Btw I use crosstool [1] to compile not just arm, but mips and ppc ones in >dmaengine. > >Even in arm, compile is bit painful, bunch of drivers need special arch >configs to be able to compile. Multi doesn't seem to compile everything. >Right now I have 5-6 to compile all arm drivers.. :( > >[1]: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/ I'm using crosstool too, when there are no debian cross gcc available. I'm using these debian gcc packages: gcc-sh4-linux-gnu gcc-alpha-linux-gnu gcc-hppa-linux-gnu gcc-hppa64-linux-gnu gcc-m68k-linux-gnu gcc-sparc64-linux-gnu gcc-s390x-linux-gnu gcc-avr gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihf gcc-aarch64-linux-gnu gcc-mips-linux-gnu gcc-mipsel-linux-gnu gcc-mips64-linux-gnuabi64 gcc-mips64el-linux-gnuabi64 gcc-powerpc-linux-gnu gcc-powerpc64-linux-gnu gcc-powerpc64le-linux-gnu gcc-6-aarch64-linux-gnu gcc-6-arm-linux-gnueabi gcc-6-arm-linux-gnueabihf gcc-6-hppa64-linux-gnu gcc-6-mipsel-linux-gnu gcc-6-mips-linux-gnu gcc-6-multilib-mipsel-linux-gnu gcc-6-multilib-mips-linux-gnu gcc-6-multilib-powerpc-linux-gnu gcc-6-multilib-s390x-linux-gnu gcc-6-powerpc64le-linux-gnu gcc-6-powerpc-linux-gnu gcc-6-s390x-linux-gnu Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jul 15, 2016 at 05:21:27PM +0800, Fengguang Wu wrote: > On Fri, Jul 15, 2016 at 02:45:20PM +0530, Vinod Koul wrote: > >On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote: > >>Hi Dave, > >> > >>Thank you for the patch. > >> > >>On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: > >>> Convert driver to use the new helper function for callback > >>> > >>> Signed-off-by: Dave Jiang <dave.jiang@intel.com> > >>> --- > >>> drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- > >>> 1 file changed, 6 insertions(+), 8 deletions(-) > >>> > >>> diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c > >>> index dfb1792..ca39265 100644 > >>> --- a/drivers/dma/sh/rcar-dmac.c > >>> +++ b/drivers/dma/sh/rcar-dmac.c > >>> @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int > >>> irq, void *dev) { > >>> struct rcar_dmac_chan *chan = dev; > >>> struct rcar_dmac_desc *desc; > >>> + struct dma_desc_callback cb; > >>> > >>> spin_lock_irq(&chan->lock); > >>> > >>> /* For cyclic transfers notify the user after every chunk. */ > >>> if (chan->desc.running && chan->desc.running->cyclic) { > >>> - dma_async_tx_callback callback; > >>> - void *callback_param; > >>> - > >>> desc = chan->desc.running; > >>> - callback = desc->async_tx.callback; > >>> - callback_param = desc->async_tx.callback_param; > >>> + dmaengine_desc_get_callback(&desc->async_tx, &cb); > >>> > >>> - if (callback) { > >>> + if (cb->callback) { > >> > >>/home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In function > >>‘rcar_dmac_isr_channel_thread’: > >>/home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c:1368:9: error: > >>invalid type argument of ‘->’ (have ‘struct dma_desc_callback’) > >>/home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: recipe for > >>target 'drivers/dma/sh/rcar-dmac.o' failed > >>make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 > >>make[4]: *** Waiting for unfinished jobs.... > >> > >>Given that two of the two drivers I tried to compile failed, I think you > >>should really get an ARM cross-compiler to test the series. They're quite > >>widely available nowadays :-) > > > >:-) > > > >And am surprised why Fengguang's bot didn't pick this up. Fengguang..? > > Sorry 0day bot doesn't see that build error. In which tree/branch does > it happen? My dmaengine tree, I dont think the bot ran on this patch series. Can you check has it got disabled somehow for dmaengine list.. > > >Btw I use crosstool [1] to compile not just arm, but mips and ppc ones in > >dmaengine. > > > >Even in arm, compile is bit painful, bunch of drivers need special arch > >configs to be able to compile. Multi doesn't seem to compile everything. > >Right now I have 5-6 to compile all arm drivers.. :( > > > >[1]: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/ > > I'm using crosstool too, when there are no debian cross gcc available. > I'm using these debian gcc packages: > > gcc-sh4-linux-gnu > gcc-alpha-linux-gnu > gcc-hppa-linux-gnu > gcc-hppa64-linux-gnu > gcc-m68k-linux-gnu > gcc-sparc64-linux-gnu > gcc-s390x-linux-gnu > gcc-avr > gcc-arm-linux-gnueabi > gcc-arm-linux-gnueabihf > gcc-aarch64-linux-gnu > gcc-mips-linux-gnu > gcc-mipsel-linux-gnu > gcc-mips64-linux-gnuabi64 > gcc-mips64el-linux-gnuabi64 > gcc-powerpc-linux-gnu > gcc-powerpc64-linux-gnu > gcc-powerpc64le-linux-gnu > > gcc-6-aarch64-linux-gnu > gcc-6-arm-linux-gnueabi > gcc-6-arm-linux-gnueabihf > gcc-6-hppa64-linux-gnu > gcc-6-mipsel-linux-gnu > gcc-6-mips-linux-gnu > gcc-6-multilib-mipsel-linux-gnu > gcc-6-multilib-mips-linux-gnu > gcc-6-multilib-powerpc-linux-gnu > gcc-6-multilib-s390x-linux-gnu > gcc-6-powerpc64le-linux-gnu > gcc-6-powerpc-linux-gnu > gcc-6-s390x-linux-gnu > >
On Fri, Jul 15, 2016 at 03:07:21PM +0530, Vinod Koul wrote: >On Fri, Jul 15, 2016 at 05:21:27PM +0800, Fengguang Wu wrote: >> On Fri, Jul 15, 2016 at 02:45:20PM +0530, Vinod Koul wrote: >> >On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote: >> >>Hi Dave, >> >> >> >>Thank you for the patch. >> >> >> >>On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: >> >>> Convert driver to use the new helper function for callback >> >>> >> >>> Signed-off-by: Dave Jiang <dave.jiang@intel.com> >> >>> --- >> >>> drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- >> >>> 1 file changed, 6 insertions(+), 8 deletions(-) >> >>> >> >>> diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c >> >>> index dfb1792..ca39265 100644 >> >>> --- a/drivers/dma/sh/rcar-dmac.c >> >>> +++ b/drivers/dma/sh/rcar-dmac.c >> >>> @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int >> >>> irq, void *dev) { >> >>> struct rcar_dmac_chan *chan = dev; >> >>> struct rcar_dmac_desc *desc; >> >>> + struct dma_desc_callback cb; >> >>> >> >>> spin_lock_irq(&chan->lock); >> >>> >> >>> /* For cyclic transfers notify the user after every chunk. */ >> >>> if (chan->desc.running && chan->desc.running->cyclic) { >> >>> - dma_async_tx_callback callback; >> >>> - void *callback_param; >> >>> - >> >>> desc = chan->desc.running; >> >>> - callback = desc->async_tx.callback; >> >>> - callback_param = desc->async_tx.callback_param; >> >>> + dmaengine_desc_get_callback(&desc->async_tx, &cb); >> >>> >> >>> - if (callback) { >> >>> + if (cb->callback) { >> >> >> >>/home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In function >> >>‘rcar_dmac_isr_channel_thread’: >> >>/home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c:1368:9: error: >> >>invalid type argument of ‘->’ (have ‘struct dma_desc_callback’) >> >>/home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: recipe for >> >>target 'drivers/dma/sh/rcar-dmac.o' failed >> >>make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 >> >>make[4]: *** Waiting for unfinished jobs.... >> >> >> >>Given that two of the two drivers I tried to compile failed, I think you >> >>should really get an ARM cross-compiler to test the series. They're quite >> >>widely available nowadays :-) >> > >> >:-) >> > >> >And am surprised why Fengguang's bot didn't pick this up. Fengguang..? >> >> Sorry 0day bot doesn't see that build error. In which tree/branch does >> it happen? > >My dmaengine tree, I dont think the bot ran on this patch series. >Can you check has it got disabled somehow for dmaengine list.. Here are the latest build notifications: 673 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/mv_xor] f1532019dd5b2a9c5b659896968626e6e8fb232e BUILD SUCCESS 674 F Jul 12 To Vinod Koul ( 117:0) [slave-dma:next] 600602de6b6b691e0aed20913984e4d0bf2d370d BUILD SUCCESS 675 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/xilinx] 7cdd3587b8628215f377d5d73a39540d94f33dc1 BUILD SUCCESS 677 F Jul 12 To Vinod Koul ( 142:0) [slave-dma:for-linus] 1d069bfa3c78c6d0285e5e370710cf7062c71308 BUILD SUCCESS 678 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:next] 57494e833e222e0fddf4dcb53dfe70924b7bc420 BUILD SUCCESS Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jul 15, 2016 at 05:37:33PM +0800, Fengguang Wu wrote: > On Fri, Jul 15, 2016 at 03:07:21PM +0530, Vinod Koul wrote: > >>> > >>>And am surprised why Fengguang's bot didn't pick this up. Fengguang..? > >> > >>Sorry 0day bot doesn't see that build error. In which tree/branch does > >>it happen? > > > >My dmaengine tree, I dont think the bot ran on this patch series. > >Can you check has it got disabled somehow for dmaengine list.. > > Here are the latest build notifications: > > 673 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/mv_xor] f1532019dd5b2a9c5b659896968626e6e8fb232e BUILD SUCCESS > 674 F Jul 12 To Vinod Koul ( 117:0) [slave-dma:next] 600602de6b6b691e0aed20913984e4d0bf2d370d BUILD SUCCESS > 675 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/xilinx] 7cdd3587b8628215f377d5d73a39540d94f33dc1 BUILD SUCCESS > 677 F Jul 12 To Vinod Koul ( 142:0) [slave-dma:for-linus] 1d069bfa3c78c6d0285e5e370710cf7062c71308 BUILD SUCCESS > 678 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:next] 57494e833e222e0fddf4dcb53dfe70924b7bc420 BUILD SUCCESS Ah, these are for my tree.. Don't you run them anymore on the patches coming in this dmaengine list?
On Fri, Jul 15, 2016 at 03:17:59PM +0530, Vinod Koul wrote: >On Fri, Jul 15, 2016 at 05:37:33PM +0800, Fengguang Wu wrote: >> On Fri, Jul 15, 2016 at 03:07:21PM +0530, Vinod Koul wrote: >> >>> >> >>>And am surprised why Fengguang's bot didn't pick this up. Fengguang..? >> >> >> >>Sorry 0day bot doesn't see that build error. In which tree/branch does >> >>it happen? >> > >> >My dmaengine tree, I dont think the bot ran on this patch series. >> >Can you check has it got disabled somehow for dmaengine list.. >> >> Here are the latest build notifications: >> >> 673 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/mv_xor] f1532019dd5b2a9c5b659896968626e6e8fb232e BUILD SUCCESS >> 674 F Jul 12 To Vinod Koul ( 117:0) [slave-dma:next] 600602de6b6b691e0aed20913984e4d0bf2d370d BUILD SUCCESS >> 675 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/xilinx] 7cdd3587b8628215f377d5d73a39540d94f33dc1 BUILD SUCCESS >> 677 F Jul 12 To Vinod Koul ( 142:0) [slave-dma:for-linus] 1d069bfa3c78c6d0285e5e370710cf7062c71308 BUILD SUCCESS >> 678 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:next] 57494e833e222e0fddf4dcb53dfe70924b7bc420 BUILD SUCCESS > >Ah, these are for my tree.. > >Don't you run them anymore on the patches coming in this dmaengine list? Ah it looks no longer receiving dmaengine emails. The last ones are 5 months ago: 1013 O Feb 15 Thomas Petazzon ( 28K:0) [PATCH] dma: mv_xor_v2: new driver 1014 O Feb 15 kbuild test rob ( 50K:1) |-> 1015 O Feb 15 Thomas Petazzon (2.6K:0) | `-> 1016 O Feb 15 Marc Zyngier (3.0K:0) | `-> 1017 O Feb 15 Thomas Petazzon (0.9K:0) | `-> 1018 O Feb 15 kbuild test rob (0.9K:0) |-> 1019 O Feb 15 kbuild test rob (0.9K:0) |->[PATCH] dma: mv_xor_v2: fix platform_no_drv_owner.cocci warnings 1020 O Feb 15 kbuild test rob ( 62K:1) `->Re: [PATCH] dma: mv_xor_v2: new driver 1021 O L Feb 15 Robert Jarzmik (5.6K:0) [PATCH v2 4/4] dmaengine: pxa_dma: fix the maximum requestor line It looks sometimes the mailing list subscription will be kicked.. I'll re-subscribe. Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jul 15, 2016 at 03:34:35PM +0530, Vinod Koul wrote: >On Fri, Jul 15, 2016 at 05:51:27PM +0800, Fengguang Wu wrote: >> On Fri, Jul 15, 2016 at 03:17:59PM +0530, Vinod Koul wrote: >> >On Fri, Jul 15, 2016 at 05:37:33PM +0800, Fengguang Wu wrote: >> >>On Fri, Jul 15, 2016 at 03:07:21PM +0530, Vinod Koul wrote: >> >>>>> >> >>>>>And am surprised why Fengguang's bot didn't pick this up. Fengguang..? >> >>>> >> >>>>Sorry 0day bot doesn't see that build error. In which tree/branch does >> >>>>it happen? >> >>> >> >>>My dmaengine tree, I dont think the bot ran on this patch series. >> >>>Can you check has it got disabled somehow for dmaengine list.. >> >> >> >>Here are the latest build notifications: >> >> >> >>673 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/mv_xor] f1532019dd5b2a9c5b659896968626e6e8fb232e BUILD SUCCESS >> >>674 F Jul 12 To Vinod Koul ( 117:0) [slave-dma:next] 600602de6b6b691e0aed20913984e4d0bf2d370d BUILD SUCCESS >> >>675 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/xilinx] 7cdd3587b8628215f377d5d73a39540d94f33dc1 BUILD SUCCESS >> >>677 F Jul 12 To Vinod Koul ( 142:0) [slave-dma:for-linus] 1d069bfa3c78c6d0285e5e370710cf7062c71308 BUILD SUCCESS >> >>678 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:next] 57494e833e222e0fddf4dcb53dfe70924b7bc420 BUILD SUCCESS >> > >> >Ah, these are for my tree.. >> > >> >Don't you run them anymore on the patches coming in this dmaengine list? >> >> Ah it looks no longer receiving dmaengine emails. The last ones are >> 5 months ago: >> >> 1013 O Feb 15 Thomas Petazzon ( 28K:0) [PATCH] dma: mv_xor_v2: new driver >> 1014 O Feb 15 kbuild test rob ( 50K:1) |-> >> 1015 O Feb 15 Thomas Petazzon (2.6K:0) | `-> >> 1016 O Feb 15 Marc Zyngier (3.0K:0) | `-> >> 1017 O Feb 15 Thomas Petazzon (0.9K:0) | `-> >> 1018 O Feb 15 kbuild test rob (0.9K:0) |-> >> 1019 O Feb 15 kbuild test rob (0.9K:0) |->[PATCH] dma: mv_xor_v2: fix platform_no_drv_owner.cocci warnings >> 1020 O Feb 15 kbuild test rob ( 62K:1) `->Re: [PATCH] dma: mv_xor_v2: new driver >> 1021 O L Feb 15 Robert Jarzmik (5.6K:0) [PATCH v2 4/4] dmaengine: pxa_dma: fix the maximum requestor line >> >> It looks sometimes the mailing list subscription will be kicked.. >> I'll re-subscribe. > >Ahhh thats usually the case with domain :( maybe you should subscribe >with a non intel ID, or keep a script to check if no mail was delivered >for a week and then resubscribe :D Yeah it's insane.. We'll add some automated routine checks. >I had the same issue last year, nowadays if my replies are not coming >back, that is a pretty good indication that my ID is kicked off ... Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jul 15, 2016 at 05:51:27PM +0800, Fengguang Wu wrote: > On Fri, Jul 15, 2016 at 03:17:59PM +0530, Vinod Koul wrote: > >On Fri, Jul 15, 2016 at 05:37:33PM +0800, Fengguang Wu wrote: > >>On Fri, Jul 15, 2016 at 03:07:21PM +0530, Vinod Koul wrote: > >>>>> > >>>>>And am surprised why Fengguang's bot didn't pick this up. Fengguang..? > >>>> > >>>>Sorry 0day bot doesn't see that build error. In which tree/branch does > >>>>it happen? > >>> > >>>My dmaengine tree, I dont think the bot ran on this patch series. > >>>Can you check has it got disabled somehow for dmaengine list.. > >> > >>Here are the latest build notifications: > >> > >>673 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/mv_xor] f1532019dd5b2a9c5b659896968626e6e8fb232e BUILD SUCCESS > >>674 F Jul 12 To Vinod Koul ( 117:0) [slave-dma:next] 600602de6b6b691e0aed20913984e4d0bf2d370d BUILD SUCCESS > >>675 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:topic/xilinx] 7cdd3587b8628215f377d5d73a39540d94f33dc1 BUILD SUCCESS > >>677 F Jul 12 To Vinod Koul ( 142:0) [slave-dma:for-linus] 1d069bfa3c78c6d0285e5e370710cf7062c71308 BUILD SUCCESS > >>678 F Jul 12 To Vinod Koul ( 127:0) [slave-dma:next] 57494e833e222e0fddf4dcb53dfe70924b7bc420 BUILD SUCCESS > > > >Ah, these are for my tree.. > > > >Don't you run them anymore on the patches coming in this dmaengine list? > > Ah it looks no longer receiving dmaengine emails. The last ones are > 5 months ago: > > 1013 O Feb 15 Thomas Petazzon ( 28K:0) [PATCH] dma: mv_xor_v2: new driver > 1014 O Feb 15 kbuild test rob ( 50K:1) |-> > 1015 O Feb 15 Thomas Petazzon (2.6K:0) | `-> > 1016 O Feb 15 Marc Zyngier (3.0K:0) | `-> > 1017 O Feb 15 Thomas Petazzon (0.9K:0) | `-> > 1018 O Feb 15 kbuild test rob (0.9K:0) |-> > 1019 O Feb 15 kbuild test rob (0.9K:0) |->[PATCH] dma: mv_xor_v2: fix platform_no_drv_owner.cocci warnings > 1020 O Feb 15 kbuild test rob ( 62K:1) `->Re: [PATCH] dma: mv_xor_v2: new driver > 1021 O L Feb 15 Robert Jarzmik (5.6K:0) [PATCH v2 4/4] dmaengine: pxa_dma: fix the maximum requestor line > > It looks sometimes the mailing list subscription will be kicked.. > I'll re-subscribe. Ahhh thats usually the case with domain :( maybe you should subscribe with a non intel ID, or keep a script to check if no mail was delivered for a week and then resubscribe :D I had the same issue last year, nowadays if my replies are not coming back, that is a pretty good indication that my ID is kicked off ...
On Fri, 2016-07-15 at 14:45 +0530, Vinod Koul wrote: > On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote: > > Hi Dave, > > > > Thank you for the patch. > > > > On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: > > > Convert driver to use the new helper function for callback > > > > > > Signed-off-by: Dave Jiang <dave.jiang@intel.com> > > > --- > > > drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- > > > 1 file changed, 6 insertions(+), 8 deletions(-) > > > > > > diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar- > > > dmac.c > > > index dfb1792..ca39265 100644 > > > --- a/drivers/dma/sh/rcar-dmac.c > > > +++ b/drivers/dma/sh/rcar-dmac.c > > > @@ -1356,21 +1356,18 @@ static irqreturn_t > > > rcar_dmac_isr_channel_thread(int > > > irq, void *dev) { > > > struct rcar_dmac_chan *chan = dev; > > > struct rcar_dmac_desc *desc; > > > + struct dma_desc_callback cb; > > > > > > spin_lock_irq(&chan->lock); > > > > > > /* For cyclic transfers notify the user after every > > > chunk. */ > > > if (chan->desc.running && chan->desc.running->cyclic) { > > > - dma_async_tx_callback callback; > > > - void *callback_param; > > > - > > > desc = chan->desc.running; > > > - callback = desc->async_tx.callback; > > > - callback_param = desc->async_tx.callback_param; > > > + dmaengine_desc_get_callback(&desc->async_tx, > > > &cb); > > > > > > - if (callback) { > > > + if (cb->callback) { > > > > /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In > > function > > ‘rcar_dmac_isr_channel_thread’: > > /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar- > > dmac.c:1368:9: error: > > invalid type argument of ‘->’ (have ‘struct dma_desc_callback’) > > /home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: > > recipe for > > target 'drivers/dma/sh/rcar-dmac.o' failed > > make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 > > make[4]: *** Waiting for unfinished jobs.... > > > > Given that two of the two drivers I tried to compile failed, I > > think you > > should really get an ARM cross-compiler to test the series. They're > > quite > > widely available nowadays :-) > > :-) > > And am surprised why Fengguang's bot didn't pick this up. > Fengguang..? > > Btw I use crosstool [1] to compile not just arm, but mips and ppc > ones in > dmaengine. > > Even in arm, compile is bit painful, bunch of drivers need special > arch > configs to be able to compile. Multi doesn't seem to compile > everything. > Right now I have 5-6 to compile all arm drivers.. :( > > [1]: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/ > > And there are PPC drivers as well I think. Almost 40 drivers touched makes it really painful.
Hi Dave, On Friday 15 Jul 2016 20:15:39 Jiang, Dave wrote: > On Fri, 2016-07-15 at 14:45 +0530, Vinod Koul wrote: > > On Fri, Jul 15, 2016 at 10:10:29AM +0300, Laurent Pinchart wrote: > > > On Thursday 14 Jul 2016 14:59:11 Dave Jiang wrote: > > > > Convert driver to use the new helper function for callback > > > > > > > > Signed-off-by: Dave Jiang <dave.jiang@intel.com> > > > > --- > > > > drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- > > > > 1 file changed, 6 insertions(+), 8 deletions(-) > > > > > > > > diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar- > > > > dmac.c > > > > index dfb1792..ca39265 100644 > > > > --- a/drivers/dma/sh/rcar-dmac.c > > > > +++ b/drivers/dma/sh/rcar-dmac.c > > > > @@ -1356,21 +1356,18 @@ static irqreturn_t > > > > rcar_dmac_isr_channel_thread(int > > > > irq, void *dev) { > > > > struct rcar_dmac_chan *chan = dev; > > > > struct rcar_dmac_desc *desc; > > > > + struct dma_desc_callback cb; > > > > > > > > spin_lock_irq(&chan->lock); > > > > /* For cyclic transfers notify the user after every > > > > chunk. */ > > > > if (chan->desc.running && chan->desc.running->cyclic) { > > > > - dma_async_tx_callback callback; > > > > - void *callback_param; > > > > - > > > > desc = chan->desc.running; > > > > - callback = desc->async_tx.callback; > > > > - callback_param = desc->async_tx.callback_param; > > > > + dmaengine_desc_get_callback(&desc->async_tx, > > > > &cb); > > > > > > > > - if (callback) { > > > > + if (cb->callback) { > > > > > > /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar-dmac.c: In > > > function ‘rcar_dmac_isr_channel_thread’: > > > /home/laurent/src/iob/renesas/linux/drivers/dma/sh/rcar- > > > dmac.c:1368:9: error: invalid type argument of ‘->’ (have ‘struct > > > dma_desc_callback’) > > > /home/laurent/src/iob/renesas/linux/scripts/Makefile.build:295: > > > recipe for target 'drivers/dma/sh/rcar-dmac.o' failed > > > make[4]: *** [drivers/dma/sh/rcar-dmac.o] Error 1 > > > make[4]: *** Waiting for unfinished jobs.... > > > > > > Given that two of the two drivers I tried to compile failed, I > > > think you should really get an ARM cross-compiler to test the series. > > > They're quite widely available nowadays :-) > > > > :-) > > > > And am surprised why Fengguang's bot didn't pick this up. > > Fengguang..? > > > > Btw I use crosstool [1] to compile not just arm, but mips and ppc > > ones in dmaengine. > > > > Even in arm, compile is bit painful, bunch of drivers need special > > arch configs to be able to compile. Multi doesn't seem to compile > > everything. Right now I have 5-6 to compile all arm drivers.. :( Do those drivers really require special configurations to compile, or do they depend on them in Kconfig without really requiring them ? In the latter case you could add a dependency on COMPILE_TEST. For instance RCAR_DMAC depends on ARCH_RENESAS || COMPILE_TEST, so you can compile it if you enable COMPILE_TEST. > > [1]: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/ > > And there are PPC drivers as well I think. Almost 40 drivers touched > makes it really painful. And so you want to distribute the pain to all DMA engine driver developers ? ;-) On a more serious note, I of course don't ask for full coverage, but given the large number of compilation failures reported, a reasonable effort would be worth it.
diff --git a/drivers/dma/sh/rcar-dmac.c b/drivers/dma/sh/rcar-dmac.c index dfb1792..ca39265 100644 --- a/drivers/dma/sh/rcar-dmac.c +++ b/drivers/dma/sh/rcar-dmac.c @@ -1356,21 +1356,18 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int irq, void *dev) { struct rcar_dmac_chan *chan = dev; struct rcar_dmac_desc *desc; + struct dma_desc_callback cb; spin_lock_irq(&chan->lock); /* For cyclic transfers notify the user after every chunk. */ if (chan->desc.running && chan->desc.running->cyclic) { - dma_async_tx_callback callback; - void *callback_param; - desc = chan->desc.running; - callback = desc->async_tx.callback; - callback_param = desc->async_tx.callback_param; + dmaengine_desc_get_callback(&desc->async_tx, &cb); - if (callback) { + if (cb->callback) { spin_unlock_irq(&chan->lock); - callback(callback_param); + dmaengine_desc_callback_invoke(&cb, NULL); spin_lock_irq(&chan->lock); } } @@ -1392,7 +1389,8 @@ static irqreturn_t rcar_dmac_isr_channel_thread(int irq, void *dev) * safely dereference it without holding the channel * lock. */ - desc->async_tx.callback(desc->async_tx.callback_param); + dmaengine_desc_get_callback(&desc->async_tx, &cb); + dmaengine_desc_callback_invoke(&cb, NULL); spin_lock_irq(&chan->lock); }
Convert driver to use the new helper function for callback Signed-off-by: Dave Jiang <dave.jiang@intel.com> --- drivers/dma/sh/rcar-dmac.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html