Changed the spin_lock in ipa3_release_gsi_channel
to spin_lock_irqsave to avoid getting interrupted
while stop channel is command is executed.
Signed-off-by: Sivakanth Vaka <svaka@codeaurora.org>
This Issue is seen by Enabling CONFIG_DEBUG_ATOMIC_SLEEP=y and boot the
device.To avoid going into kernel panic state,changed the function
calls order of spin_lock() and idr_preload() after calling
kmem_cache_zalloc().Originally, these two functions were called
before calling kmem_cache_zalloc().
Change-Id: I2738548abd4148828e7d9436415c5c4d769680b9
Signed-off-by: Jagadeesh Ponduru <jponduru@codeaurora.org>
Changes done to copy num of rules from user space to
kernel side as earlier only payload was being copied.
Change-Id: I14e15fe0c6746226cc44d224d33c00e809cd69ca
Signed-off-by: Armaan Siddiqui <asiddiqu@codeaurora.org>
There are potential race condition ioctls in
the IPA driver when it copies the actual
arguments from the user-space memory to the
IPA-driver. The fix is to add check on the
2nd copy to make sure the same payload size
is copied to the pre-allocated kernel memory
as during the 1st copy.
Change-Id: I3d31cb11a24e969db4fd1728cf6ab1ce983a75e9
Signed-off-by: Armaan Siddiqui <asiddiqu@codeaurora.org>
The value of `req->filter_spec_ex2_list_len`
is user input via ioctl and it's type is uint32,
so an integer overflow may occur. Which can result
in out of bound access in the following loop. Now
add changes to prevent Integer overflow.
Change-Id: Ia29b9ddc674e5dd3d5baf6623cf0a464c156d8f7
Signed-off-by: Piyush Dhyani <pdhyani@codeaurora.org>
Make changes to populate qmap_id when disabling coalescing.
Change-Id: Iaf0981bd22948b87bb8f9c548fe74e789eaf689c
Signed-off-by: Chaitanya Pratapa <cpratapa@codeaurora.org>
Adding changes to retry with GFP_KENREL flag when memory allocation
fails with GFP_ATOMIC flag. Panic the device if after max retries
also memory allocation fails.
Change-Id: Ic9ad827757de92715be5acc5645b7e860b4bd0e4
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
Fix use-after-free of rt_tbl in __ipa_del_flt_rule
by checking if the rt_tbl is already freed.
Change-Id: I09541f65f474dc42f262c603d99f6bbcbb0ce8ec
Signed-off-by: Goutam Bose <gbose@codeaurora.org>
There is a chance that incoming skb can is NULL in TX direction.
Add proper check to avoid any NULL ptr access issue.
Change-Id: I8bd4524e20ddefb4bd30a3ca4a09b65370b9b4ae
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
In some targets, FnR tethering stats query support
is not present. Add changes to check for support
present or not before query.
Change-Id: I415e019ff0cb01cf09c8ba6cd9fef44ae815c11b
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
1. Disable HOLB for ODL pipe during suspend to avoid dropping the packet
2. Enable HOLB while unsuspend the pipes.
3. Enable drop stats for ODL pipe.
Change-Id: Id0a5871ebe4a0925c60dea39f197af9e1892d05e
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org
Add changes to check if rmnet_ctl support present
or not.
Change-Id: Ic99811ffcedbe474eeb80637e61901b55e448372
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
Quota indication is not yet supported on WLAN Iface.
Add check to return if the request comes for WLAN Iface.
Change-Id: Ib183d0ed21a87f6f759af8d4e5bc4093dffd9374
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
In some cases GP_INT1 interrupt not receiving even GSI FW send the
interrupt. In those cases cases reading the flow control command return
code to check completion.
Change-Id: I329550ab94af9caac870c6050761d3701f0517cd
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Caller function passing the constant value converting to int
pointer will cause the problem. Adding changes to use right casting
to avoid compilation issue.
Change-Id: I8440f16e4e53e0788c2d1eae35f4b6ebf3178ead
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Updated the pointer type cast with valid data type.
Change-Id: Ibd1f87eab0aac78551f307534508cfa84eae988a
Signed-off-by: Raghavendar rao l <rlomte@codeaurora.org>
With u16 variable not fitting the higher ring size. So
adding changes to change ring type to u32.
Change-Id: I8443508fee8eb5180d5300611bc01bc4df68bcbd
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
With u16 variable not fitting the higher ring size. So
adding changes to chnage ring type to u32.
Change-Id: Ib16e2426071c642f7e25beb022661dfa914cd0c4
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
For some targets lowlat support is not present.
Add changes to check if low lat support is present
or not. Also for 32-bit targets observed count shift error.
Added proper checks to overcome the issue.
Change-Id: Iab3b7d460b48ce8ff4e98da297eb2e7b69e3db13
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>