Commit Graph

90 Commits (3a22ebe9cc76acac2511b1d3979a35609924ce42)

Author SHA1 Message Date
Marek Belisko 91cda632eb staging: ft1000: Fix kernel panic when use ioctl.
During ioctl testing was observed kernel panic beuase
file->private_data pointer was not correctly set when
debugfs file was created. Add correct pointer setup.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-16 12:20:05 -08:00
Marek Belisko 0ce72ea3b2 staging: ft1000: Fix camelcase variable names.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-16 12:20:05 -08:00
Marek Belisko c346541f3d staging: ft1000: Rename ft1000_chdev.c to ft1000_debug.c.
Name of old file was misleading because it is currently
updated to debugfs so change also file name.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-16 12:18:25 -08:00
Marek Belisko dab56ffe9a staging: ft1000: Fix camelcase function names.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-16 12:18:25 -08:00
Marek Belisko 448d401401 staging: ft1000: Always extract device number from netdev name.
Using gCardIndex as global variable was not correctly used because
for every plugged device was set to 0 in init_ft1000_netdev.

Remove global definition. Use it locally and for every plugged
device extract number from net device name.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-13 10:25:54 -08:00
Greg Kroah-Hartman 64d74c6cbe Staging: ft1000: fix world writable debugfs file
You should not be able to write to a debugfs file from any user.

Cc: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-10 10:55:27 -08:00
Marek Belisko c5e61563e2 staging: ft1000: Add file header to ft1000_proc.c
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:15 -08:00
Marek Belisko e2398c6127 staging: ft1000: Remove dead code.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:15 -08:00
Marek Belisko 96ff77f735 staging: ft1000: Fix coding style.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:14 -08:00
Marek Belisko 85d47cff4e staging: ft1000: Coding style fix in ft1000ReadProc.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:14 -08:00
Marek Belisko 92914cc8bb staging: ft1000: Fix coding style in ft1000NotifyProc.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:14 -08:00
Marek Belisko 1c46282421 staging: ft1000: Use return value for ft1000InitProc.
Add checking for return value ft1000InitProc and cleanup
if something fail.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:13 -08:00
Marek Belisko 04c6620117 staging: ft1000: Fix coding style.
Fix coding style in ft1000CleanupProc and ft1000InitProc
functions.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:13 -08:00
Marek Belisko 5fd866fb64 staging: ft1000: Fix proc initialization handling.
Cleaning proc entries when error occures was not handled correctly.
So fix and also add proper cleaning.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:35:13 -08:00
Marek Belisko 115884118a staging: ft1000: Fix debug messages.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:33 -08:00
Marek Belisko 05371d1861 staging: ft1000: Remove unused headers.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:33 -08:00
Marek Belisko c82632d247 staging: ft1000: Remove dead code.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:32 -08:00
Marek Belisko 4d791234f4 staging: ft1000: Fix camelcase functions and variables.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:32 -08:00
Marek Belisko 67e9f9e26b staging: ft1000: Remove unused variable.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:32 -08:00
Marek Belisko e34dc580dc staging: ft1000: Remove unused pdevobj array.
We don't need to store pointer to device in some local
array because we always pass to debugfs correct device pointer.
So remove it.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:31 -08:00
Marek Belisko 6d96940b2d staging: ft1000: Fix private data pointer usage.
Assign private data pointer to device for usage in file operations.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:31 -08:00
Marek Belisko 9119dee1ce staging: ft1000: Convert char device to debugfs.
Character device was used only for debugging purposes.
Convert it to debugfs functionality. For every plugged device
create new directory with one file.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-12-09 16:34:31 -08:00
Marek Belisko 4960b8fe1b staging: ft1000: Fix goto error logic.
Fix goto error logic which could lead to kernel panics
because kthread_stop() is called in not correct error
conditions. Seen it sometimes when dsp_reload() fails
then I got kernel panic.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-29 11:45:24 -08:00
Marek Belisko e999fb0574 staging: ft1000: Remove functions which create devices in kernel space.
Remove exec_mknod() and rm_mknod() helpers which was used for
device nodes creating/removing in kernel space.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-29 11:42:03 -08:00
Marek Belisko 7716090be5 staging: ft1000: Fix compilation warning.
This patch fix following warning:
drivers/staging/ft1000/ft1000-usb/ft1000_usb.c:67:22:
warning: ‘pft1000info’ may be used uninitialized in this function

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-19 17:17:00 -08:00
Dan Carpenter 237a1a1aef Staging: ft1000-usb: freeing uninitialized pointer
GCC complains that if (info->CardReady) is false we kfree() an
uninitialized pointer.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-17 13:14:13 -08:00
Joe Perches e33196e108 drivers/staging: Remove unnecessary casts of netdev_priv
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 12:06:47 -08:00
Steven Rostedt 7f55f13c2c staging: ft1000: Copy from user into correct data
While doing a ktest.pl I used a MIN_CONFIG that had STAGING enabled, and
a randconfig with CONFIG_DEBUG_STRICT_USER_COPY_CHECKS enabled caught
the following bug:

In file included from /home/rostedt/work/autotest/nobackup/linux-test.git/arch/x86/include/asm/uaccess.h:571:0,
                 from /home/rostedt/work/autotest/nobackup/linux-test.git/include/linux/poll.h:14,
                 from /home/rostedt/work/autotest/nobackup/linux-test.git/drivers/staging/ft1000/ft1000-usb/ft1000_chdev.c:32:
In function 'copy_from_user',
    inlined from 'ft1000_ChIoctl' at /home/rostedt/work/autotest/nobackup/linux-test.git/drivers/staging/ft1000/ft1000-usb/ft1000_chdev.c:702:36:
/home/rostedt/work/autotest/nobackup/linux-test.git/arch/x86/include/asm/uaccess_32.h:212:26: error: call to 'copy_from_user_overflow' declared with attribute error: copy_from_user() buffer size is not provably correct

Looking at the code it was obvious what the problem was. The pointer
dpram_data was being allocated but the address was being written to.
Looking at the comment above the code shows that it use to write into an
element of that pointer where the '&' is appropriate. But now that it
writes to the pointer itself, we need to remove the '&' otherwise we
write over the pointer and not into the data it points to.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Cc: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 11:34:06 -08:00
Marek Belisko e72115bce3 staging: ft1000: Fix error goto statements.
With commit 2dab1ac81b there
was intruduced error which lead to stopping uninitialized
kthread which leads to kernel panics.

This patch fix problems with common entry point in correct
way.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 11:31:21 -08:00
Greg Kroah-Hartman 491acf0032 Staging: Merge 2.6.37-rc2 into staging-next
This was necessary in order  to resolve some conflicts that happened
between -rc1 and -rc2 with the following files:
	drivers/staging/bcm/Bcmchar.c
	drivers/staging/intel_sst/intel_sst_app_interface.c

All should be resolved now.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 10:44:50 -08:00
Marek Belisko 2dab1ac81b staging: ft1000: Create common return point.
When reg_ft1000_netdev() fails created kthread isn't stopped.
So add return point for stopping thread.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-10 16:28:29 -08:00
Marek Belisko c8b124e21d staging: ft1000: Check return value of kthread_run.
kthread_run could fail so we will check return value.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-10 16:28:29 -08:00
Marek Belisko e09f138e06 staging: ft1000: Get rid of UINT typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:07 -08:00
Marek Belisko c613f6f50f staging: ft1000: Get rid of PCHAR typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:07 -08:00
Marek Belisko 81584137d8 staging: ft1000: Get rid of BOOLEAN typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:06 -08:00
Marek Belisko 84b7801d13 staging: ft1000: Get rid of ULONG typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:06 -08:00
Marek Belisko d44d76f93d staging: ft1000: Get rid of PULONG typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:06 -08:00
Marek Belisko fc549a05e7 staging: ft1000: Get rid of USHORT typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:05 -08:00
Marek Belisko d1674983e0 staging: ft1000: GEt rid of PUSHORT typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:05 -08:00
Marek Belisko c8f775c88b staging: ft1000: Get rid of UCHAR typedef.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:05 -08:00
Marek Belisko e2cb7da167 staging: ft1000: Get rid of PUCHAR typedef.
PUCHAR typedef was replaces by u8 *.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:04 -08:00
Marek Belisko 95112cb448 staging: ft1000: Check return value.
Function ft1000_submit_rx_urb() could fail so add checking
for return value.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:04 -08:00
Marek Belisko d778086516 staging: ft1000: Correct return error values.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:03 -08:00
Marek Belisko 3b3291e868 staging: ft1000: Use common return point.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:03 -08:00
Marek Belisko 35e9403b05 staging: ft1000: Use specific error codes instead self defined.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:03 -08:00
Marek Belisko d2b07455b8 staging: ft1000: Pseudo header handlig improved.
Handling for pseudo header was done by directly copying
data to tx buffer. This hide a functionality and make
code unreadable.

Use approach where fill pseudo_hdr structure first with data and then copy
to beginning of buffer.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:02 -08:00
Marek Belisko 019bd3f825 staging: ft1000: Remove dead code.
Remove functions which was used nowhere. Also remove dead
variables used by this functions.

Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:02 -08:00
Marek Belisko eb21c1587a staging: ft1000: Use memset instead looping with for.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 16:07:01 -08:00
Julia Lawall 61241d97db drivers/staging: delete double assignment
Delete successive assignments to the same location.  In three of the cases,
the two assignments are identical.  In the case of the file
rt2860/common/cmm_aes.c, the assigned variable i is never used, so both
assignments are dropped.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression i;
@@

*i = ...;
 i = ...;
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 14:05:22 -08:00
Marek Belisko 1a88a06871 staging: ft1000: Remove FT1000_INFO typedef usage.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-19 10:08:51 -07:00