| From 4cb57ab4a2e61978f3a9b7d4f53988f30d61c27f Mon Sep 17 00:00:00 2001 |
| From: Mikulas Patocka <mpatocka@redhat.com> |
| Date: Thu, 5 Dec 2013 17:33:29 -0500 |
| Subject: dm bufio: initialize read-only module parameters |
| |
| From: Mikulas Patocka <mpatocka@redhat.com> |
| |
| commit 4cb57ab4a2e61978f3a9b7d4f53988f30d61c27f upstream. |
| |
| Some module parameters in dm-bufio are read-only. These parameters |
| inform the user about memory consumption. They are not supposed to be |
| changed by the user. |
| |
| However, despite being read-only, these parameters can be set on |
| modprobe or insmod command line, for example: |
| modprobe dm-bufio current_allocated_bytes=12345 |
| |
| The kernel doesn't expect that these variables can be non-zero at module |
| initialization and if the user sets them, it results in BUG. |
| |
| This patch initializes the variables in the module init routine, so that |
| user-supplied values are ignored. |
| |
| Signed-off-by: Mikulas Patocka <mpatocka@redhat.com> |
| Signed-off-by: Mike Snitzer <snitzer@redhat.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/md/dm-bufio.c | 5 +++++ |
| 1 file changed, 5 insertions(+) |
| |
| --- a/drivers/md/dm-bufio.c |
| +++ b/drivers/md/dm-bufio.c |
| @@ -1642,6 +1642,11 @@ static int __init dm_bufio_init(void) |
| { |
| __u64 mem; |
| |
| + dm_bufio_allocated_kmem_cache = 0; |
| + dm_bufio_allocated_get_free_pages = 0; |
| + dm_bufio_allocated_vmalloc = 0; |
| + dm_bufio_current_allocated = 0; |
| + |
| memset(&dm_bufio_caches, 0, sizeof dm_bufio_caches); |
| memset(&dm_bufio_cache_names, 0, sizeof dm_bufio_cache_names); |
| |