FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > Device-mapper Development

 
 
LinkBack Thread Tools
 
Old 01-28-2010, 12:27 PM
Milan Broz
 
Default Do not wait for event on device without table.

If there is DM device with no table present, do not
try to wait for change event. Otherwise it can
wait forever and block already removed device.

Simple reproducible:
dmsetup create x --notable
dmsetup wait x 0 &
dmsetup remove x

Now it waits for device, which is no longer accesible through dm-ioctl.

Signed-off-by: Milan Broz <mbroz@redhat.com>
---
drivers/md/dm-ioctl.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/drivers/md/dm-ioctl.c b/drivers/md/dm-ioctl.c
index 1d66932..a0ac379 100644
--- a/drivers/md/dm-ioctl.c
+++ b/drivers/md/dm-ioctl.c
@@ -1023,6 +1023,15 @@ static int dev_wait(struct dm_ioctl *param, size_t param_size)
return -ENXIO;

/*
+ * Do not wait if no table present
+ */
+ if (!(table = dm_get_live_or_inactive_table(md, param))) {
+ r = -ENXIO;
+ goto out;
+ }
+ dm_table_put(table);
+
+ /*
* Wait for a notification event
*/
if (dm_wait_event(md, param->event_nr)) {
--
1.6.6

--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel
 

Thread Tools




All times are GMT. The time now is 10:41 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org