forked from Minki/linux
drbd: move global variables to drbd namespace and make some static
This is a follow-up to Gregs complaints that drbd clutteres the global namespace. Some of DRBD's module parameters are only used within one compilation unit. Make these static. Signed-off-by: Roland Kammerer <roland.kammerer@linbit.com> Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
8ab761e17e
commit
183ece3005
@ -63,19 +63,15 @@
|
|||||||
# define __must_hold(x)
|
# define __must_hold(x)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* module parameter, defined in drbd_main.c */
|
/* shared module parameters, defined in drbd_main.c */
|
||||||
extern unsigned int minor_count;
|
|
||||||
extern bool disable_sendpage;
|
|
||||||
extern bool allow_oos;
|
|
||||||
void tl_abort_disk_io(struct drbd_device *device);
|
|
||||||
|
|
||||||
#ifdef CONFIG_DRBD_FAULT_INJECTION
|
#ifdef CONFIG_DRBD_FAULT_INJECTION
|
||||||
extern int enable_faults;
|
extern int drbd_enable_faults;
|
||||||
extern int fault_rate;
|
extern int drbd_fault_rate;
|
||||||
extern int fault_devs;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
extern unsigned int drbd_minor_count;
|
||||||
extern char drbd_usermode_helper[];
|
extern char drbd_usermode_helper[];
|
||||||
|
extern int drbd_proc_details;
|
||||||
|
|
||||||
|
|
||||||
/* This is used to stop/restart our threads.
|
/* This is used to stop/restart our threads.
|
||||||
@ -181,8 +177,8 @@ _drbd_insert_fault(struct drbd_device *device, unsigned int type);
|
|||||||
static inline int
|
static inline int
|
||||||
drbd_insert_fault(struct drbd_device *device, unsigned int type) {
|
drbd_insert_fault(struct drbd_device *device, unsigned int type) {
|
||||||
#ifdef CONFIG_DRBD_FAULT_INJECTION
|
#ifdef CONFIG_DRBD_FAULT_INJECTION
|
||||||
return fault_rate &&
|
return drbd_fault_rate &&
|
||||||
(enable_faults & (1<<type)) &&
|
(drbd_enable_faults & (1<<type)) &&
|
||||||
_drbd_insert_fault(device, type);
|
_drbd_insert_fault(device, type);
|
||||||
#else
|
#else
|
||||||
return 0;
|
return 0;
|
||||||
@ -1466,8 +1462,6 @@ extern struct drbd_resource *drbd_find_resource(const char *name);
|
|||||||
extern void drbd_destroy_resource(struct kref *kref);
|
extern void drbd_destroy_resource(struct kref *kref);
|
||||||
extern void conn_free_crypto(struct drbd_connection *connection);
|
extern void conn_free_crypto(struct drbd_connection *connection);
|
||||||
|
|
||||||
extern int proc_details;
|
|
||||||
|
|
||||||
/* drbd_req */
|
/* drbd_req */
|
||||||
extern void do_submit(struct work_struct *ws);
|
extern void do_submit(struct work_struct *ws);
|
||||||
extern void __drbd_make_request(struct drbd_device *, struct bio *, unsigned long);
|
extern void __drbd_make_request(struct drbd_device *, struct bio *, unsigned long);
|
||||||
|
@ -77,40 +77,40 @@ MODULE_PARM_DESC(minor_count, "Approximate number of drbd devices ("
|
|||||||
MODULE_ALIAS_BLOCKDEV_MAJOR(DRBD_MAJOR);
|
MODULE_ALIAS_BLOCKDEV_MAJOR(DRBD_MAJOR);
|
||||||
|
|
||||||
#include <linux/moduleparam.h>
|
#include <linux/moduleparam.h>
|
||||||
/* allow_open_on_secondary */
|
|
||||||
MODULE_PARM_DESC(allow_oos, "DONT USE!");
|
|
||||||
/* thanks to these macros, if compiled into the kernel (not-module),
|
/* thanks to these macros, if compiled into the kernel (not-module),
|
||||||
* this becomes the boot parameter drbd.minor_count */
|
* these become boot parameters (e.g., drbd.minor_count) */
|
||||||
module_param(minor_count, uint, 0444);
|
|
||||||
module_param(disable_sendpage, bool, 0644);
|
|
||||||
module_param(allow_oos, bool, 0);
|
|
||||||
module_param(proc_details, int, 0644);
|
|
||||||
|
|
||||||
#ifdef CONFIG_DRBD_FAULT_INJECTION
|
#ifdef CONFIG_DRBD_FAULT_INJECTION
|
||||||
int enable_faults;
|
int drbd_enable_faults;
|
||||||
int fault_rate;
|
int drbd_fault_rate;
|
||||||
static int fault_count;
|
static int drbd_fault_count;
|
||||||
int fault_devs;
|
static int drbd_fault_devs;
|
||||||
/* bitmap of enabled faults */
|
/* bitmap of enabled faults */
|
||||||
module_param(enable_faults, int, 0664);
|
module_param_named(enable_faults, drbd_enable_faults, int, 0664);
|
||||||
/* fault rate % value - applies to all enabled faults */
|
/* fault rate % value - applies to all enabled faults */
|
||||||
module_param(fault_rate, int, 0664);
|
module_param_named(fault_rate, drbd_fault_rate, int, 0664);
|
||||||
/* count of faults inserted */
|
/* count of faults inserted */
|
||||||
module_param(fault_count, int, 0664);
|
module_param_named(fault_count, drbd_fault_count, int, 0664);
|
||||||
/* bitmap of devices to insert faults on */
|
/* bitmap of devices to insert faults on */
|
||||||
module_param(fault_devs, int, 0644);
|
module_param_named(fault_devs, drbd_fault_devs, int, 0644);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* module parameter, defined */
|
/* module parameters we can keep static */
|
||||||
unsigned int minor_count = DRBD_MINOR_COUNT_DEF;
|
static bool drbd_allow_oos; /* allow_open_on_secondary */
|
||||||
bool disable_sendpage;
|
static bool drbd_disable_sendpage;
|
||||||
bool allow_oos;
|
MODULE_PARM_DESC(allow_oos, "DONT USE!");
|
||||||
int proc_details; /* Detail level in proc drbd*/
|
module_param_named(allow_oos, drbd_allow_oos, bool, 0);
|
||||||
|
module_param_named(disable_sendpage, drbd_disable_sendpage, bool, 0644);
|
||||||
|
|
||||||
|
/* module parameters we share */
|
||||||
|
int drbd_proc_details; /* Detail level in proc drbd*/
|
||||||
|
module_param_named(proc_details, drbd_proc_details, int, 0644);
|
||||||
|
/* module parameters shared with defaults */
|
||||||
|
unsigned int drbd_minor_count = DRBD_MINOR_COUNT_DEF;
|
||||||
/* Module parameter for setting the user mode helper program
|
/* Module parameter for setting the user mode helper program
|
||||||
* to run. Default is /sbin/drbdadm */
|
* to run. Default is /sbin/drbdadm */
|
||||||
char drbd_usermode_helper[80] = "/sbin/drbdadm";
|
char drbd_usermode_helper[80] = "/sbin/drbdadm";
|
||||||
|
module_param_named(minor_count, drbd_minor_count, uint, 0444);
|
||||||
module_param_string(usermode_helper, drbd_usermode_helper, sizeof(drbd_usermode_helper), 0644);
|
module_param_string(usermode_helper, drbd_usermode_helper, sizeof(drbd_usermode_helper), 0644);
|
||||||
|
|
||||||
/* in 2.6.x, our device mapping and config info contains our virtual gendisks
|
/* in 2.6.x, our device mapping and config info contains our virtual gendisks
|
||||||
@ -1562,7 +1562,7 @@ static int _drbd_send_page(struct drbd_peer_device *peer_device, struct page *pa
|
|||||||
* put_page(); and would cause either a VM_BUG directly, or
|
* put_page(); and would cause either a VM_BUG directly, or
|
||||||
* __page_cache_release a page that would actually still be referenced
|
* __page_cache_release a page that would actually still be referenced
|
||||||
* by someone, leading to some obscure delayed Oops somewhere else. */
|
* by someone, leading to some obscure delayed Oops somewhere else. */
|
||||||
if (disable_sendpage || (page_count(page) < 1) || PageSlab(page))
|
if (drbd_disable_sendpage || (page_count(page) < 1) || PageSlab(page))
|
||||||
return _drbd_no_send_page(peer_device, page, offset, size, msg_flags);
|
return _drbd_no_send_page(peer_device, page, offset, size, msg_flags);
|
||||||
|
|
||||||
msg_flags |= MSG_NOSIGNAL;
|
msg_flags |= MSG_NOSIGNAL;
|
||||||
@ -1934,7 +1934,7 @@ static int drbd_open(struct block_device *bdev, fmode_t mode)
|
|||||||
if (device->state.role != R_PRIMARY) {
|
if (device->state.role != R_PRIMARY) {
|
||||||
if (mode & FMODE_WRITE)
|
if (mode & FMODE_WRITE)
|
||||||
rv = -EROFS;
|
rv = -EROFS;
|
||||||
else if (!allow_oos)
|
else if (!drbd_allow_oos)
|
||||||
rv = -EMEDIUMTYPE;
|
rv = -EMEDIUMTYPE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2142,7 +2142,7 @@ static void drbd_destroy_mempools(void)
|
|||||||
static int drbd_create_mempools(void)
|
static int drbd_create_mempools(void)
|
||||||
{
|
{
|
||||||
struct page *page;
|
struct page *page;
|
||||||
const int number = (DRBD_MAX_BIO_SIZE/PAGE_SIZE) * minor_count;
|
const int number = (DRBD_MAX_BIO_SIZE/PAGE_SIZE) * drbd_minor_count;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* prepare our caches and mempools */
|
/* prepare our caches and mempools */
|
||||||
@ -2984,8 +2984,8 @@ static int __init drbd_init(void)
|
|||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
if (minor_count < DRBD_MINOR_COUNT_MIN || minor_count > DRBD_MINOR_COUNT_MAX) {
|
if (drbd_minor_count < DRBD_MINOR_COUNT_MIN || drbd_minor_count > DRBD_MINOR_COUNT_MAX) {
|
||||||
pr_err("invalid minor_count (%d)\n", minor_count);
|
pr_err("invalid minor_count (%d)\n", drbd_minor_count);
|
||||||
#ifdef MODULE
|
#ifdef MODULE
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
#else
|
#else
|
||||||
@ -3912,12 +3912,12 @@ _drbd_insert_fault(struct drbd_device *device, unsigned int type)
|
|||||||
static struct fault_random_state rrs = {0, 0};
|
static struct fault_random_state rrs = {0, 0};
|
||||||
|
|
||||||
unsigned int ret = (
|
unsigned int ret = (
|
||||||
(fault_devs == 0 ||
|
(drbd_fault_devs == 0 ||
|
||||||
((1 << device_to_minor(device)) & fault_devs) != 0) &&
|
((1 << device_to_minor(device)) & drbd_fault_devs) != 0) &&
|
||||||
(((_drbd_fault_random(&rrs) % 100) + 1) <= fault_rate));
|
(((_drbd_fault_random(&rrs) % 100) + 1) <= drbd_fault_rate));
|
||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
fault_count++;
|
drbd_fault_count++;
|
||||||
|
|
||||||
if (__ratelimit(&drbd_ratelimit_state))
|
if (__ratelimit(&drbd_ratelimit_state))
|
||||||
drbd_warn(device, "***Simulating %s failure\n",
|
drbd_warn(device, "***Simulating %s failure\n",
|
||||||
|
@ -179,7 +179,7 @@ static void drbd_syncer_progress(struct drbd_device *device, struct seq_file *se
|
|||||||
seq_printf_with_thousands_grouping(seq, dbdt);
|
seq_printf_with_thousands_grouping(seq, dbdt);
|
||||||
seq_puts(seq, " (");
|
seq_puts(seq, " (");
|
||||||
/* ------------------------- ~3s average ------------------------ */
|
/* ------------------------- ~3s average ------------------------ */
|
||||||
if (proc_details >= 1) {
|
if (drbd_proc_details >= 1) {
|
||||||
/* this is what drbd_rs_should_slow_down() uses */
|
/* this is what drbd_rs_should_slow_down() uses */
|
||||||
i = (device->rs_last_mark + DRBD_SYNC_MARKS-1) % DRBD_SYNC_MARKS;
|
i = (device->rs_last_mark + DRBD_SYNC_MARKS-1) % DRBD_SYNC_MARKS;
|
||||||
dt = (jiffies - device->rs_mark_time[i]) / HZ;
|
dt = (jiffies - device->rs_mark_time[i]) / HZ;
|
||||||
@ -209,7 +209,7 @@ static void drbd_syncer_progress(struct drbd_device *device, struct seq_file *se
|
|||||||
}
|
}
|
||||||
seq_printf(seq, " K/sec%s\n", stalled ? " (stalled)" : "");
|
seq_printf(seq, " K/sec%s\n", stalled ? " (stalled)" : "");
|
||||||
|
|
||||||
if (proc_details >= 1) {
|
if (drbd_proc_details >= 1) {
|
||||||
/* 64 bit:
|
/* 64 bit:
|
||||||
* we convert to sectors in the display below. */
|
* we convert to sectors in the display below. */
|
||||||
unsigned long bm_bits = drbd_bm_bits(device);
|
unsigned long bm_bits = drbd_bm_bits(device);
|
||||||
@ -332,13 +332,13 @@ static int drbd_seq_show(struct seq_file *seq, void *v)
|
|||||||
state.conn == C_VERIFY_T)
|
state.conn == C_VERIFY_T)
|
||||||
drbd_syncer_progress(device, seq, state);
|
drbd_syncer_progress(device, seq, state);
|
||||||
|
|
||||||
if (proc_details >= 1 && get_ldev_if_state(device, D_FAILED)) {
|
if (drbd_proc_details >= 1 && get_ldev_if_state(device, D_FAILED)) {
|
||||||
lc_seq_printf_stats(seq, device->resync);
|
lc_seq_printf_stats(seq, device->resync);
|
||||||
lc_seq_printf_stats(seq, device->act_log);
|
lc_seq_printf_stats(seq, device->act_log);
|
||||||
put_ldev(device);
|
put_ldev(device);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (proc_details >= 2)
|
if (drbd_proc_details >= 2)
|
||||||
seq_printf(seq, "\tblocked on activity log: %d\n", atomic_read(&device->ap_actlog_cnt));
|
seq_printf(seq, "\tblocked on activity log: %d\n", atomic_read(&device->ap_actlog_cnt));
|
||||||
}
|
}
|
||||||
rcu_read_unlock();
|
rcu_read_unlock();
|
||||||
|
@ -332,7 +332,7 @@ static void drbd_free_pages(struct drbd_device *device, struct page *page, int i
|
|||||||
if (page == NULL)
|
if (page == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (drbd_pp_vacant > (DRBD_MAX_BIO_SIZE/PAGE_SIZE) * minor_count)
|
if (drbd_pp_vacant > (DRBD_MAX_BIO_SIZE/PAGE_SIZE) * drbd_minor_count)
|
||||||
i = page_chain_free(page);
|
i = page_chain_free(page);
|
||||||
else {
|
else {
|
||||||
struct page *tmp;
|
struct page *tmp;
|
||||||
|
Loading…
Reference in New Issue
Block a user