aboutsummaryrefslogtreecommitdiffstats
path: root/net/caif/cfsrvl.c
diff options
context:
space:
mode:
authorSjur Braendeland <sjur.brandeland@stericsson.com>2010-06-17 02:55:39 -0400
committerDavid S. Miller <davem@davemloft.net>2010-06-20 22:46:05 -0400
commita7da1f55a826c621251874e7684c234972fc3216 (patch)
treee5c66620b9cfe00ed62233665002a0acf5fc1004 /net/caif/cfsrvl.c
parentb1c74247b9e29ae3bfdf133862328c309bc9cf14 (diff)
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.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/net/caif/cfsrvl.c b/net/caif/cfsrvl.c
index 7aa1f03a0151..4c9f147c38af 100644
--- a/net/caif/cfsrvl.c
+++ b/net/caif/cfsrvl.c
@@ -159,6 +159,13 @@ void cfservl_destroy(struct cflayer *layer)
159 kfree(layer); 159 kfree(layer);
160} 160}
161 161
162void cfsrvl_release(struct kref *kref)
163{
164 struct cfsrvl *service = container_of(kref, struct cfsrvl, ref);
165 pr_info("CAIF: %s(): enter\n", __func__);
166 kfree(service);
167}
168
162void cfsrvl_init(struct cfsrvl *service, 169void cfsrvl_init(struct cfsrvl *service,
163 u8 channel_id, 170 u8 channel_id,
164 struct dev_info *dev_info, 171 struct dev_info *dev_info,
@@ -174,14 +181,10 @@ void cfsrvl_init(struct cfsrvl *service,
174 service->layer.modemcmd = cfservl_modemcmd; 181 service->layer.modemcmd = cfservl_modemcmd;
175 service->dev_info = *dev_info; 182 service->dev_info = *dev_info;
176 service->supports_flowctrl = supports_flowctrl; 183 service->supports_flowctrl = supports_flowctrl;
184 service->release = cfsrvl_release;
177 kref_init(&service->ref); 185 kref_init(&service->ref);
178} 186}
179 187
180void cfsrvl_release(struct kref *kref)
181{
182 struct cfsrvl *service = container_of(kref, struct cfsrvl, ref);
183 kfree(service);
184}
185 188
186bool cfsrvl_ready(struct cfsrvl *service, int *err) 189bool cfsrvl_ready(struct cfsrvl *service, int *err)
187{ 190{