Messages in this thread | | | Date | Thu, 22 Mar 2007 15:51:06 +1100 | From | David Chinner <> | Subject | Re: [BUG] Code reordering in swsusp breaks suspend on SMP systems |
| |
On Wed, Mar 21, 2007 at 10:38:33PM +0100, Rafael J. Wysocki wrote: > > I think this is the XFS problem with freezable workqueues. > > Maxim, please try to apply the appended patch and see if it helps. > > Greetings, > Rafael > > > --- > Since freezable workqueues are broken in 2.6.21-rc > (cf. http://marc.theaimsgroup.com/?l=linux-kernel&m=116855740612755, > http://marc.theaimsgroup.com/?l=linux-kernel&m=117261312523921&w=2) > it's better to remove them altogether for 2.6.21 and change the only user of > them (XFS) accordingly. > > --- > fs/xfs/linux-2.6/xfs_buf.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > Index: linux-2.6.21-rc4/fs/xfs/linux-2.6/xfs_buf.c > =================================================================== > --- linux-2.6.21-rc4.orig/fs/xfs/linux-2.6/xfs_buf.c > +++ linux-2.6.21-rc4/fs/xfs/linux-2.6/xfs_buf.c > @@ -1829,11 +1829,11 @@ xfs_buf_init(void) > if (!xfs_buf_zone) > goto out_free_trace_buf; > > - xfslogd_workqueue = create_freezeable_workqueue("xfslogd"); > + xfslogd_workqueue = create_workqueue("xfslogd"); > if (!xfslogd_workqueue) > goto out_free_buf_zone; > > - xfsdatad_workqueue = create_freezeable_workqueue("xfsdatad"); > + xfsdatad_workqueue = create_workqueue("xfsdatad"); > if (!xfsdatad_workqueue) > goto out_destroy_xfslogd_workqueue; >
Acked-by: Dave Chinner <dgc@sgi.com>
Rafael, it sounds like this really needs to go into the next -rc kernel. Can you push it to Linus?
Cheers,
Dave. -- Dave Chinner Principal Engineer SGI Australian Software Group - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |