Re: 2.6.21-rc suspend regression: sysfs deadlock
From: Oliver Neukum
Date: Tue Mar 06 2007 - 15:16:53 EST
Am Dienstag, 6. März 2007 20:20 schrieb Hugh Dickins:
> This comes from Oliver's commit 94bebf4d1b8e7719f0f3944c037a21cfd99a4af7
> Driver core: fix race in sysfs between sysfs_remove_file() and read()/write()
> in 2.6.21-rc1. It looks to me like sysfs_write_file downs buffer->sem
> while calling flush_write_buffer, and flushing that particular write
> buffer entails downing buffer->sem in orphan_all_buffers.
I had not thought about sysfs removing files in sysfs.
> Suspend no longer deadlocks with the following silly patch, but I expect
> this either pokes a small hole in your scheme, or renders it pointless.
The latter.
> Maybe that commit needs to be reverted, or maybe you can see how to fix
> it up for -rc3.
If you want a quick fix a work queue could be used, but it's a kludge.
Suggestions, anybody?
Regards
Oliver
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/