diff options
author | Sjur Braendeland <sjur.brandeland@stericsson.com> | 2010-06-17 06:55:39 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-20 19:46:05 -0700 |
commit | a7da1f55a826c621251874e7684c234972fc3216 (patch) | |
tree | e5c66620b9cfe00ed62233665002a0acf5fc1004 /net/caif/cfsrvl.c | |
parent | b1c74247b9e29ae3bfdf133862328c309bc9cf14 (diff) | |
download | linux-3.10-a7da1f55a826c621251874e7684c234972fc3216.tar.gz linux-3.10-a7da1f55a826c621251874e7684c234972fc3216.tar.bz2 linux-3.10-a7da1f55a826c621251874e7684c234972fc3216.zip |
caif: Bugfix - RFM must support segmentation.
CAIF Remote File Manager may send or receive more than 4050 bytes.
Due to this The CAIF RFM service have to support segmentation.
Signed-off-by: Sjur Braendeland@stericsson.com
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/caif/cfsrvl.c')
-rw-r--r-- | net/caif/cfsrvl.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/net/caif/cfsrvl.c b/net/caif/cfsrvl.c index 7aa1f03a015..4c9f147c38a 100644 --- a/net/caif/cfsrvl.c +++ b/net/caif/cfsrvl.c @@ -159,6 +159,13 @@ void cfservl_destroy(struct cflayer *layer) kfree(layer); } +void cfsrvl_release(struct kref *kref) +{ + struct cfsrvl *service = container_of(kref, struct cfsrvl, ref); + pr_info("CAIF: %s(): enter\n", __func__); + kfree(service); +} + void cfsrvl_init(struct cfsrvl *service, u8 channel_id, struct dev_info *dev_info, @@ -174,14 +181,10 @@ void cfsrvl_init(struct cfsrvl *service, service->layer.modemcmd = cfservl_modemcmd; service->dev_info = *dev_info; service->supports_flowctrl = supports_flowctrl; + service->release = cfsrvl_release; kref_init(&service->ref); } -void cfsrvl_release(struct kref *kref) -{ - struct cfsrvl *service = container_of(kref, struct cfsrvl, ref); - kfree(service); -} bool cfsrvl_ready(struct cfsrvl *service, int *err) { |