2009-10-13 15:00:49

by Alan

[permalink] [raw]
Subject: [PATCH 0/2] SEP fixes

Fix next build breakage and remove un-needed use of lock BKL ioctl path
---

Alan Cox (2):
sep: Fix use of legacy ioctl fop
sep: Fix build problems from header changes


drivers/staging/sep/sep_driver.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)

--
How do you keep an idiot in suspense...


2009-10-13 15:01:01

by Alan

[permalink] [raw]
Subject: [PATCH 1/2] sep: Fix build problems from header changes

Signed-off-by: Alan Cox <[email protected]>
---

drivers/staging/sep/sep_driver.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)


diff --git a/drivers/staging/sep/sep_driver.c b/drivers/staging/sep/sep_driver.c
index 87f8a11..2ecd62d 100644
--- a/drivers/staging/sep/sep_driver.c
+++ b/drivers/staging/sep/sep_driver.c
@@ -35,6 +35,7 @@
#include <linux/cdev.h>
#include <linux/kdev_t.h>
#include <linux/mutex.h>
+#include <linux/sched.h>
#include <linux/mm.h>
#include <linux/poll.h>
#include <linux/wait.h>
@@ -272,7 +273,8 @@ static dma_addr_t sep_shared_virt_to_bus(struct sep_device *sep,
void *virt_address)
{
dma_addr_t pa = sep->shared_bus + (virt_address - sep->shared_addr);
- edbg("sep: virt to bus b %08llx v %p\n", pa, virt_address);
+ edbg("sep: virt to bus b %08llx v %p\n", (unsigned long long) pa,
+ virt_address);
return pa;
}

@@ -1769,7 +1771,7 @@ static struct sep_flow_context_t *sep_find_flow_context(struct sep_device *sep,
static int sep_create_flow_dma_tables_handler(struct sep_device *sep,
unsigned long arg)
{
- int error;
+ int error = -ENOENT;
struct sep_driver_build_flow_table_t command_args;
/* first table - output */
struct sep_lli_entry_t first_table_data;

2009-10-13 15:01:13

by Alan

[permalink] [raw]
Subject: [PATCH 2/2] sep: Fix use of legacy ioctl fop

SEP doesn't need lock_kernel.

Signed-off-by: Alan Cox <[email protected]>
---

drivers/staging/sep/sep_driver.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)


diff --git a/drivers/staging/sep/sep_driver.c b/drivers/staging/sep/sep_driver.c
index 2ecd62d..23b4db1 100644
--- a/drivers/staging/sep/sep_driver.c
+++ b/drivers/staging/sep/sep_driver.c
@@ -2231,7 +2231,7 @@ static int sep_set_flow_id_handler(struct sep_device *sep,
return error;
}

-static int sep_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)
+static long sep_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
{
int error = 0;
struct sep_device *sep = filp->private_data;
@@ -2606,7 +2606,7 @@ static dev_t sep_devno;
/* the files operations structure of the driver */
static struct file_operations sep_file_operations = {
.owner = THIS_MODULE,
- .ioctl = sep_ioctl,
+ .unlocked_ioctl = sep_ioctl,
.poll = sep_poll,
.open = sep_open,
.release = sep_release,