diff options
Diffstat (limited to 'fs/orangefs/devorangefs-req.c')
| -rw-r--r-- | fs/orangefs/devorangefs-req.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/orangefs/devorangefs-req.c b/fs/orangefs/devorangefs-req.c index c4ab6fdf17a0..e1534c9bab16 100644 --- a/fs/orangefs/devorangefs-req.c +++ b/fs/orangefs/devorangefs-req.c | |||
| @@ -208,14 +208,19 @@ restart: | |||
| 208 | continue; | 208 | continue; |
| 209 | /* | 209 | /* |
| 210 | * Skip ops whose filesystem we don't know about unless | 210 | * Skip ops whose filesystem we don't know about unless |
| 211 | * it is being mounted. | 211 | * it is being mounted or unmounted. It is possible for |
| 212 | * a filesystem we don't know about to be unmounted if | ||
| 213 | * it fails to mount in the kernel after userspace has | ||
| 214 | * been sent the mount request. | ||
| 212 | */ | 215 | */ |
| 213 | /* XXX: is there a better way to detect this? */ | 216 | /* XXX: is there a better way to detect this? */ |
| 214 | } else if (ret == -1 && | 217 | } else if (ret == -1 && |
| 215 | !(op->upcall.type == | 218 | !(op->upcall.type == |
| 216 | ORANGEFS_VFS_OP_FS_MOUNT || | 219 | ORANGEFS_VFS_OP_FS_MOUNT || |
| 217 | op->upcall.type == | 220 | op->upcall.type == |
| 218 | ORANGEFS_VFS_OP_GETATTR)) { | 221 | ORANGEFS_VFS_OP_GETATTR || |
| 222 | op->upcall.type == | ||
| 223 | ORANGEFS_VFS_OP_FS_UMOUNT)) { | ||
| 219 | gossip_debug(GOSSIP_DEV_DEBUG, | 224 | gossip_debug(GOSSIP_DEV_DEBUG, |
| 220 | "orangefs: skipping op tag %llu %s\n", | 225 | "orangefs: skipping op tag %llu %s\n", |
| 221 | llu(op->tag), get_opname_string(op)); | 226 | llu(op->tag), get_opname_string(op)); |
