aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sysctl.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-05-25 19:59:51 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-25 19:59:51 -0400
commitb1cdc4670b9508fcd47a15fbd12f70d269880b37 (patch)
treefea9e2650170886d539488f8b1e064f6ca60ad36 /kernel/sysctl.c
parentce7d0226198aac42ed311dd2783232adc16b296d (diff)
parentf925b1303e0672effc78547353bd2ddfe11f5b5f (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (63 commits) drivers/net/usb/asix.c: Fix pointer cast. be2net: Bug fix to avoid disabling bottom half during firmware upgrade. proc_dointvec: write a single value hso: add support for new products Phonet: fix potential use-after-free in pep_sock_close() ath9k: remove VEOL support for ad-hoc ath9k: change beacon allocation to prefer the first beacon slot sock.h: fix kernel-doc warning cls_cgroup: Fix build error when built-in macvlan: do proper cleanup in macvlan_common_newlink() V2 be2net: Bug fix in init code in probe net/dccp: expansion of error code size ath9k: Fix rx of mcast/bcast frames in PS mode with auto sleep wireless: fix sta_info.h kernel-doc warnings wireless: fix mac80211.h kernel-doc warnings iwlwifi: testing the wrong variable in iwl_add_bssid_station() ath9k_htc: rare leak in ath9k_hif_usb_alloc_tx_urbs() ath9k_htc: dereferencing before check in hif_usb_tx_cb() rt2x00: Fix rt2800usb TX descriptor writing. rt2x00: Fix failed SLEEP->AWAKE and AWAKE->SLEEP transitions. ...
Diffstat (limited to 'kernel/sysctl.c')
-rw-r--r--kernel/sysctl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
index 84ff5e75c084..997080f00e0b 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -2287,6 +2287,8 @@ static int __do_proc_dointvec(void *tbl_data, struct ctl_table *table,
2287 if (write) { 2287 if (write) {
2288 left -= proc_skip_spaces(&kbuf); 2288 left -= proc_skip_spaces(&kbuf);
2289 2289
2290 if (!left)
2291 break;
2290 err = proc_get_long(&kbuf, &left, &lval, &neg, 2292 err = proc_get_long(&kbuf, &left, &lval, &neg,
2291 proc_wspace_sep, 2293 proc_wspace_sep,
2292 sizeof(proc_wspace_sep), NULL); 2294 sizeof(proc_wspace_sep), NULL);
@@ -2313,7 +2315,7 @@ static int __do_proc_dointvec(void *tbl_data, struct ctl_table *table,
2313 2315
2314 if (!write && !first && left && !err) 2316 if (!write && !first && left && !err)
2315 err = proc_put_char(&buffer, &left, '\n'); 2317 err = proc_put_char(&buffer, &left, '\n');
2316 if (write && !err) 2318 if (write && !err && left)
2317 left -= proc_skip_spaces(&kbuf); 2319 left -= proc_skip_spaces(&kbuf);
2318free: 2320free:
2319 if (write) { 2321 if (write) {