From: Petr Rockai <prockai@redhat.com>
To: lvm-devel@redhat.com
Subject: LVM2 tools/lvmcmdlib.c lib/mm/memlock.h lib/mm ...
Date: Thu, 19 Nov 2009 12:59:19 +0100 [thread overview]
Message-ID: <87pr7ewwrs.fsf@twilight.int.mornfall.net.> (raw)
In-Reply-To: <4B051CEB.1030204@redhat.com> (Marian Csontos's message of "Thu, 19 Nov 2009 11:24:43 +0100")
Marian Csontos <mcsontos@redhat.com> writes:
> Why not to zero _memlock_count here (and _memlock_count_daemon below)?
> IMO, simple log_error is not enough. Though I understand this should not happen
> under any conditions, the Murphy's Law says it will happen. And when it
> happens...
>
> ...dropping below zero, will result in subsequent memlock_inc/memloc_inc_daemon
> having no effect. (Q: How serious is this condition? Could it result in data
> corruption?)
When the value is out of sync once, there's no really good way to
recover. Too high will prevent scans, too low will cause deadlocks, the
result always being non-functional code.
> On the other hand, if it were zeroed, the possible deadlock could be
> the only result. However, this could happen only when memory is
> unlocked before it is locked.
See above.
>> +/*
>> + * The memlock_*_daemon functions will force the mlockall() call that we need
>> + * to stay in memory, but they will have no effect on device scans (unlike
>> + * normal memlock_inc and memlock_dec). Memory is kept locked as long as either
>> + * of memlock or memlock_daemon is in effect.
>> + */
>>
> Q: It does not work as proposed now. Does the "will" mean it will once
> implemented?
Why not? As far as I can tell, this works as advertised, and testing
confirms that.
Yours,
Petr.
next prev parent reply other threads:[~2009-11-19 11:59 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-19 1:11 LVM2 tools/lvmcmdlib.c lib/mm/memlock.h lib/mm mornfall
2009-11-19 10:24 ` Marian Csontos
2009-11-19 11:59 ` Petr Rockai [this message]
2009-11-19 13:03 ` Marian Csontos
2009-11-19 14:19 ` Marian Csontos
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=87pr7ewwrs.fsf@twilight.int.mornfall.net. \
--to=prockai@redhat.com \
--cc=lvm-devel@redhat.com \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.