Commit graph

240 commits

Author SHA1 Message Date
Larry Finger
24b960c5c0 rtl8188eu: Change some locking around rtw_get_sec_ie()
Routine rtw_get_sec_ie() appears to suffer from a bug triggered under
unusual circumstances. This bug is exposed by first sending a deauthentication
frame and at the same time sending a much larger frame. After doing some debugging
the cause of the lockup of the CPU was that while rtw_get_sec_ie() attempts to
read the beacon frame sent by the router/AP, the size of the beacon is changed
since it is a reference and not a copy. By having a "rogue" beacon frame being
very large which isn't normal and not considered in the design, the computer
was stuck in an endless CPU lockup.

Routine translate_scan(), which calls rtw_get_sec_ie() is protected by a
spinlock. Add that spinlock around other calls of the routine.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2022-07-21 08:52:58 -05:00
Larry Finger
5f636ea7dd rtl8188eu: Change for loop counter to int to avoid wrap-around
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2022-07-18 08:52:20 -05:00
Larry Finger
e43ffc5f23 rtl8188eu: Fix infinite loop in rtw_get_wps_ie()
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2022-07-16 13:48:04 -05:00
Larry Finger
373d98d270 rtl8188eu: Fix builds for kernel 5.15
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2021-10-28 11:44:11 -05:00
Larry Finger
ac42434b2a rtl8188eu: Fix gcc 10 warnings
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2020-05-16 14:20:37 -05:00
Bastien Nocera
627a577e5c rtl8188eu: Add rtw_led_enable module parameter
Make it possible to disable the LED, as it can be pretty annoying
depending on where it's located.
2020-01-06 21:30:05 +01:00
Larry Finger
c0e2cc7988 rtl8188eu: Fix scheduling while atomic splat
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2018-03-14 11:02:54 -05:00
Larry Finger
1f08a062ad rtl8188eu: Updates for timer changes in kernel 4.15
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2017-12-05 16:03:03 -06:00
Larry Finger
cc3c76275b Merge branch 'master' of http://github.com/lwfinger/rtl8188eu 2017-01-20 20:08:35 -06:00
Larry Finger
324b62c685 rtl8188eu: Fix a possible NUMM dereference
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2017-01-20 20:07:49 -06:00
Larry Finger
b3bfe784a4 rtl8188eu: Guard against pktfile crashes when skb address is NULL
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2017-01-16 15:37:23 -06:00
Larry Finger
f9dbfb74dc rtl8188eu: Remove symbol MAX_RF_PATH_NUMS
This one is always equal to RF_PATH_MAX.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2016-02-13 15:36:13 -06:00
Larry Finger
ea288d8952 rtl8188eu: Fix typo in previous commit
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2015-08-19 09:08:58 -05:00
Larry Finger
b438c94ebf rtl8188eu: Fix crashes due to NULL pointer
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2015-08-19 09:06:28 -05:00
Larry Finger
7379b7fee9 rtl8188eu: Fix BUG: sleeping function called from invalid context
A kmalloc call was made with GFP_KERNEL rather than GFP_ATOMIC

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2015-04-08 14:16:39 -05:00
Larry Finger
8eb572bc42 rtl8188eu: Replace rtw_ieee80211_ht_cap with standard kernel version
As shown in the previous commits, keeping alignment beetween the private header
and the kernel version is a problem. Solve the issue by using the kernel
version.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2015-04-08 14:02:06 -05:00
Larry Finger
f760caeb39 rtl8188eu: Add test for memory allocation failure
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2015-01-26 11:01:33 -06:00
Larry Finger
bb55393afa rtl8188eu: Fix NULL pointer
User hlguo reports crashes due to a NULL pointer dereference. This should fix it.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2015-01-22 22:13:56 -06:00
Larry Finger
e2e51bd6f4 rtl8188eu: Remove empty _rtw_free_sema()
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 15:28:20 -06:00
Larry Finger
890e54b7a7 rtl8188eu: Remove wrapper around init_sema()
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 15:25:08 -06:00
Larry Finger
61690cbca6 rtl8188eu: rtw_get_current_time() is jiffies
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 15:20:06 -06:00
Larry Finger
209e50ad60 rtlwifi: Remove list-handling macros
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 15:06:22 -06:00
Larry Finger
6d3d853360 rtl8188eu: Remove wrapper get_next()
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 11:50:41 -06:00
Larry Finger
567257655f rtl8188eu: Replace LIST_CONTAINOR with container_of
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 10:40:44 -06:00
Larry Finger
7fd86158bf rtl8188eu: Change union recv_frame to struct
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 10:35:48 -06:00
Larry Finger
89efde68f8 rtl8188eu: Remove wrapper around memcmp()
Caution: The wrapper inverts the state.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 09:38:17 -06:00
Larry Finger
24391e61f4 rtl8188eu: Remove wrapper around some kzalloc() calls
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-13 09:08:01 -06:00
Larry Finger
9ad78a5b0d rtl8188eu: Remove wrapper around INIT_LIST_HEAD()
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 23:13:40 -06:00
Larry Finger
609fff0d67 rtl8188eu: Remove wrapper around semaphore 'up'
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 22:51:56 -06:00
Larry Finger
545d963a9e rtl8188eu: Remove wrapper for memset()
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 22:43:35 -06:00
Larry Finger
4e305e82d0 rtl8188eu: Rework handling of BA_para_set
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 22:32:07 -06:00
Larry Finger
26930b0f9f rtl8188eu: Replace RTW_PUT_LE16
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 22:30:01 -06:00
Larry Finger
6ba33b6e48 rtl8188eu: Remove macro RTW_GET_LE16
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 21:55:10 -06:00
Larry Finger
d6aed151f2 rtl8188eu: Simplify handling of LE variables
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 21:50:54 -06:00
Larry Finger
ed2c3ab733 rtl8188eu: Rework endianess
Several of the struct items related to on-air data must be little endian.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-12 12:15:07 -06:00
Larry Finger
bad0b4cde4 rtl8188eu: Remove cases of two or more blank lines
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-01 18:00:05 -06:00
Larry Finger
e91077579f rtl8188eu: Remove _func_enter_ and _func_exit_ statements
Kernel tracing is more effective.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-12-01 16:31:15 -06:00
Larry Finger
849d585656 rtl8188eu: Fix some edit errors from replace spin lock wrappers
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-28 18:42:41 -06:00
Larry Finger
8b76b3b701 rtl8188eu: Convert spin lock macros
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-28 17:37:57 -06:00
Larry Finger
9fe0c17a65 rtl8188eu: Remove wrapper _rtw_spinlock_init
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-28 11:14:29 -06:00
Larry Finger
287f6491f3 rtl8188eu: Part 3 of the upgrades from rtl8188EUS_rtl8189ES_linux_v4.1.8_9499.20131104
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-20 00:12:27 -06:00
Larry Finger
ef77969222 rtl8188eu: More changes from rtl8188EUS_rtl8189ES_linux_v4.1.8_9499.20131104
This one completes the changes for rtw_mlme.c

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-19 18:03:11 -06:00
Larry Finger
c8a380cd16 rtl8188eu: Make updates from rtl8188EUS_rtl8189ES_linux_v4.1.8_9499.20131104
This patch is step 1 of many. This driver has much better sensitivity than
the previous version.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-19 14:32:12 -06:00
Larry Finger
41245153f4 r8188eu: Fix an le16 problem
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-11-13 16:28:55 -06:00
Larry Finger
c2741d0bec rtl8188eu: Fix compilation for kernels older that 2.6.36
These changes will apply at least back to 2.6.32.

From: Stas Sergeev <stsp@list.ru>
Signed-off-by: Stas Sergeev <stsp@list.ru>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2014-02-12 11:05:30 -06:00
Larry Finger
295bb23ffe rtl8188eu: Fix reporting of signal strength and quality
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2013-12-30 21:18:17 -06:00
Larry Finger
91938194fd rtl8188eu: Make this code look exactly like the code in the kernel version
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2013-11-29 16:10:20 -06:00
Larry Finger
19db43ecbd rtl8188eu: Backport kernel version
This driver was added to the kernel with version 3.12. The changes in that
version are now brought back to the GitHub repo. Essentually all of the code
is updated.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2013-10-19 12:45:47 -05:00
Larry Finger
3695d581c6 rtl8188eu: Fix AP problem introduced in commit 954eab3
Two code lines were accidentally deleted in the commit noted in subject.
Restore them.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2013-09-27 12:46:29 -05:00
Larry Finger
66ccf88866 rtl8188eu: Fix smatch warnings in core/rtw_security.c
Smatch shows the following:
  CHECK   /home/finger/rtl8188eu/core/rtw_security.c
/home/finger/rtl8188eu/core/rtw_security.c:2077 rijndaelKeySetupEnc() warn: '4' 4 can't fit into 4611686018427387903 'rk'
/home/finger/rtl8188eu/core/rtw_security.c:2108 rijndaelEncrypt() warn: '8' 8 can't fit into 4611686018427387903 'rk'

These warnings were fixed by removing a number of unused routines.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
2013-09-06 23:09:00 -05:00