Re: workqueues ....

2018-07-28 Thread Mindaugas Rasiukevicius
Phil Nelson wrote: > On Thursday 26 July 2018 23:23:13 Taylor R Campbell wrote: > > static void > > foo_intr(...) > > { > > ... > > mutex_enter(>sc_work_lock); > > if (!sc->sc_work_scheduled) { > > workqueue_enqueue(sc->sc_wq, >sc_work, NULL); > >   

Re: workqueues ....

2018-07-28 Thread Phil Nelson
On Thursday 26 July 2018 23:23:13 Taylor R Campbell wrote: > static void > foo_intr(...) > { > ... > mutex_enter(>sc_work_lock); > if (!sc->sc_work_scheduled) { > workqueue_enqueue(sc->sc_wq, >sc_work, NULL); > sc->sc_work_scheduled = true; >

Re: workqueues ....

2018-07-27 Thread Phil Nelson
On Friday 27 July 2018 11:39:16 Mindaugas Rasiukevicius wrote: > This is an indication that you are trying to acquire an adaptive lock > while holding a spin-lock.  Adaptive mutex (using IPL_NONE) blocks and, > by design, you cannot block while holding a spin-mutex (> IPL_NONE). > If you will

Re: workqueues ....

2018-07-27 Thread Mindaugas Rasiukevicius
Phil Nelson wrote: > I'm getting a mutex error here in that the lock is held. > Backtrace: > System panicked: LOCKDEBUG: Mutex error: mutex_vector_enter,528: spin > lock held Backtrace from time of crash is available. > crash> bt > _KERNEL_OPT_NARCNET() at 0 > _KERNEL_OPT_ACPI_SCANPCI() at

Re: workqueues ....

2018-07-27 Thread Phil Nelson
On Thursday 26 July 2018 23:23:13 Taylor R Campbell wrote: > Is this a conceptual problem, or do you have a symptom that you're > actually hitting with specific code?  If the latter, can you describe > the symptom and quote the code? Yes, this a real problem I'm having. This is my real "f()":

Re: workqueues ....

2018-07-27 Thread Taylor R Campbell
> Date: Thu, 26 Jul 2018 22:57:57 -0700 > From: Phil Nelson > > I'm trying to work with workqueues and am having a locking problem Is this a conceptual problem, or do you have a symptom that you're actually hitting with specific code? If the latter, can you describe the sympt

workqueues ....

2018-07-26 Thread Phil Nelson
Hello all, I'm trying to work with workqueues and am having a locking problem Lets say I have a function f() as follows: int f() { mutex_enter(_mutex); .. code . mutex_exit(_mutex); } and now lets say that I start another function running via

Workqueues on filesystems

2017-04-04 Thread coypu
Hi, I'd like to tackle LFS issues. I've been running it as my root filesystem to get some real world testing, and it often wedges, and this with heavy use of KERNEL_LOCK (it's not marked MPSAFE). I'm still getting to know it, and not there yet. I don't feel comfortable with how it has its own

Re: Equivalent of Linux Workqueues

2012-01-11 Thread haad
Hi, On Wed, Jan 11, 2012 at 11:24 AM, Emmanuel Dreyfus m...@netbsd.org wrote: Hello Another caveat with DADHI porting: that require something like Linux Workqueues feature: http://www.kernel.org/doc/htmldocs/device-drivers/ch01s06.html (It only uses schedule_work, cancel_work_sync

Re: Equivalent of Linux Workqueues

2012-01-11 Thread Manuel Bouyer
On Wed, Jan 11, 2012 at 11:47:39AM +0100, haad wrote: Hi, On Wed, Jan 11, 2012 at 11:24 AM, Emmanuel Dreyfus m...@netbsd.org wrote: Hello Another caveat with DADHI porting: that require something like Linux Workqueues feature: http://www.kernel.org/doc/htmldocs/device-drivers/ch01s06

Re: Equivalent of Linux Workqueues

2012-01-11 Thread David Young
On Wed, Jan 11, 2012 at 10:24:33AM +, Emmanuel Dreyfus wrote: Hello Another caveat with DADHI porting: that require something like Linux Workqueues feature: http://www.kernel.org/doc/htmldocs/device-drivers/ch01s06.html (It only uses schedule_work, cancel_work_sync and flush_work