[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150417153136.GA11202@roeck-us.net>
Date: Fri, 17 Apr 2015 08:31:36 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Jens Axboe <axboe@...com>
Cc: linux-kernel@...r.kernel.org, Chong Yuan <chong.yuan@...blaze.com>,
Wenbo Wang <wenbo.wang@...blaze.com>
Subject: Re: Upstream kernel fails to run on qemu-sparc64 due to commit
889fa31f0 (blk-mq: reduce unnecessary software queue looping)
Hi Jens,
On Fri, Apr 17, 2015 at 08:26:11AM -0600, Jens Axboe wrote:
> >>
> >As additional information:
> >
> >+ * Set the map size to the number of mapped software queues.
> >+ * This is more accurate and more efficient than looping
> >+ * over all possibly mapped software queues.
> >+ */
> >+ map->map_size = hctx->nr_ctx / map->bits_per_word;
> >
> >On my system, hctx->nr_ctx is 1, and map->bits_per_word is 8.
> >Thus map->map_size is set to 0, which doesn't make much sense.
>
>
> >The system comes up if I replace the above code with
> > map->map_size = DIV_ROUND_UP(hctx->nr_ctx, map->bits_per_word);
> >
> >I have no idea if that is the correct fix, though.
>
> Ugh, yes indeed, looks like the <= was lost from a previous patch. Now I
> wonder why it I didn't see any hangs with this... Thanks for reporting, I'll
> get a fix in today.
>
Assuming that nr_ctx reflects the number of (online) CPUs, my guess is that
you may have a multiple of bits_per_word CPUs in your system.
Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists