diff options
| author | Konstantin Belousov <kib@FreeBSD.org> | 2011-08-09 20:53:33 +0000 |
|---|---|---|
| committer | Konstantin Belousov <kib@FreeBSD.org> | 2011-08-09 20:53:33 +0000 |
| commit | e047ade9477f4147d908164726a3a820a3fe4147 (patch) | |
| tree | 5ce01445eaa87e60c9f15ae404aa2c03832de12b /sys/fs/devfs/devfs_devs.c | |
| parent | b1f0f5b76e47479f33f0f273f36545aca08012ff (diff) | |
Notes
Diffstat (limited to 'sys/fs/devfs/devfs_devs.c')
| -rw-r--r-- | sys/fs/devfs/devfs_devs.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/fs/devfs/devfs_devs.c b/sys/fs/devfs/devfs_devs.c index d72ada03672d..a2d3222dda93 100644 --- a/sys/fs/devfs/devfs_devs.c +++ b/sys/fs/devfs/devfs_devs.c @@ -630,13 +630,15 @@ devfs_populate_loop(struct devfs_mount *dm, int cleanup) void devfs_populate(struct devfs_mount *dm) { + unsigned gen; sx_assert(&dm->dm_lock, SX_XLOCKED); - if (dm->dm_generation == devfs_generation) + gen = devfs_generation; + if (dm->dm_generation == gen) return; while (devfs_populate_loop(dm, 0)) continue; - dm->dm_generation = devfs_generation; + dm->dm_generation = gen; } /* |
