Jes Sorensen [Tue, 15 Sep 2015 20:32:49 +0000 (16:32 -0400)]
staging: rtl8723au: Clean up getPowerBase()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jes Sorensen [Tue, 15 Sep 2015 20:32:48 +0000 (16:32 -0400)]
staging: rtl8723au: TurboScanOff is always true
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jes Sorensen [Tue, 15 Sep 2015 20:32:47 +0000 (16:32 -0400)]
staging: rtl8723au: Tidy up SetTxPowerLevel8723A()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jes Sorensen [Tue, 15 Sep 2015 20:32:46 +0000 (16:32 -0400)]
staging: rtl8723au: Fold getTxPowerIndex() into PHY_SetTxPowerLevel8723A()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jes Sorensen [Tue, 15 Sep 2015 20:32:45 +0000 (16:32 -0400)]
staging: rtl8723au: Eliminate dummy ccxPowerIndexCheck()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jes Sorensen [Tue, 15 Sep 2015 20:32:44 +0000 (16:32 -0400)]
staging: rtl8723au: Simplify eeprom content checking
This eliminates the ugly Hal_EEValueCheck() function
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:26 +0000 (18:53 +0900)]
staging: wicl1000: remove function pointer wlan_handle_rx_que
The function pointer wlan_handle_rx_que is not called anywhere. Delete
wlan_handle_rx_que and it's assignment code.
But the function wilc_wlan_handle_rxq in assignment code is used. So leave it.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Wed, 16 Sep 2015 11:11:27 +0000 (20:11 +0900)]
staging: wilc1000: replace INLINE with static inline
INLINE macro is defined as static __inline so that it is replaced by
static inline.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Wed, 16 Sep 2015 11:11:26 +0000 (20:11 +0900)]
staging: wilc1000: wilc_wlan.c: use BIT(x) macro
Remove bit shift macro that is custom defined, then replace BIT(x)
macro.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:27 +0000 (18:53 +0900)]
staging: wilc1000: remove unused variable rxq_thread
The rxq_thread never runs since it's kthread_run code was delete in a previous
patch. Remove kthread_run and it's related codes.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:25 +0000 (18:53 +0900)]
staging: wilc1000: remove unused semaphore and it's related codes
Variable rxq_event, rxq_wait_event and rxq_wait have the same pointer.
nwi->os_context.rxq_wait_event = (void *)&g_linux_wlan->rxq_event;
g_wlan.rxq_wait = inp->os_context.rxq_wait_event;
They are never aquired(down) since down function was only called in
linux_wlan_rxq_task which was deleted in a previous patch.
So delete variable rxq_event, rxq_wait_event, rxq_wait and it's related codes.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:24 +0000 (18:53 +0900)]
staging: wilc1000: remove variable rxq_thread_started
rxq_thread_started is initiallized but never used in the driver. Remove
the variable and init code line.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:23 +0000 (18:53 +0900)]
staging: wilc1000: remove function linux_wlan_rxq_task
linux_wlan_rxq_task is not used in the driver. Just remove it.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:22 +0000 (18:53 +0900)]
staging: wilc1000: remove define TCP_ENHANCEMENTS and it's related code
TCP_ENHANCEMENTS is always in use. Remove define TCP_ENHANCEMENTS, ifdef line,
ifndef line and codes inside ifndef.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:21 +0000 (18:53 +0900)]
staging: wilc1000: remove define WILC_P2P and ifdef line
WILC_P2P is always used in the driver. So delete define WILC_P2P and ifdef line.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 09:53:20 +0000 (18:53 +0900)]
staging: wilc1000: remove define WILC_AP_EXTERNAL_MLME and ifdef line
This driver use WILC_AP_EXTERNAL_MLME define always. Delete define
WILC_AP_EXTERNAL_MLME and ifdef line.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Wed, 16 Sep 2015 09:36:04 +0000 (18:36 +0900)]
staging: wilc1000: remove wilc_errorsupport.h
This patch removes the wilc_errorsupport.h which is not used anymore and
also deletes #include "wilc_errorsupport.h" from the source code.
In addition, adds linux_wlan_common.h file in the wilc_msgqueue.c file
in order to use PRINT macros defined in the linux_wlan_common.h file.
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Wed, 16 Sep 2015 09:36:03 +0000 (18:36 +0900)]
staging: wilc1000: replace wilc error types with the generic error types
This patch replaces the error types defined by wilc driver with the
generic error types provided by the Linux kernel.
- WILC_SUCCESS 0
- WILC_FAIL -EFAULT
- WILC_BUSY -EBUSY
- WILC_INVALID_ARGUMENT -EINVAL
- WILC_INVALID_STATE -EINVAL
- WILC_BUFFER_OVERFLOW -EOVERFLOW
- WILC_NULL_PTR -EFAULT
- WILC_TIMEOUT -ETIMEDOUT
- WILC_NOT_FOUND -ENOENT
- WILC_NO_MEM -ENOMEM
After then removes all wilc definitions.
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Wed, 16 Sep 2015 09:36:02 +0000 (18:36 +0900)]
staging: wilc1000: remove definitions unused
Remove the definitions which are not used anywhere.
- WILC_ALREADY_EXSIT
- WILC_EMPTY
- WILC_FULL
- WILC_CANCELED
- WILC_INVALID_FILE
- WILC_UNSUPPORTED_VERSION
- WILC_FILE_EOF
Remove the definition which is not used anymore.
- WILC_CATCH
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Wed, 16 Sep 2015 09:36:01 +0000 (18:36 +0900)]
staging: wilc1000: remove the macro WILC_ERRORREPORT
This patch removes the macro WILC_ERRORREPORT which is not used
anymore by replacing it with the plain statements.
The compiler complains the build warnings in some functions for WILC_CATCH and
ERRORHANDLER as unused definitions. So, this patch also removes WILC_CATCH and
ERRORHANDLER from some of functions.
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Wed, 16 Sep 2015 09:36:00 +0000 (18:36 +0900)]
staging: wilc1000: remove the macro WILC_ERRORCHECK
This patch removes the macro WILC_ERRORCHECK which is not used
anymore by replacing it with the plain statements.
This patch also removes the WILC_CATCH macros from some of functions not
to make the build warnings.
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Wed, 16 Sep 2015 09:35:59 +0000 (18:35 +0900)]
staging: wilc1000: remove a macro WILC_NULLCHECK
This patch replaces WILC_NULLCHECK with the plain statements and then removes
the macro WILC_NULLCHECK in wilc_errorsupport.h which is not used anymore.
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:55 +0000 (10:43 +0900)]
staging: wilc1000: remove unused variable g_flushing_in_progress
g_flushing_in_progress is never used so just delete it.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:54 +0000 (10:43 +0900)]
staging: wilc1000: coreconfigurator.h: remove unused defines
The define MAX_PACKET_BUFF_SIZE and STATUS_MSG_LEN is not used in the driver.
Delete two defines.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:53 +0000 (10:43 +0900)]
staging: wilc1000: delete function declaration SendRawPacket
SendRawpacket is declared but not implemented. It is not used also.
So just delete it.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:52 +0000 (10:43 +0900)]
staging: wilc1000: remove unused variables
Variable g_num_total_switches is never used so just remove it.
gastrWIDs is also not used because g_num_total_switches is deleted.
Remove gastrWIDs also.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:51 +0000 (10:43 +0900)]
staging: wilc1000: delete unused global variables.
gstrConfigPktInfo, SemHandleSendPkt and SemHandlePktResp are never used in
the drivers. So just delete the variables and it's related code.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:50 +0000 (10:43 +0900)]
staging: wilc1000: remove unnecessary extern function declaration
Function NetworkInfoReceived, GnrlAsyncInfoReceived and
host_int_ScanCompleteReceived are declared in the header file already.
Just removes the declaration and comments.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:49 +0000 (10:43 +0900)]
staging: wilc1000: remove unused defines
This patch removes follwing unused defines.
MAX_CFG_PKTLEN
MSG_HEADER_LEN
QUERY_MSG_TYPE
WRITE_MSG_TYPE
RESP_MSG_TYPE
WRITE_RESP_SUCCESS
INVALID
MAC_ADDR_LEN
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:48 +0000 (10:43 +0900)]
staging: wilc1000: remove unnecessary define FIVE_GHZ_BAND
wilc1000 driver does not support five Ghz band. Remove FIVE_GHZ_BAND and
it's related code.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Glen Lee [Wed, 16 Sep 2015 01:43:47 +0000 (10:43 +0900)]
staging: wilc1000: remove useless define PHY_802_11n
The define PHY_802_11n is useless because wilc1000 support 802.11n as always.
Remove PHY_802_11n and it related code.
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tony Cho [Wed, 16 Sep 2015 01:43:46 +0000 (10:43 +0900)]
staging: wilc1000: remove PANDA_BOARD
This patch removes one of the platform dependencies, PANDA_BOARD from the
driver codes. The device tree will provide the platform dependencies in
the future commits.
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Shraddha Barke [Tue, 15 Sep 2015 08:58:18 +0000 (14:28 +0530)]
Staging: most: aim-network: Replace pr_info with netdev_info
Use netdev_* family of macros when there is reference to a network
device. dev->name is removed as netdev_info will print the device
name
Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Juston Li [Thu, 17 Sep 2015 02:51:56 +0000 (19:51 -0700)]
staging/lustre: use __noreturn for lbug_with_loc
fixes sparse error:
drivers/staging/lustre/lustre/libcfs/linux/linux-debug.c:149:6: error:
symbol 'lbug_with_loc'redeclared with different type (originally declared at
drivers/staging/lustre/lustre/libcfs/linux/../../../include/linux/libcfs/libcfs_private.h:82)
- different modifiers
Use the __noreturn macro instead of __attribute__((noreturn))
The macro is exactly that but its usage seems more common and
it is bit more readable.
Signed-off-by: Juston Li <juston.h.li@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Anjali Menon [Wed, 16 Sep 2015 11:42:21 +0000 (17:12 +0530)]
staging: lustre: lnet: lnet: Removed a space
Removed a space to fix the following coding style warning detected by
checkpatch:
WARNING: space prohibited between function name and open parenthesis '('
Signed-off-by: Anjali Menon <cse.anjalimenon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:10 +0000 (12:27 -0400)]
staging/lustre: Remove server defines from lustre_disk.h
Take initial stab at removing server-disk related defines that
client does not need.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:09 +0000 (12:27 -0400)]
staging/lustre: remove IS_MDS|IS_OST|IS_MGS defines and users
These could only happen on the server, so they make no sense
on the client.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:08 +0000 (12:27 -0400)]
staging/lustre: Remove IS_SERVER and all users
Since the client can never be server, this is all dead code.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:07 +0000 (12:27 -0400)]
staging/lustre: remove obd_memory stats counter
Now that we no longer track allocated memory, remove
obd_memory statistics counter and all references to it everywhere
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:06 +0000 (12:27 -0400)]
staging/lustre: Remove lustre used memory tracking framework
Lustre memory allocation framework has a feature to track amount
of allocated memory, but since it's not being used consistently anymore
and is on the way out in general, just remove it.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:05 +0000 (12:27 -0400)]
staging/lustre: Remove memory allocation fault injection framework
Lustre memory allocation wrappers also included a fault injection
framework that's totally redundant, since in-kernel offering is
actually superior to what we had.
So let's remove it.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:04 +0000 (12:27 -0400)]
staging/lustre: Remove unused OBD_ALLOC* and OBD_FREE macros
This removes now unused OBD_ALLOC, OBD_ALLOC_GFP, OBD_ALLOC_PTR,
OBD_ALLOC_LARGE and supporting infrastructure.
Also OBD_FREE, OBD_FREE_PTR, OBD_FREE_LARGE and supporting infrastructure.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:03 +0000 (12:27 -0400)]
staging/lustre: Remove stray bit of userland utils code
The UTILS are userland and I see it's causing confusion
with things beging already converted to kmalloc,
so just remove it.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:02 +0000 (12:27 -0400)]
staging/lustre: Replace last users of OBD_ALLOC/FREE_LARGE
OBD_ALLOC_LARGE is now replaced with libcfs_kvzalloc and
OBD_FREE_LARGE is now replaced with kvfree.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:01 +0000 (12:27 -0400)]
staging/lustre/ptlrpc: Replace OBD_FREE_PTR with kfree
Part of effort of getting rid of custom Lustre alloc/free macros
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:27:00 +0000 (12:27 -0400)]
staging/lustre: Convert lustre_cfg_new/free to use kzalloc/kfree
Part of effort of getting rid of custom Lustre allocation macros
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:59 +0000 (12:26 -0400)]
staging/lustre/fld: Replace OBD_ALLOC_GFP with kzalloc
Part of effort to get rid of custom Lustre allocation macros.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:58 +0000 (12:26 -0400)]
staging/lustre: Remove references to OBD_ALLOC/FREE* in comments
Since everything is now supposed to use regular kernel alloc and
free functions.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:57 +0000 (12:26 -0400)]
staging/lustre/obdclass: replace OBD_ALLOC_GFP with kzalloc
Part of getting rid of custom Lustre allocation macros.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:56 +0000 (12:26 -0400)]
staging/lustre/llite: Get rid of OBD_ALLOC/FREE_PTR
The remaining users in ll_open_cleanup and obd_mod_alloc
are converted to regular kzalloc/kfree.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:55 +0000 (12:26 -0400)]
staging/lustre: Remove users of OBD_ALLOC/FREE_PTR lu_object.h
These are converted to regular kzalloc/kfree calls.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:54 +0000 (12:26 -0400)]
staging/lustre: Remove unused OBD_CPT_ALLOC* macros
OBD_CPT_ALLOC and friends are no longer used, so remove them.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:53 +0000 (12:26 -0400)]
staging/lustre: Remove unused OBD_VMALLOC
These macros are not used anymore, so let's remove them,
also __OBD_VMALLOC_VEROBSE and OBD_CPT_VMALLOC
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Wed, 16 Sep 2015 16:26:52 +0000 (12:26 -0400)]
staging/lustre: Remove OBD_CPT_ALLOC_LARGE
Remove OBD_CPT_ALLOC_LARGE define and convert the only user to
libcfs_kvzalloc_cpt.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:28 +0000 (14:06 +0900)]
staging: wilc1000: wilc_wfi_cfgoperations.h: align defines
This patch fix alignment of some defines in wilc_wfi_cfgoperations.h
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:27 +0000 (14:06 +0900)]
staging: wilc1000: remove if defined codes of FORCE_P2P_CLIENT
This patch removes if defined codes of FORCE_P2P_CLIENT.
This macro is deleted because it it commented out.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:26 +0000 (14:06 +0900)]
staging: wilc1000: remove FORCE_P2P_CLIENT
This patch removes FORCE_P2P_CLIENT that is commented.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:25 +0000 (14:06 +0900)]
staging: wilc1000: remove if defined codes of USE_SUPPLICANT_GO_INTENT
This patch removes if defined codes of USE_SUPPLICANT_GO_INTENT.
This macro is deleted because it is commented out.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:24 +0000 (14:06 +0900)]
staging: wilc1000: remove USE_SUPPLICANT_GO_INTENT
This patch removes USE_SUPPLICANT_GO_INTENT macro that is commented.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:23 +0000 (14:06 +0900)]
staging: wilc1000: fix alignment of enum
This patch fix alignment of enum.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:22 +0000 (14:06 +0900)]
staging: wilc1000: fix alignment of defines
This patch fix alignment of defines.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:21 +0000 (14:06 +0900)]
staging: wilc1000: remove unused defines
The macros are not used anywhere in this driver, so just delete it.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:20 +0000 (14:06 +0900)]
staging: wilc1000: remove bit shift macro that is custom defined
This patch remove bit shift macro that is custom defined, then it is
replaced BIT(x) macro.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:19 +0000 (14:06 +0900)]
staging: wilc1000: use BIT macro
This patch replaces bit shift with BIT(x) macro.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:18 +0000 (14:06 +0900)]
staging: wilc1000: remove useless extern declarations
This patch removes useless extern declarations. This function is not
existed in the driver.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:17 +0000 (14:06 +0900)]
staging: wilc1000: remove commented codes
This patch removes commented codes.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:16 +0000 (14:06 +0900)]
staging: wilc1000: use u32 instead of uint32_t
This patch replaces uint32_t with u32 that is a preferred kernel type.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:15 +0000 (14:06 +0900)]
staging: wilc1000: use u16 instead of uint16_t
This patch replaces uint16_t with u16 that is preferred kernel type.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:14 +0000 (14:06 +0900)]
staging: wilc1000: use u8 instead of uint8_t
This patch replaces uint8_t with u8 that is a preferred kernel type.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:13 +0000 (14:06 +0900)]
staging: wilc1000: rename WILC_WFI_priv
This patch replaces WILC_WFI_priv with wilc_priv to avoid CamelCase.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:12 +0000 (14:06 +0900)]
staging: wilc1000: rename WILC_WFI_cfg80211_ops
This patch replaces WILC_WFI_cfg80211_ops with wilc_cfg80211_ops to
avoid CamelCase.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chaehyun Lim [Tue, 15 Sep 2015 05:06:11 +0000 (14:06 +0900)]
staging: wilc1000: remove duplicated include
wilc_wfi_cfgoperations.h and linux_wlan_common.h are included as
duplicated in linux_wlan.c.
Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Nicolas Joseph [Tue, 15 Sep 2015 09:35:20 +0000 (11:35 +0200)]
staging/rtl8192u: remove unused function
Remove unused function N_DBPSOfRate. This function was only used by
function ComputeTxTime that was removed in the previous
commit
742728f97a99 ("staging: rtl8192u: remove unused function.")
Signed-off-by: Nicolas Joseph <nicolas.joseph@homecomputing.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Sudip Mukherjee [Tue, 15 Sep 2015 11:52:28 +0000 (17:22 +0530)]
staging: rtl8192e: fix memory leak
If the size of the firmware is not as expected then we are jumping to the
error path but we missed releasing the firmware.
Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chandra S Gorentla [Tue, 15 Sep 2015 12:39:51 +0000 (18:09 +0530)]
drivers: staging: wilc1000: Add check for SPI availability
NULL pointer deference is observed in the wilc1000.ko module
with bus type SPI and when SPI is not ready.
Signed-off-by: Chandra S Gorentla <csgorentla@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Leo Kim [Tue, 15 Sep 2015 02:53:35 +0000 (11:53 +0900)]
staging: wilc1000: remove definition WILC_IS_ERR
This patch removes the definition WILC_IS_ERR which is not used anymore.
Signed-off-by: Leo Kim <leo.kim@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Dan Carpenter [Tue, 15 Sep 2015 10:35:25 +0000 (13:35 +0300)]
IB/hfi1: fix copy_to/from_user() error handling
copy_to/from_user() returns the number of bytes which we were not able
to copy. It doesn't return an error code.
Also a couple places had a printk() on error and I removed that because
people can take advantage of it to fill /var/log/messages with spam.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Mike Marciniszyn <infinipath@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Julia Lawall [Sun, 13 Sep 2015 12:15:04 +0000 (14:15 +0200)]
hfi1: drop null test before destroy functions
Remove unneeded NULL test.
The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@@ expression x; @@
-if (x != NULL)
\(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
// </smpl>
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Cc: Mike Marciniszyn <infinipath@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Mike Dupuis [Mon, 14 Sep 2015 06:42:58 +0000 (22:42 -0800)]
Staging: rlt8192u: Remove spaces at the start of lines
This is a patch to remove spaces at the start of lines in
ieee80211_softmac_wx.c.
Signed-off-by: Mike Dupuis <mike.dupuis.0@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Mike Dupuis [Mon, 14 Sep 2015 06:42:53 +0000 (22:42 -0800)]
Staging: rtl8192u: do not use C99 // comments
This is a patch to convert C99-style comments to C89-style comments in
ieee80211_softmac_wx.c.
Signed-off-by: Mike Dupuis <mike.dupuis.0@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Mike Dupuis [Mon, 14 Sep 2015 06:42:49 +0000 (22:42 -0800)]
Staging: rtl8192u: suspect code indent for conditional statment
This is a patch to correct an improperly indented block of code in
ieee80211_softmac_wx.c
Signed-off-by: Mike Dupuis <mike.dupuis.0@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Mike Dupuis [Mon, 14 Sep 2015 06:42:44 +0000 (22:42 -0800)]
Staging: rtl8192u: space required before open parentheses
This is a patch to add spaces where required before open parentheses in
ieee80211_softmac_wx.c
Signed-off-by: Mike Dupuis <mike.dupuis.0@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ronit Halder [Mon, 14 Sep 2015 05:33:34 +0000 (11:03 +0530)]
Staging: wilc1000: Use NULL instead of zero
This patch fixes the warning generated by sparse
"Using plain integer as NULL pointer" by using NULL
instead of zero.
Signed-off-by: Ronit halder <ronit.crj@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Dan Carpenter [Tue, 15 Sep 2015 06:54:33 +0000 (09:54 +0300)]
staging: wilc1000: off by one in get_handler_from_id()
The > should be >= here or we read beyond the end of the array.
Fixes: d42ab0838d04 ('staging: wilc1000: use id value as argument')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Lucas Georges [Mon, 14 Sep 2015 14:52:35 +0000 (16:52 +0200)]
staging: ft1000: code style cleanup
There was a stray '*' in a comment block.
Signed-off-by: Lucas Georges <lucas.georges@outlook.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Sakshi Vaid [Mon, 14 Sep 2015 15:29:24 +0000 (20:59 +0530)]
Staging: lustre: lustre: lov: lov_dev.c: Added missing blank line
line 158: WARNING: Missing a blank line after declarations
line 183: WARNING: Missing a blank line after declarations
Added a missing blank line after declartions.
Signed-off-by: Sakshi Vaid <sakshivaid95@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Olaf Weber [Mon, 14 Sep 2015 22:41:35 +0000 (18:41 -0400)]
staging/lustre/ptlrpc: make ptlrpcd threads cpt-aware
On NUMA systems, the placement of worker threads relative to the
memory they use greatly affects performance. The CPT mechanism can be
used to constrain a number of Lustre thread types, and this change
makes it possible to configure the placement of ptlrpcd threads in a
similar manner.
To simplify the code changes, the global structures used to manage
ptlrpcd threads are changed to one per CPT. In particular this means
there will be one ptlrpcd recovery thread per CPT.
To prevent ptlrpcd threads from wandering all over the system, all
ptlrpcd thread are bound to a CPT. Note that some CPT configuration
is always created, but the defaults are not likely to be correct for
a NUMA system. After discussing the options with Liang Zhen we
decided that we would not bind ptlrpcd threads to specific CPUs,
and rather trust the kernel scheduler to migrate ptlrpcd threads.
With all ptlrpcd threads bound to a CPT, but not to specific CPUs,
the load policy mechanism can be radically simplified:
- PDL_POLICY_LOCAL and PDL_POLICY_ROUND are currently identical.
- PDL_POLICY_ROUND, if fully implemented, would cost us the locality
we are trying to achieve, so most or all calls using this policy
would have to be changed to PDL_POLICY_LOCAL.
- PDL_POLICY_PREFERRED is not used, and cannot be implemented without
binding ptlrpcd threads to individual CPUs.
- PDL_POLICY_SAME is rarely used, and cannot be implemented without
binding ptlrpcd threads to individual CPUs.
The partner mechanism is also updated, because now all ptlrpcd
threads are "bound" threads. The only difference between the various
bind policies, PDB_POLICY_NONE, PDB_POLICY_FULL, PDB_POLICY_PAIR, and
PDB_POLICY_NEIGHBOR, is the number of partner threads. The bind
policy is replaced with a tunable that directly specifies the size of
the groups of ptlrpcd partner threads.
Ensure that the ptlrpc_request_set for a ptlrpcd thread is created on
the same CPT that the thread will work on. When threads are bound to
specific nodes and/or CPUs in a NUMA system, it pays to ensure that
the datastructures used by these threads are also on the same node.
Visible changes:
* ptlrpcd thread names include the CPT number, for example
"ptlrpcd_02_07". In this case the "07" is relative to the CPT, and
not a CPU number.
Tunables added:
* ptlrpcd_cpts (string): A CPT string describing the CPU partitions
that ptlrpcd threads should run on. Used to make ptlrpcd threads
run on a subset of all CPTs.
* ptlrpcd_per_cpt_max (int): The maximum number of ptlrpcd threads
to run in a CPT.
* ptlrpcd_partner_group_size (int): The desired number of threads
in each ptlrpcd partner thread group. Default is 2, corresponding
to the old PDB_POLICY_PAIR. A negative value makes all ptlrpcd
threads in a CPT partners of each other.
Tunables obsoleted:
* max_ptlrpcds: The new ptlrcpd_per_cpt_max can be used to obtain the
same effect.
* ptlrpcd_bind_policy: The new ptlrpcd_partner_group_size can be used
to obtain the same effect.
Internal interface changes:
* pdb_policy_t and related code have been removed. Groups of partner
ptlrpcd threads are still created, and all threads in a partner
group are bound on the same CPT. The ptlrpcd threads bound to a
CPT are typically divided into several partner groups. The partner
groups on a CPT all have an equal number of ptlrpcd threads.
* pdl_policy_t and related code have been removed. Since ptlrpcd
threads are not bound to a specific CPU, all the code that avoids
scheduling on the current CPU (or attempts to do so) has been
removed as non-functional. A simplified form of PDL_POLICY_LOCAL
is kept as the only load policy.
* LIOD_BIND and related code have been removed. All ptlrpcd threads
are now bound to a CPT, and no additional binding policy is
implemented.
* ptlrpc_prep_set(): Changed to allocate a ptlrpc_request_set
on the current CPT.
* ptlrpcd(): If an error is encountered before entering the main loop
store the error in pc_error before exiting.
* ptlrpcd_start(): Check pc_error to verify that the ptlrpcd thread
has successfully entered its main loop.
* ptlrpcd_init(): Initialize the struct ptlrpcd_ctl for all threads
for a CPT before starting any of them. This closes a race during
startup where a partner thread could reference a non-initialized
struct ptlrpcd_ctl.
Signed-off-by: Olaf Weber <olaf@sgi.com>
Reviewed-on: http://review.whamcloud.com/13972
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6325
Reviewed-by: Grégoire Pichon <gregoire.pichon@bull.net>
Reviewed-by: Stephen Champion <schamp@sgi.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
James Simmons [Mon, 14 Sep 2015 22:41:34 +0000 (18:41 -0400)]
staging/lustre/libcfs: remove unused cfs_timer_done
Remove the cfs_timer_done function in the libcfs
kernel module since it is not used anywhere.
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/13917
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6245
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Liang Zhen [Mon, 14 Sep 2015 22:41:33 +0000 (18:41 -0400)]
staging/lustre/o2iblnd: leak cmid in kiblnd_dev_need_failover
cmid created by kiblnd_dev_need_failover should always be destroyed,
however it is not the case in current implementation and we will leak
cmid when this function detected a device failover.
Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-on: http://review.whamcloud.com/14603
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6480
Reviewed-by: Isaac Huang <he.huang@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Li Xi [Mon, 14 Sep 2015 22:41:32 +0000 (18:41 -0400)]
staging/lustre/osc: use global osc_rq_pool to reduce memory usage
The per-osc request pools consume a lot of memory if there are
hundreds of OSCs on one client. This will be a critical problem
if the client doesn't have sufficient memory for both OSCs and
applications.
This patch replaces per-osc request pools with a global pool
osc_rq_pool. The total memory usage is 5MB by default. And it
can be set by a module parameter of OSC:
"options osc osc_reqpool_mem_max=POOL_SIZE". The unit of POOL_SIZE
is MB. If cl_max_rpcs_in_flight is the same for all OSCs, the
memory usage of the OSC pool can be calculated as:
Min(POOL_SIZE * 1M,
(cl_max_rpcs_in_flight + 2) * OSC number * OST_MAXREQSIZE)
Also, this patch changes the allocation logic of OSC write requests.
The allocation from osc_rq_pool will only be tried after normal
allocation failed.
Signed-off-by: Wu Libin <lwu@ddn.com>
Signed-off-by: Wang Shilong <wshilong@ddn.com>
Signed-off-by: Li Xi <lixi@ddn.com>
Reviewed-on: http://review.whamcloud.com/15422
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6770
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ben Evans [Mon, 14 Sep 2015 22:41:31 +0000 (18:41 -0400)]
staging/lustre: Remove unused MAY_ constants
Remove unused MAY_ constants from lustre_idl.h
Signed-off-by: Ben Evans <bevans@cray.com>
Reviewed-on: http://review.whamcloud.com/15398
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6450
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ann Koehler [Mon, 14 Sep 2015 22:41:30 +0000 (18:41 -0400)]
staging/lustre/obdclass: Eliminate hash bucket scans in lu_cache_shrink
The lu_cache_shrink slab shrinker is too slow, accounting for > 90% of
the time spent in shrink_slab when allocating huge pages. Most of its
time is spent iterating over the buckets in each site's object hash
table to compute the number of freeable objects. This iteration is
eliminated by adding an lru length count to the lu_site struct. A
percpu counter is used to maintain the lru length, so that the
lu_site does not need to be locked when an object is accessed through
the hash table. A counter is updated whenever an object is added to
or deleted from any of the hash table buckets. The number of freeable
objects is the sum of the counter values across all cpus.
Signed-off-by: Ann Koehler <amk@cray.com>
Reviewed-on: http://review.whamcloud.com/14066
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6365
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Andrew Perepechko [Mon, 14 Sep 2015 22:41:29 +0000 (18:41 -0400)]
staging/lustre/llite: ASSERTION( atomic_read(&d->ld_ref) == 0 ) failed
ll_iget_for_nfs() can call unbalanced iput() causing memory
leaks. This patch removes this iput() call.
Also, avoid unhashing disconnected dentries in
d_lustre_invalidate(), which is another source of memory
leaks.
One of the symptoms of the leak is the following crash pattern:
LustreError: 14812:0:(lu_object.c:1251:lu_device_fini())
ASSERTION( atomic_read(&d->ld_ref) == 0 ) failed: Refcount is 1
LustreError: 14812:0:(lu_object.c:1251:lu_device_fini()) LBUG
Pid: 14812, comm: umount
Call Trace:
[<
ffffffffa11bc895>] libcfs_debug_dumpstack+0x55/0x80 [libcfs]
[<
ffffffffa11bce97>] lbug_with_loc+0x47/0xb0 [libcfs]
[<
ffffffffa1458a48>] lu_device_fini+0xb8/0xc0 [obdclass]
[<
ffffffffa08e9ab2>] lovsub_device_free+0x52/0x220 [lov]
[<
ffffffffa145c64e>] lu_stack_fini+0x7e/0xc0 [obdclass]
[<
ffffffffa146356e>] cl_stack_fini+0xe/0x10 [obdclass]
[<
ffffffffa08bc1a8>] lov_device_fini+0x58/0x120 [lov]
[<
ffffffffa145c619>] lu_stack_fini+0x49/0xc0 [obdclass]
[<
ffffffffa146356e>] cl_stack_fini+0xe/0x10 [obdclass]
[<
ffffffffa0e1279d>] cl_sb_fini+0x6d/0x190 [lustre]
[<
ffffffffa0dd34bc>] ll_put_super+0x1bc/0x11e0 [lustre]
[<
ffffffff811cd0f2>] ? fsnotify_clear_marks_by_inode+0x32/0xf0
[<
ffffffff811a59df>] ? destroy_inode+0x2f/0x60
[<
ffffffff811a5eac>] ? dispose_list+0xfc/0x120
[<
ffffffff811a62a6>] ? invalidate_inodes+0xf6/0x190
[<
ffffffff8118b35b>] generic_shutdown_super+0x5b/0xe0
[<
ffffffff8118b446>] kill_anon_super+0x16/0x60
[<
ffffffffa144e7ba>] lustre_kill_super+0x4a/0x60 [obdclass]
[<
ffffffff8118bbe7>] deactivate_super+0x57/0x80
[<
ffffffff811aabef>] mntput_no_expire+0xbf/0x110
[<
ffffffff811ab73b>] sys_umount+0x7b/0x3a0
[<
ffffffff8100b072>] system_call_fastpath+0x16/0x1b
Signed-off-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-on: http://review.whamcloud.com/15480
Xyratex-bug-id: MRP-2414
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6794
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Isaac Huang [Mon, 14 Sep 2015 22:41:28 +0000 (18:41 -0400)]
staging/lustre/o2iblnd: wrong uses of kib_tx_t::tx_nfrags
The kib_tx_t::tx_nfrags field is the # entries in
the kib_tx_t::tx_frags array, rather than # DMA
mapped entries. So kiblnd_send/kiblnd_recv should
use kib_rdma_desc_t::rd_nfrags instead.
Signed-off-by: Isaac Huang <he.huang@intel.com>
Reviewed-on: http://review.whamcloud.com/12857
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5956
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Liang Zhen [Mon, 14 Sep 2015 22:41:27 +0000 (18:41 -0400)]
staging/lustre/lnet: fix deadloop in ksocknal_push
ksocknal_push() should break the loop if it can't find matching peer
Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-4423
Reviewed-on: http://review.whamcloud.com/10128
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Isaac Huang <he.huang@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Niu Yawei [Mon, 14 Sep 2015 22:41:26 +0000 (18:41 -0400)]
staging/lustre/libcfs: minor fix in cfs_hash_for_each_relax()
cfs_hash_for_each_relax() should break iteration when callback
returns non-zero value.
Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-on: http://review.whamcloud.com/14927
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6636
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Hiroya Nozaki [Mon, 14 Sep 2015 22:41:25 +0000 (18:41 -0400)]
staging/lustre/osc: LBUG in osc_lru_reclaim
LASSERT touches cl_client_cache->ccc_lru without any protection.
So this patch the LASSERT moves to the section protected by
cl_client_cache->ccc_lru_lock
Signed-off-by: Hiroya Nozaki <nozaki.hiroya@jp.fujitsu.com>
Reviewed-on: http://review.whamcloud.com/14901
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6624
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Liang Zhen [Mon, 14 Sep 2015 22:41:24 +0000 (18:41 -0400)]
staging/lustre/o2iblnd: connection refcount fix for kiblnd_post_rx
kiblnd_post_rx() can't refer to rx::rx_conn anymore after
ib_post_recv() because this rx can be polled out by another thread
which may drop this rx and destroy rx::rx_conn.
This patch fixes this issue by taking an extra refcount on connection
before calling ib_post_recv().
Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-on: http://review.whamcloud.com/12852
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5678
Reviewed-by: Isaac Huang <he.huang@intel.com>
Reviewed-by: Amir Shehata <amir.shehata@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Niu Yawei [Mon, 14 Sep 2015 22:41:23 +0000 (18:41 -0400)]
staging/lustre/llite: deny non-root user for changelog operations
To avoid potential security problems, non-privileged users should
have no permission to run 'lfs changelog' & 'lfs changelog_clear'.
Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-on: http://review.whamcloud.com/14280
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6415
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Mon, 14 Sep 2015 22:41:22 +0000 (18:41 -0400)]
staging/lustre/lmv: fix potential null pointer dereference
In lmv_disconnect_mdc do procfs removal only if we actually know the name.
Reviewed-on: http://review.whamcloud.com/14605
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6517
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>