Fix regression introduced by commit <29ef8a53542a>. After it writing
AT commands to /dev/GCT-ATM0 is unsuccessful (no echo, no response)
and dmesg show "gdmtty: invalid payload : 1 16 f011".
Before that commit value of dummy_cnt was only a padding size. After using
ALIGN() this value is increased by its first argument. So the following
usage of this variable needs correction.
Signed-off-by: Sławomir Demeszko <s.demeszko@wireless-instruments.com>
Cc: stable <stable@vger.kernel.org> # 3.14+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch replace pr_err/pr_info with dev_err/dev_info, when
appropriate device structure is found.
Issue found and resolved using the following Coccinelle script.
pr_err/dev_err was substituted with pr_info/dev_info in the later case.
@r exists@
identifier f, s, i;
position p;
@@
f(...,struct s *i,...) {
<+...
when != i == NULL
pr_err@p(...);
...+>
}
@rr@
identifier r.s, s2, fld;
@@
struct s {
...
struct s2 *fld;
...
};
@rrr@
identifier rr.s2, fld2;
@@
struct s2 {
...
struct device fld2;
...
};
@@
identifier r.i, r.s, rr.fld, rrr.fld2;
position r.p;
@@
-pr_err@p
+dev_err
(
+ &i->fld->fld2,
...)
Signed-off-by: Haneen Mohammed <hamohammed.sa@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Functions like devm_kzalloc, kmalloc_array, devm_ioremap,
usb_alloc_urb, alloc_netdev return NULL as a return value on failure.
Generally, When NULL represents failure, !x is commonly used.
This patch cleans up the tests on the results of these functions, thereby
using !x instead of x == NULL or NULL == x. This is done via following
coccinelle script:
@prob_7@
identifier x;
statement S;
@@
(
x = devm_kzalloc(...);
|
x = usb_alloc_urb(...);
|
x = kmalloc_array(...);
|
x = devm_ioremap(...);
|
x = alloc_netdev(...);
)
...
- if(NULL == x)
+ if(!x)
S
Further we have used isomorphism characteristics of coccinelle to
indicate x == NULL and NULL == x are equivalent. This is done via
following iso script.
Expression
@ is_null @ expression X; @@
X == NULL <=> NULL == X
Signed-off-by: Somya Anand <somyaanand214@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This is a patch to fix "WARNING: line over 80 characters" found by
checkpatch.pl in gdm_lte.c.
Signed-off-by: Ning Zhou <zhou.ning.gd@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This is a patch to the gdm_mux.c file that fixes a space before comma
coding style issue found by the checkpatch.pl tool.
Signed-off-by: Robert Nachlinger <robert.nachlinger@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch fixes following sparse warnings:
drivers/staging/gdm724x/gdm_mux.c:389:32: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:389:32: expected unsigned int [unsigned] start_flag
drivers/staging/gdm724x/gdm_mux.c:389:32: got restricted __le32 [usertype] <noident
drivers/staging/gdm724x/gdm_mux.c:390:29: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:390:29: expected unsigned int [unsigned] seq_num
drivers/staging/gdm724x/gdm_mux.c:390:29: got restricted __le32 [usertype] <noident>
drivers/staging/gdm724x/gdm_mux.c:391:34: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:391:34: expected unsigned int [unsigned] payload_size
drivers/staging/gdm724x/gdm_mux.c:391:34: got restricted __le32 [usertype] <noident>
drivers/staging/gdm724x/gdm_mux.c:392:33: warning: incorrect type in assignment (different base types)
drivers/staging/gdm724x/gdm_mux.c:392:33: expected unsigned short [unsigned] packet_type
drivers/staging/gdm724x/gdm_mux.c:392:33: got restricted __le16 [usertype] <noident>
Sparse found above warnings, so this patch changes variable types of
structs. Because expected and got variable types are different.
Signed-off-by: Ebru Akagunduz <ebru.akagunduz@gmail.com>
Reviewed-by: Octavian Purdila <octavian.purdila@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch fixes the following checkpatch.pl warnings:
WARNING: "Prefer ether_addr_copy() over memcpy() if the Ethernet
addresses are __aligned(2)" in file gdm_lte.c
Pahole shows that the addresses are aligned.
Signed-off-by: Dilek Uzulmez <dilekuzulmez@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch fixes "else is not generally useful after a break or return"
checkpatch.pl warning in gdm_usb.c
Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Added error checking for alloc_tx_struct in do_tx()
Signed-off-by: Abel Moyo <abelmoyo.ab@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Fixes "Missing a blank line after declarations" checkpatch.pl warning in
gdm_mux.c
Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Pull networking updates from David Miller:
"Highlights:
1) Steady transitioning of the BPF instructure to a generic spot so
all kernel subsystems can make use of it, from Alexei Starovoitov.
2) SFC driver supports busy polling, from Alexandre Rames.
3) Take advantage of hash table in UDP multicast delivery, from David
Held.
4) Lighten locking, in particular by getting rid of the LRU lists, in
inet frag handling. From Florian Westphal.
5) Add support for various RFC6458 control messages in SCTP, from
Geir Ola Vaagland.
6) Allow to filter bridge forwarding database dumps by device, from
Jamal Hadi Salim.
7) virtio-net also now supports busy polling, from Jason Wang.
8) Some low level optimization tweaks in pktgen from Jesper Dangaard
Brouer.
9) Add support for ipv6 address generation modes, so that userland
can have some input into the process. From Jiri Pirko.
10) Consolidate common TCP connection request code in ipv4 and ipv6,
from Octavian Purdila.
11) New ARP packet logger in netfilter, from Pablo Neira Ayuso.
12) Generic resizable RCU hash table, with intial users in netlink and
nftables. From Thomas Graf.
13) Maintain a name assignment type so that userspace can see where a
network device name came from (enumerated by kernel, assigned
explicitly by userspace, etc.) From Tom Gundersen.
14) Automatic flow label generation on transmit in ipv6, from Tom
Herbert.
15) New packet timestamping facilities from Willem de Bruijn, meant to
assist in measuring latencies going into/out-of the packet
scheduler, latency from TCP data transmission to ACK, etc"
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1536 commits)
cxgb4 : Disable recursive mailbox commands when enabling vi
net: reduce USB network driver config options.
tg3: Modify tg3_tso_bug() to handle multiple TX rings
amd-xgbe: Perform phy connect/disconnect at dev open/stop
amd-xgbe: Use dma_set_mask_and_coherent to set DMA mask
net: sun4i-emac: fix memory leak on bad packet
sctp: fix possible seqlock seadlock in sctp_packet_transmit()
Revert "net: phy: Set the driver when registering an MDIO bus device"
cxgb4vf: Turn off SGE RX/TX Callback Timers and interrupts in PCI shutdown routine
team: Simplify return path of team_newlink
bridge: Update outdated comment on promiscuous mode
net-timestamp: ACK timestamp for bytestreams
net-timestamp: TCP timestamping
net-timestamp: SCHED timestamp on entering packet scheduler
net-timestamp: add key to disambiguate concurrent datagrams
net-timestamp: move timestamp flags out of sk_flags
net-timestamp: extend SCM_TIMESTAMPING ancillary data struct
cxgb4i : Move stray CPL definitions to cxgb4 driver
tcp: reduce spurious retransmits due to transient SACK reneging
qlcnic: Initialize dcbnl_ops before register_netdev
...
This patch fixes the following checkpatch.pl issues in gdm_usb.c:
ERROR: that open brace { should be on the previous line
Signed-off-by: Cihangir Akturk <cakturk@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Replace use of NLMSG_SPACE(0) with NLMSG_HDRLEN as they are equivalent
and NLMSG_SPACE seems to be deprecated.
Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
If an allocation in init_usb() failed, it returns without
deallocation of already allocated resources.
The patch fix it and replaces GFP_ATOMIC by GFP_KERNEL in
alloc_tx_sdu_struct() and alloc_rx_struct() as long as
they are called from probe only.
Found by Linux Driver Verification project (linuxtesting.org).
Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch fixes following checkpatch.pl warning:
WARNING: Missing a blank line after declarations in gdm_lte.c
Signed-off-by: Scott Weir <sjw0410@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch fixes following checkpatch.pl warning:
WARNING: unchecked sscanf value in gdm_lte.c
Signed-off-by: Monam Agarwal <monamagarwal123@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch removes the following checkpatch.pl warning in gdm_lte.h
Warning : space after return function
Signed-off-by: Uma Sharma <uma.sharma523@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Fix checkpatch.pl issues with line over 80 characters in gdm_usb.c
Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Fix checkpatch.pl issues with line over 80 characters in gdm_lte.c
Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
The kfree(t_sdu->buf) sets off a private static checker warning because
"t_sdu->buf" is always NULL.
This function just allocates two pointers so we can re-write it to be
simpler.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
None of these files are actually using any __init type directives
and hence don't need to include <linux/init.h>. Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Error handling code in gdm_usb_probe() deallocates all resources,
but calls usb_get_dev(usbdev) and returns error code after that.
The patch fixes it and, by the way, several other issues:
- no need to use GFP_ATOMIC in probe();
- return -ENODEV instead of -1;
- kmalloc+memset -> kzalloc
Found by Linux Driver Verification project (linuxtesting.org).
Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch removes confusing macro gdm_lte_sdu_send as stated in TODO list
in file gdm_lte.c. It then fixes the place where the macro is used.
Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com>
Reviewed-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
As suggested in TODO list, this patch uses ALIGN() macro for variable
dummy_cnt in functions up_to_host() and gdm_mux_send() in file
gdm_mux.c.
The macro has already been defined in include/linux/kernel.h, hence is
not defined again.
Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch removes confusing macro gdm_lte_hci_send as stated in TODO list
in file gdm_lte.c. It then fixes the place where the macro is used.
Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com>
Reviewed-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch removes confusing macro gdm_dev_endian as stated in TODO list
in file gdm_lte.c. It then fixes the place where the macro is used.
Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com>
Reviewed-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch removes confusing macro gdm_lte_rcv_with_cb as stated in TODO list
in file gdm_lte.c. It then fixes the place where the macro is used.
Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com>
Reviewed-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch fixes the following coccinelle warnings in driver gdm724x:
drivers/staging/gdm724x/gdm_usb.c:127:9-16: WARNING: kzalloc should be used for t_sdu, instead of kmalloc/memset
drivers/staging/gdm724x/gdm_usb.c:91:5-12: WARNING: kzalloc should be used for t, instead of kmalloc/memset
Signed-off-by: Teodora Baluta <teobaluta@gmail.com>
Reviewed-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
init_usb() may fail after some of mux_rxes already allocated.
So we need to release them on the failure path.
Found by Linux Driver Verification project (linuxtesting.org).
Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
As far as alloc_mux_rx() is called from probe() only
there is no need in GFP_ATOMIC here.
Found by Linux Driver Verification project (linuxtesting.org).
Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This fixes sparse warnings for functions and variables, e.g.:
* drivers/staging/gdm724x/gdm_mux.c:29:25: warning: symbol
'mux_rx_wq' was not declared. Should it be static?
Signed-off-by: Valentina Manea <valentina.manea.m@gmail.com>
Reviewed-by: Zach Brown <zab@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
version.h header inclusion is not necessary as detected by
versioncheck.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Kernel code need not test for KERNELVERSION. Besides being unnecessary
for an in-kernel driver, these lines will cause a build failure for any
source tree with a stale include/linux/version.h.
This patch is only compile tested.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The error handling is messy and not in kernel style. On some paths it
frees "mux_dev" twice.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Fixed mis-use of mutex for gdm_table. gdm_table is refered to only
inside tty_install and port destrcut, and usb callbacks use internal
reference which was saved during urb submission
Signed-off-by: Won Kang <wonkang@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Removed the old style reference countings and termios.
Renamed variables to meaninful ones.
Signed-off-by: Won Kang <wonkang@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The driver uses the tty layer, so explicitly say that, to prevent
randomconfig build errors.
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Conflict resolution for function name set_endian when building for powerpc
The name changed to gdm_set_endian
Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Won Kang <wonkang@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
A spin lock is taken here so we should use GFP_ATOMIC.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Acked-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
version.h header inclusion is not necessary as detected by
versioncheck.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>