bio_list_merge() should do nothing if the second list is empty - not oops.
From: [email protected]
Signed-Off-By: Alasdair G Kergon <[email protected]>
Index: linux-2.6.14/drivers/md/dm-bio-list.h
===================================================================
--- linux-2.6.14.orig/drivers/md/dm-bio-list.h 2005-10-28 01:02:08.000000000 +0100
+++ linux-2.6.14/drivers/md/dm-bio-list.h 2005-11-15 15:59:20.000000000 +0000
@@ -33,6 +33,9 @@ static inline void bio_list_add(struct b
static inline void bio_list_merge(struct bio_list *bl, struct bio_list *bl2)
{
+ if (!bl2->head)
+ return;
+
if (bl->tail)
bl->tail->bi_next = bl2->head;
else
Alasdair G Kergon wrote:
> bio_list_merge() should do nothing if the second list is empty - not oops.
>
> From: [email protected]
> Signed-Off-By: Alasdair G Kergon <[email protected]>
>
> Index: linux-2.6.14/drivers/md/dm-bio-list.h
> ===================================================================
> --- linux-2.6.14.orig/drivers/md/dm-bio-list.h 2005-10-28 01:02:08.000000000 +0100
> +++ linux-2.6.14/drivers/md/dm-bio-list.h 2005-11-15 15:59:20.000000000 +0000
> @@ -33,6 +33,9 @@ static inline void bio_list_add(struct b
>
> static inline void bio_list_merge(struct bio_list *bl, struct bio_list *bl2)
> {
> + if (!bl2->head)
> + return;
> +
> if (bl->tail)
> bl->tail->bi_next = bl2->head;
> else
Could you please tell how to reproduce this oops using e.g. loop
devices? This patch looks relevant to my Live CD (although no oops has
been reported yet).
--
Alexander E. Patrakov
On Fri, Nov 18, 2005 at 08:32:59PM +0500, Alexander E. Patrakov wrote:
> Could you please tell how to reproduce this oops
Try creating/removing multiple snapshots of the same device while
I/O is going on.
Alasdair
--
[email protected]
On Fri, Nov 18, Alexander E. Patrakov wrote:
> Could you please tell how to reproduce this oops using e.g. loop
> devices? This patch looks relevant to my Live CD (although no oops has
> been reported yet).
>
Its not an oops but hanging on I/O to finish.
Regards,
Jan
--
Jan Blunck [email protected]
SuSE LINUX AG - A Novell company
Maxfeldstr. 5 +49-911-74053-608
D-90409 N?rnberg http://www.suse.de