public inbox for lvm2-cvs@sourceware.org help / color / mirror / Atom feed
From: zkabelac@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2 ./WHATS_NEW lib/activate/fs.c lib/activat ... Date: Mon, 10 Jan 2011 13:44:00 -0000 [thread overview] Message-ID: <20110110134440.25922.qmail@sourceware.org> (raw) CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: zkabelac@sourceware.org 2011-01-10 13:44:39 Modified files: . : WHATS_NEW lib/activate : fs.c fs.h Log message: Add internal fs cookie Add functions for handling internal lvm cookie used for all dm_tree operations until fs_unlock is called. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/WHATS_NEW.diff?cvsroot=lvm2&r1=1.1868&r2=1.1869 http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/activate/fs.c.diff?cvsroot=lvm2&r1=1.53&r2=1.54 http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/activate/fs.h.diff?cvsroot=lvm2&r1=1.14&r2=1.15 --- LVM2/WHATS_NEW 2011/01/10 13:15:57 1.1868 +++ LVM2/WHATS_NEW 2011/01/10 13:44:39 1.1869 @@ -1,5 +1,6 @@ Version 2.02.80 - ==================================== + Add internal lvm library cookie. Speedup command processing by caching resolved config tree. Pass config_tree to renamed function import_vg_from_config_tree(). Detect NULL handle in get_property(). --- LVM2/lib/activate/fs.c 2010/12/13 10:43:57 1.53 +++ LVM2/lib/activate/fs.c 2011/01/10 13:44:39 1.54 @@ -1,6 +1,6 @@ /* * Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved. - * Copyright (C) 2004-2007 Red Hat, Inc. All rights reserved. + * Copyright (C) 2004-2011 Red Hat, Inc. All rights reserved. * * This file is part of LVM2. * @@ -26,6 +26,12 @@ #include <limits.h> #include <dirent.h> +/* + * Library cookie to combine multiple fs transactions. + * Supports to wait for udev device settle only when needed. + */ +static uint32_t _fs_cookie = DM_COOKIE_AUTO_CREATE; + static int _mk_dir(const char *dev_dir, const char *vg_name) { char vg_path[PATH_MAX]; @@ -396,7 +402,21 @@ void fs_unlock(void) { if (!memlock()) { + /* Wait for all processed udev devices */ + if (!dm_udev_wait(_fs_cookie)) + stack; + _fs_cookie = DM_COOKIE_AUTO_CREATE; /* Reset cookie */ dm_lib_release(); _pop_fs_ops(); } } + +uint32_t fs_get_cookie(void) +{ + return _fs_cookie; +} + +void fs_set_cookie(uint32_t cookie) +{ + _fs_cookie = cookie; +} --- LVM2/lib/activate/fs.h 2010/01/07 19:54:21 1.14 +++ LVM2/lib/activate/fs.h 2011/01/10 13:44:39 1.15 @@ -30,5 +30,7 @@ int fs_rename_lv(struct logical_volume *lv, const char *dev, const char *old_vgname, const char *old_lvname); void fs_unlock(void); +uint32_t fs_get_cookie(void); +void fs_set_cookie(uint32_t cookie); #endif
reply other threads:[~2011-01-10 13:44 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20110110134440.25922.qmail@sourceware.org \ --to=zkabelac@sourceware.org \ --cc=lvm-devel@redhat.com \ --cc=lvm2-cvs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).