diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-06 16:38:07 (GMT) |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-06 16:38:07 (GMT) |
commit | 6f4c98e1c22c28e00b8f050cce895a6b74db15d1 (patch) | |
tree | b00da8b3367c6f3d0f74f44b8c4092a7b7cbbe18 /drivers/staging/speakup/speakup_apollo.c | |
parent | 18a1a7a1d862ae0794a0179473d08a414dd49234 (diff) | |
parent | 22c9bcad859d5c969289b3b37084a96c621f8f2c (diff) | |
download | linux-6f4c98e1c22c28e00b8f050cce895a6b74db15d1.tar.xz |
Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
Pull module updates from Rusty Russell:
"Nothing major: the stricter permissions checking for sysfs broke a
staging driver; fix included. Greg KH said he'd take the patch but
hadn't as the merge window opened, so it's included here to avoid
breaking build"
* tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
staging: fix up speakup kobject mode
Use 'E' instead of 'X' for unsigned module taint flag.
VERIFY_OCTAL_PERMISSIONS: stricter checking for sysfs perms.
kallsyms: fix percpu vars on x86-64 with relocation.
kallsyms: generalize address range checking
module: LLVMLinux: Remove unused function warning from __param_check macro
Fix: module signature vs tracepoints: add new TAINT_UNSIGNED_MODULE
module: remove MODULE_GENERIC_TABLE
module: allow multiple calls to MODULE_DEVICE_TABLE() per module
module: use pr_cont
Diffstat (limited to 'drivers/staging/speakup/speakup_apollo.c')
-rw-r--r-- | drivers/staging/speakup/speakup_apollo.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/drivers/staging/speakup/speakup_apollo.c b/drivers/staging/speakup/speakup_apollo.c index 70cf159..38c8c222 100644 --- a/drivers/staging/speakup/speakup_apollo.c +++ b/drivers/staging/speakup/speakup_apollo.c @@ -53,30 +53,30 @@ static struct var_t vars[] = { * These attributes will appear in /sys/accessibility/speakup/apollo. */ static struct kobj_attribute caps_start_attribute = - __ATTR(caps_start, USER_RW, spk_var_show, spk_var_store); + __ATTR(caps_start, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute caps_stop_attribute = - __ATTR(caps_stop, USER_RW, spk_var_show, spk_var_store); + __ATTR(caps_stop, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute lang_attribute = - __ATTR(lang, USER_RW, spk_var_show, spk_var_store); + __ATTR(lang, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute pitch_attribute = - __ATTR(pitch, USER_RW, spk_var_show, spk_var_store); + __ATTR(pitch, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute rate_attribute = - __ATTR(rate, USER_RW, spk_var_show, spk_var_store); + __ATTR(rate, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute voice_attribute = - __ATTR(voice, USER_RW, spk_var_show, spk_var_store); + __ATTR(voice, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute vol_attribute = - __ATTR(vol, USER_RW, spk_var_show, spk_var_store); + __ATTR(vol, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute delay_time_attribute = - __ATTR(delay_time, ROOT_W, spk_var_show, spk_var_store); + __ATTR(delay_time, S_IWUSR|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute direct_attribute = - __ATTR(direct, USER_RW, spk_var_show, spk_var_store); + __ATTR(direct, S_IWUGO|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute full_time_attribute = - __ATTR(full_time, ROOT_W, spk_var_show, spk_var_store); + __ATTR(full_time, S_IWUSR|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute jiffy_delta_attribute = - __ATTR(jiffy_delta, ROOT_W, spk_var_show, spk_var_store); + __ATTR(jiffy_delta, S_IWUSR|S_IRUGO, spk_var_show, spk_var_store); static struct kobj_attribute trigger_time_attribute = - __ATTR(trigger_time, ROOT_W, spk_var_show, spk_var_store); + __ATTR(trigger_time, S_IWUSR|S_IRUGO, spk_var_show, spk_var_store); /* * Create a group of attributes so that we can create and destroy them all |